文本相似性

1、相似度计算的步骤

上一篇:文本挖掘

1、读取文档
2、对要计算的多篇文档进行分词
3、对文档进行整理成指定格式,方便后续进行计算
4、计算出词语的频率
5【可选】、对频率低的词语进行过滤
6、通过语料库建立词典
7、加载要对比的文档
8、将要对比的文档通过doc2bow转化为稀疏向量
9、对稀疏向量进行进一步处理,得到新语料库
10、将新语料库通过tfidfmodel进行处理,得到tfidf
11、通过token2id得到特征数
12、稀疏矩阵相似度,从而建立索引
13、得到最终相似度结果

2、实战代码

demo实例

'''
计算文本相似度
'''
from gensim import corpora,models,similarities
import jieba
from collections import defaultdict
doc1="data/d1.txt"
doc2="data/d2.txt"
# 1、加载文档
d1=open(doc1,encoding='UTF-8').read()
d2=open(doc2,encoding='UTF-8').read()
# 2、进行分词
data1=jieba.cut(d1)
data2=jieba.cut(d2)
'''
for item in data1:
	print(item)
print("")
for item in data1:
	print(item)
'''
#"词语1 词语2 词语3 … 词语n"
# 3、整理文档
data11=""
for item in data1:
    data11+=item+" "
# print(data11)
data21=""
for item in data2:
    data21+=item+" "
documents=[data11,data21]#放入文档

texts=[[word for word in document.split()]
       for document in documents]
# print(texts)

# 4、计算出词语的频率
frequency=defaultdict(int)
for text in texts
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值