向量空间模型计算文档集合相似性。[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/