使用TFIDF Python比较语料库中的文档对

2024-03-29 01:35:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用以下代码计算了TF-IDF和矩阵:

from sklearn.feature_extraction.text import TfidfVectorizer

#define vectorizer parameters
tfidf_vectorizer = TfidfVectorizer(max_df=0.8, max_features=200000,
                             min_df=0.2, stop_words='english',
                             use_idf=True, ngram_range=(1,3))

tfidf_matrix = tfidf_vectorizer.fit_transform(paragraphs) #fit the vectorizer to paragraphs

但是,我现在想比较不同段落的相似性,我的最终结果应该是这样的:

^{pr2}$

如何使用TF-IDF矩阵来比较不同的段落对?在


Tags: 代码fromdftf矩阵sklearnmaxfeature
1条回答
网友
1楼 · 发布于 2024-03-29 01:35:51

假设paragraphs参数中的每个段落都是一个字符串,tfidf_matrix中的每一行都将是表示该字符串的数字向量。度量向量(特别是tf-idf权重向量)之间相似性的常用度量是cosine similarity。一个有用的实现是接受矩阵作为输入的scikit-learn cosine_similarity method 。在

所以假设你可以:

from sklearn.metrics.pairwise import cosine_similarity
cosine_sim_matrix = cosine_similarity(tfidf_matrix, tfidf_matrix)

每个单元格i, j将是段落ij之间的相似度得分。在

相关问题 更多 >