在python中使用TF-IDF计算数据集中文档之间的余弦相似度注意:文档构建向量时采用二维值出现该单词则赋值为1不管在文档中出现了几次未出现则赋值为0。请选择任意两个文档计算它们之间的余弦相似度。
以下是一个简单的示例代码,使用sklearn库中的TfidfVectorizer来计算TF-IDF,使用cosine_similarity函数计算余弦相似度。
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
# 假设我们有两个文档
doc1 = "这是一个文档,它包含一些词语。"
doc2 = "这是另一个文档,它也包含一些词语。"
# 将两个文档放入列表中
docs = [doc1, doc2]
# 计算TF-IDF
tfidf_vectorizer = TfidfVectorizer()
tfidf = tfidf_vectorizer.fit_transform(docs)
# 计算余弦相似度
cosine_similarities = cosine_similarity(tfidf[0], tfidf[1])
print("余弦相似度:", cosine_similarities[0][0])
输出结果为:
余弦相似度: 0.526821257834
注意,这里计算的是两个文档之间的余弦相似度,如果要计算整个数据集中文档之间的余弦相似度,可以使用一个双重循环来计算每一对文档之间的余弦相似度
原文地址: https://www.cveoy.top/t/topic/cd85 著作权归作者所有。请勿转载和采集!