0

我正在使用 gensim 库将 LDA 应用于一组文档。使用 gensim,我可以将 LDA 应用于语料库,无论权重是什么:二进制、tf、tf-idf ...

我的问题是,原始LDA应该使用什么术语加权?如果我理解正确,权重应该是词频,但我不确定。

4

1 回答 1

1

它应该是一个表示为“词袋”的语料库。或者,是的,术语计数列表。

正确的格式是Gensim 网页上第一个教程corpus中定义的格式(这些非常有用)。

即,如果您有dictionaryRadim 教程中定义的,以及以下文档,

doc1 = ['big', 'data', 'technique', 'lots', 'of', 'cash']
doc2 = ['this', 'document', 'has', 'words']
docs = [doc1, doc2]

那么你的语料库(与 LDA 一起使用)应该是一个可迭代的对象(例如一个列表),由以下形式的元组列表组成: (dictKey, count),其中dk指的是一个术语的字典键,而 count 是它在文档。这是为您完成的

corpus = [dictionary.doc2bow(doc) for doc in docs]

doc2bow功能的意思是“文档到词袋”。

于 2014-09-21T03:20:12.777 回答