如何从gensim上的w2v获取tf-id

how to get tf-id from w2v on gensim

我有一个文本数据集,我在该数据集上训练了一个 gensim w2v 模型。现在我想使用这些向量来接收数据集中单词和文档的 tf-idf 值。正确的做法是什么?我试图关注 gensim 网站上的 tutorial

我期待 models.tfidfmodel(model.wv[model.wv.index2word]) 但这失败了,因为

File "<ipython-input-229-7946418f8a82>", line 1, in <module> models.tfidfmodel(model.wv[model.wv.index2word]) TypeError: 'module' object is not callable

我想要的是从那以后做的吗? BOW 是唯一的方法吗?

您链接到模型的教程被赋予了语料库,即整个文本(或转换后的文本)。

尝试要做的是为模型提供 w2v 模型学到的字典。

如果你想要的是

to recive the tf-idf values for the words and documents in my data set.

那么你应该简单地传递它:

tfidf = models.TfidfModel(corpus)

如果你真正想要的是 运行 TF-IDF 模型 transformed 语料库,那么你应该首先使用你的 w2v 来转换语料库然后将转换后的语料库传递给tfidfmodel。


请注意,由于 tfidf 模型只是计算词频,因此给它提供转换后的语料库而不是原始语料库不会有任何好处。