Gensim:为每个主题提取100个最具代表性的文档

问题描述 投票:0回答:1

我有几个适合500万个文档的gensim模型。我想从每个主题的每个模型中抽取前100名最具代表性的文档,以帮助我选择最佳模型。

假设我有一个模型lda和语料库corpus,我可以通过以下形式获得主题概率:

topic_probs = lda[corpus]

topic_probs是元组列表:(topic_num, topic_prob)

我如何按主题对这个元组列表进行排序,然后对概率进行排序,然后从语料库中检索前100个文档?我猜答案看起来像method for assigning topics here,但是我在努力在维护文档索引的同时处理元组列表感到困惑。

[ d尽可能避免重新运行它们。)
python tuples gensim lda
1个回答
0
投票
我设法弄清楚了这一点,尽管可能不是以最有效的方式,而且我没有时间使其完全可移植。

    我提取了按文档分类的主题概率,并将其转储到csv(我的语料库很大,需要花费很多时间进行处理,因此我想保存它们)。您可以轻松地在多个模型之间进行循环。
  • minimum_probability
      编写了一个为每个主题选择n个最大概率的函数,然后提取并返回给定原始(非BoW)文本作为列表的文档。假定具有文档索引的列名为“ docs”。数据帧是由上一个函数创建的,从csv读回。
  • gensim.LdaModel
  • © www.soinside.com 2019 - 2024. All rights reserved.