一、文本相似度分析
我们这里想看一下某篇论文是否抄袭了别人的论文,就可以通过两篇论文的相似度来分析一下。看看两篇文章的相似度是多少。
言归正传,想分析什么还是交给你们吧,我们这里演示一下遮天这本小说的第三章和第一章、第二章的相似度是多少。需要用到下面的模块:
- jieba分词:不会jieba的朋友可以看看我的另一篇文章 https://blog.csdn.net/weixin_42898819/article/details/81476851#0-qzone-1-75431-d020d2d2a4e8d1a374a433f596ad1440
- gensim下的corpora,models,similarities分别代表语料库方法,模型方法,相似度方法
- collections下的defaultdict 来计算单词频率
二、TF-IDF算法
1.简介:
TF-IDF是一种统计方法,用以评估字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF加权的各种形式常被搜索引擎应用,作为文件与用户查询之间相关程度的度量或评级。
2.原理:
TFIDF的主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。具体的说明请自己看原理https://baike.so.com/doc/433640-459181.html
3.在python中该算法封装在gensim中,所以我们只要大概了解它的原理,学会如何使用即可。
三、相似度分析步骤及其代码
好啦,下面我通过具体的步骤来讲解每一个步骤要用到的东西:
1.读取文档 :读取遮天小说的 第一章和第二章进来.
import jieba
from gensim import corpora,models,similarities #语料库方法,模型方法,相似度方法
from collections import defaultdict