Latent Dirichlet Allocation(LDA)是一个主题模型,用于查找一堆文档的潜在变量(主题)。我正在使用python gensim包,有两个问题:
我想问题可能是由于我的文档:我的文档实际上属于特定类别,例如,它们都是介绍不同在线游戏的文档。对于我的情况,LDA是否仍然有效,因为文件本身非常相似,所以基于“词袋”的模型可能不是一个好的尝试方法?
有人能给我一些建议吗?谢谢!
我发现当语料库更小并且更专注于特定主题时,NMF表现更好。在大约250个文件的语料库中,所有讨论同一问题的NMF都能够提出7个不同的连贯主题。其他研究人员也报道了这一点......
“对于本文中提出的应用特别有用的另一个优点是,NMF能够识别传统LDA方法中往往报告不足的利基主题”(第6页)
Greene&Cross,使用动态主题建模方法探索欧洲议会的政治议程,PDF
不幸的是,Gensim没有实施NMF,但它是in Scikit-Learn。为了有效地工作,您需要向NMF提供一些TFIDF加权字向量,而不是像LDA那样为频率计数。
如果你已经习惯了Gensim并且已经预处理了所有这些方法,那么genesis有一些实用工具来转换语料库顶级的Scikit兼容结构。但是我认为只使用所有Scikit实际上会更简单。有一个使用NMF here的好例子。