我应该使用tfidf语料库还是仅使用语料库来推断使用LDA的文档?

时间:2014-11-26 11:14:04

标签: python lda gensim

我只是想知道当我们在gensim中使用LDA进行推理文档时,要么使用TFIDF语料库还是只使用语料库

这是一个例子

from gensim import corpora, models
import numpy.random
numpy.random.seed(10)

doc0 = [(0, 1), (1, 1)]
doc1 = [(0,1)] 
doc2 = [(0, 1), (1, 1)]
doc3 = [(0, 3), (1, 1)]

corpus = [doc0,doc1,doc2,doc3]
dictionary = corpora.Dictionary(corpus)

tfidf = models.TfidfModel(corpus)
corpus_tfidf = tfidf[corpus]
corpus_tfidf.save('x.corpus_tfidf')

corpus_tfidf = corpora.MmCorpus.load('x.corpus_tfidf')

lda = models.ldamodel.LdaModel(corpus_tfidf, id2word=dictionary, num_topics=2)

#which one i should use from this   
**corpus_lda = lda[corpus]**          #this one 
**corpus_LDA = lda[corpus_tfidf ]**   #or this one?


corpus_lda.save('x.corpus_lda')

for i,j in enumerate(corpus_lda):
    print j, corpus[i]

1 个答案:

答案 0 :(得分:6)

根据Gensim's mailing list(特别是最后一篇文章),标准程序是使用一袋文字语料库。您可以使用TF-IDF语料库,但似乎不清楚这会产生什么样的影响。