在浏览了Gensim软件包的文档后,我发现有4种方法可以将文本存储库转换为语料库.
语料库共有4种格式:
>市场矩阵(.mm)
> SVM Light(.svmlight)
> Blie格式(.lad-c)
>低格式(.low)
在这个问题中,如上所述,数据库中总共有19,188个文档.
必须阅读每个文档并从句子中删除停用词和标点符号,这可以使用nltk完成.
import gensim
from gensim import corpora, similarities, models
##
##Text Preprocessing is done here using nltk
##
##Saving of the dictionary and corpus is done here
##final_text contains the tokens of all the documents
dictionary = corpora.Dictionary(final_text)
dictionary.save('questions.dict');
corpus = [dictionary.doc2bow(text) for text in final_text]
corpora.MmCorpus.serialize('questions.mm', corpus)
corpora.SvmLightCorpus.serialize('questions.svmlight', corpus)
corpora.BleiCorpus.serialize('questions.lda-c', corpus)
corpora.LowCorpus.serialize('questions.low', corpus)
##Then the dictionary and corpus can be used to train using LDA
mm = corpora.MmCorpus('questions.mm')
lda = gensim.models.ldamodel.LdaModel(corpus=mm, id2word=dictionary, num_topics=100, update_every=0, chunksize=19188, passes=20)
通过这种方式,可以将他的数据集转换为可以使用gensim包使用LDA进行主题建模训练的语料库.