【问题标题】:Get topics terms only with LDA仅使用 LDA 获取主题术语
【发布时间】:2017-12-12 11:48:34
【问题描述】:

我在语料库上应用了来自 gensim 包的 LDA,我得到了每个术语的概率。我的问题是我如何只得到没有概率的条款。 这是我的代码:

K = ldamodel.num_topics
t = 0
topicWordProbMat = ldamodel.print_topics(K)
for  topic_dist in topicWordProbMat:
    print('Topic #',t,topic_dist)
    t = t + 1

作为例子的输出是这样的:

Topic # 0 '0.181*things + 0.181*amazon + 0.181*good
Topic # 1 '0.031*nokia + 0.031*microsoft + 0.031*apple  

我想要这样:

Topic # 0 things amazon good
Topic # 1 nokia microsoft apple

知道怎么做吗?提前致谢

【问题讨论】:

    标签: python-3.x gensim lda


    【解决方案1】:

    Gensim 有一个内置的 show_topic 方法,可以为每个主题显示 n 个最可能的词。以下将返回每个主题中的前 10 个单词作为带有键值对的 dict。

    topn_words = {'Topic_' + str(i): [word for word, prob in lda.show_topic(i, topn=10)] for i in range(0, lda.num_topics)}
    

    这里有类似的问题:How to generate word clouds from LDA models in Python?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-27
      • 1970-01-01
      • 2015-12-26
      • 1970-01-01
      • 2018-06-23
      相关资源
      最近更新 更多