我正在报纸上做一些主题建模,并在Python3中使用gensim实现了LDA。现在我想为每个主题创建一个词云,每个主题使用前20个单词。我知道我可以打印单词,并保存LDA模型,但有没有办法只保存每个主题的顶部单词,我可以进一步用它来生成单词云?
我试图谷歌,但找不到任何相关的东西。任何帮助表示赞赏。
答案 0 :(得分:3)
您可以使用Gensim的内置方法show_topic从LDA模型中获取topn单词。
TextViews
这将写出一个格式与此类似的文件:
listOfSpannables.get(indexLocation).setSpan(new ForegroundColorSpan(Color.HSVToColor(listOfHSVs.get(indexLocation)[i])), i, i+1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
您可能需要也可能不需要根据需要进行调整,即产生前20个单词的列表,而不是将其输出到文本文件中。
这篇文章中的答案很好地解释了如何使用原始文本来创建单词云。 How do I print lda topic model and the word cloud of each of the topics
答案 1 :(得分:0)
有没有办法只保存每个主题的顶级单词?
是的。 jLDADMM输出每个主题的热门主题词。在version 1.0中,只有顶级单词会写在顶级单词输出文件中,而不会给出主题的概率。
答案 2 :(得分:0)