当前位置: 首页 > 知识库问答 >
问题:

使用LDA(主题模型):每个主题在单词上的分布相似且“平坦”

宰父桐
2023-03-14

潜在狄利克雷分配(LDA)是一个主题模型,用于查找一组文档背后的潜在变量(主题)。我使用python gensim包,有两个问题:

>

  • 我打印出每个主题最频繁的单词(我尝试了10,20,50个主题),发现单词的分布非常“平坦”:意味着即使是最频繁的单词也只有1%的概率...

    大多数主题都是相似的:这意味着每个主题中最常用的单词重叠很多,并且主题中的高频词几乎共享同一组单词。。。

    我想问题可能是因为我的文档:我的文档实际上属于一个特定的类别,例如,它们都是介绍不同网络游戏的文档。就我而言,LDA是否仍然有效,因为文档本身非常相似,所以基于“文字袋”的模型可能不是一个好的尝试方式?

    谁能给我一些建议?谢谢你!

  • 共有1个答案

    高勇
    2023-03-14

    我发现当语料库更小、更专注于特定主题时,NMF会表现得更好。在大约250份讨论同一问题的文献中,NMF能够拉出7个不同的连贯主题。其他研究人员也报道了这一点...

    “另一个对本文所述应用特别有用的优势是,NMF能够识别在传统LDAhtml" target="_blank">方法中往往被低估的利基主题”(第6页)

    格林

    不幸的是,Gensim没有NMF的实现,但它在Scikit Learn中。为了有效地工作,您需要向NMF提供一些TFIDF加权字向量,而不是像LDA那样的频率计数。

    如果您已经习惯Gensim,并且已经对所有内容进行了预处理,那么genesis会提供一些实用程序来转换与语料库顶部Scikit兼容的结构。然而,我认为仅仅使用所有的Scikit实际上会更简单。这里有一个使用NMF的好例子。

     类似资料:
    • 我正在使用gensim lda进行主题建模并获得如下结果: 主题1:word1 word2 word3 word4 主题2:word4 word1 word2 word5 主题3:word1 word4 word5 word6 然而,在同一个lda上使用木槌不会产生跨主题的重复单词。我有大约20份文件

    • 我刚刚开始阅读关于潜在Dirichlet分配LDA的文章,并希望将其应用到我的项目中。 我可以知道LDA是否能将一个主题分配给多个单词吗? 例如,A条谈到“河岸”,而B条谈到“银行在金融中的作用”。因此,LDA是否允许将“银行”一词潜在地分配给两个不同的主题?

    • 我不熟悉主题建模/潜在Dirichlet分配,并且难以理解如何将该概念应用于我的数据集(或者它是否是正确的方法)。 我有少量的文学文本(小说),并希望使用LDA提取一些一般主题。 我正在使用Python中的模块以及一些特性。为了进行测试,我将我的原始文本(仅6篇)分成30个块,每个块有1000个单词。然后,我将块转换为文档术语矩阵,并运行该算法。这就是代码(尽管我认为这与问题无关): 然而,结果与

    • 问题内容: 我能够运行gensim的LDA代码,并获得各自关键词的前10个主题。 现在,我想更进一步,通过查看将哪些文档归类到每个主题中,来了解LDA算法的准确性。gensim LDA有可能吗? 基本上我想做这样的事情,但是在python中并使用gensim。 具有主题模型的LDA,如何查看不同文档属于哪些主题? 问题答案: 使用主题的概率,您可以尝试设置一些阈值并将其用作聚类基线,但是我敢肯定,

    • 问题内容: 我正在使用topicmodels包中的LDA,并且已经在大约30.000个文档上运行了LDA,获得了30个主题,并且获得了主题的前10个字,它们看起来非常好。但是我想看看哪些文档最有可能属于哪个主题,该怎么办? 问题答案: 如何使用内置数据集。这将向您显示哪些文档属于哪个主题的可能性最高。 那是你想做的吗? 此答案的提示:https : //stat.ethz.ch/pipermail

    • 问题内容: 我正在使用python从231个句子的小型语料库中训练潜在Dirichlet分配(LDA)模型。但是,每次我重复该过程时,都会产生不同的主题。 为什么相同的LDA参数和语料库每次都会生成不同的主题? 我如何稳定话题的产生? 我正在使用这个语料库(http://pastebin.com/WptkKVF0)和停用词列表(http://pastebin.com/LL7dqLcj),这是我的代