本文主要是介绍gensim similarity计算文档相似度,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
向量空间模型计算文档集合相似性。[0]
将原始输入的词转换为ID,词的id表示法简单易用,但是无法预测未登记词,难以挖掘词关系;词汇鸿沟[1]:任意两个词之间是独立的,无法通过词的ID来判断词语之间的关系,无法通过词的id判断词语之间的关系[2]
使用gensim包的models,corpora,similarities,对文档进行相似度计算,结果比较其他lda、doc2vec方法稳定。
主要步骤:
- 1.建立语料库,os.walk方法遍历文件夹中的文件
- 2.使用分词工具(jieba)进行分词、停用词过滤
- 3.使用corpora.Dictionary()生成字典,该方法把所有单词取一个set,并对set中每一个单词分配一个id号的map
- 4.dictionary.doc2bow()方法把文档用稀疏向量表示。
- 5.similarities.Similarity()方法计算相似度
- 6.构造训练数据和测试数据
- 7.similarity[test_corpus]返回相似度最高的similarity.num_best 个文档。
具体参考示例:https://github.com/iamxiaomu/docsim
借鉴
http://blog.itpub.net/16582684/viewspace-1253901/
这篇关于gensim similarity计算文档相似度的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!