看了一些关于文本相似度的理论,于是根据tfidf模型实践了一下文本相似度的代码。
# -- encoding:utf-8 --
"""
Create by on 2019/3/30
根据tfidf模型的相似度
"""
import jieba
from gensim import corpora,models,similarities
doc0 = "我不喜欢上海"
doc1 = "上海是一个好地方"
doc2 = "北京是一个好地方"
doc3 = "上海好吃的在哪里"
doc4 = "上海好玩的在哪里"
doc5 = "上海是好地方"
doc6 = "上海路和上海人"
doc7 = "喜欢小吃"
doc8 = "我不喜欢上海的小吃"
doc_test="我喜欢上海的小吃"
all_doc = []
all_doc.append(doc0)
all_doc.append(doc1)
all_doc.append(doc2)
all_doc.append(doc3)
all_doc.append(doc4)
all_doc.append(doc5)
all_doc.append(doc6)
all_doc.append(doc7)
all_doc.append(doc8)
all_doc_list = []
# 1.jieba 分词
# 2.dictionary
# 3.tfidf
# 4.similarity
# 1.jieba 分词
for doc in all_doc:
doc_list = [word for word in jieba.cut(doc)]
all_doc_list.append(doc_list)
doc_test_list = [word for word in jieba.