我是主题建模/潜在Dirichlet分配的新手,并且无法理解如何将该概念应用于我的数据集(或者它是否是正确的方法)。了解LDA /主题建模 - 太多的主题重叠
我有少量的文学文本(小说),并希望使用LDA提取一些常规主题。
我在Python中使用gensim
模块以及一些nltk
功能。对于测试,我已将原始文本(只有6个)分成30个块,每个块包含1000个单词。然后我将块转换为文档项矩阵并运行算法。这是代码(虽然我觉得没关系的问题):
# chunks is a 30x1000 words matrix
dictionary = gensim.corpora.dictionary.Dictionary(chunks)
corpus = [ dictionary.doc2bow(chunk) for chunk in chunks ]
lda = gensim.models.ldamodel.LdaModel(corpus = corpus, id2word = dictionary,
num_topics = 10)
topics = lda.show_topics(5, 5)
但是结果是我在那个主题见过任何例子完全不同的是充满意义的话,可以是发现于全部源文件,例如“我”,“他”,“说”,“喜欢”,...例如:
[(2, '0.009*"I" + 0.007*"\'s" + 0.007*"The" + 0.005*"would" + 0.004*"He"'),
(8, '0.012*"I" + 0.010*"He" + 0.008*"\'s" + 0.006*"n\'t" + 0.005*"The"'),
(9, '0.022*"I" + 0.014*"\'s" + 0.009*"``" + 0.007*"\'\'" + 0.007*"like"'),
(7, '0.010*"\'s" + 0.009*"I" + 0.006*"He" + 0.005*"The" + 0.005*"said"'),
(1, '0.009*"I" + 0.009*"\'s" + 0.007*"n\'t" + 0.007*"The" + 0.006*"He"')]
我不太明白,为什么出现这种情况,或者为什么不与我的例子发生已经看到。我如何使LDA模型找到更少重叠的更有特色的主题?是否首先过滤出更常见的词?如何调整模型的运行次数?原文的数量是否太少?
如果您觉得这回答了您的问题@OP,不要害怕点击绿色复选标记并将其标记为正确答案:)如果不是,请告诉我是否有任何可以扩展/解释的地方更好 – killerT2333