【发布时间】:2018-11-28 17:22:02
【问题描述】:
我将 Gensim 用于向量空间模型。从 Gensim 创建字典和语料库后,我使用以下行计算了(词频*逆文档频率)TFIDF
Term_IDF = TfidfModel(corpus)
corpus_tfidf = Term_IDF[corpus]
corpus_tfidf 包含具有术语 id 和相应 TFIDF 的列表列表。然后我使用以下几行将 TFIDF 与 id 分开:
for doc in corpus_tfidf:
for ids,tfidf in doc:
IDS.append(ids)
tfidfmtx.append(tfidf)
IDS=[]
现在我想使用 k-means 聚类,所以我想执行 tfidf 矩阵的余弦相似度,问题是 Gensim 不会产生方阵,所以当我运行以下行时会产生错误。我想知道如何从 Gensim 中获取方阵来计算向量空间模型中所有文档的相似度。还如何将 tfidf 矩阵(在本例中为列表列表)转换为 2D NumPy 数组。非常感谢任何 cmets。
dumydist = 1 - cosine_similarity(tfidfmtx)
【问题讨论】:
标签: numpy k-means gensim tf-idf corpus