通过Gensim查找未见文档的主题

时间:2012-07-13 13:22:11

标签: python nlp latent-semantic-indexing gensim

我正在使用Gensim进行一些大规模的主题建模。我很难理解如何确定未见(非索引)文档的预测主题。例如:我有2500万个文档,我已经转换为LSA(和LDA)空间中的向量。我现在想弄清楚新文档的主题,我们称之为x。

根据Gensim文档,我可以使用:

topics = lsi[doc(x)]

其中doc(x)是将x转换为向量的函数。

然而,问题是上述变量topic返回一个向量。如果我将x与其他文档进行比较,该向量很有用,因为它允许我找到它们之间的余弦相似度,但我无法实际返回与x本身相关的特定单词。

我错过了什么,或者Gensim没有这种能力?

谢谢,

修改

Larsmans有答案。

我能够使用以下方式显示主题:

for t in topics:
    print lsi.show_topics(t[0])

2 个答案:

答案 0 :(得分:5)

[]在LSI模型上返回的向量实际上是(topic, weight)对的列表。您可以通过方法LsiModel.show_topic

检查主题

答案 1 :(得分:0)

  

我能够使用以下方式显示主题:

     

主题中的t:       print lsi.show_topics(t [0])

只是想在解决方案代码中指出一个很小但很重要的错误:你需要使用show_topic()函数而不是show_topic ** s **()函数。

P.S。我知道这应该作为评论发布而不是答案,但我目前的声誉评分还不允许评论!