我正在使用Gensim的木槌包装器进行主题建模-
LdaMallet(path_to_mallet_binary, corpus=corpus, num_topics=100, id2word=words, workers=6, random_seed=2)
虽然上面的工作速度惊人地快,但获取每个文档(n=40000)的主题分布的步骤(见下文)需要很长时间
#Store topic distributuon for all documents
all_topics=[]
for x in tqdm(range(0, len(doc_list))):
all_topics.append(lda_model[corpus[x]])
完成30000份文件大约需要18个小时。我不确定我做错了什么。有没有一种方法可以更快地分发所有文档的主题
事实证明,加载LdaMallet模型花费了大量时间。当我一次完成而不是一个接一个地完成时,我能够在4分钟内生成50000个主题分布(这与之前的时间相同)
语料库=[dictionary.doc2bow(preprocess(unseen_document)),用于未看见的_文档中的未看见的_文档]分布=mallet_模型[corpus]
你可以参考https://github.com/RaRe-Technologies/gensim/issues/3018
我可以通过Python的
subprocess
直接调用Javamallet
来加快速度。文档主题分布在一个文件中,可以轻松导入到数据框中。gensim
包装虽然简单,但似乎有问题相关问题 更多 >
编程相关推荐