当尝试计算较小规模的语料库的 lda 时,在 python 中出现此错误,但在其他情况下工作正常。
语料库的大小是 15,我尝试将主题数设置为 5,然后将其减少到 2,但它仍然给出相同的错误:ValueError:无法在空集合上计算 LDA(无术语)
在这一行出现错误:lda = models.LdaModel(corpus, num_topics=topic_number, id2word=dictionary, passes=passes)
语料库在哪里corpus = [dictionary.doc2bow(text) for a, id, text, s_date, e_date, qd, qd_perc in texts]
为什么没有给出任何条件?
终于想通了。小文档的问题是,如果您尝试从字典中过滤极端内容,则可能会在语料库中得到空列表。corpus = [dictionary.doc2bow(text)]
.
所以参数的值dictionary.filter_extremes(no_below=2, no_above=0.1)
之前需要进行相应且仔细的选择corpus = [dictionary.doc2bow(text)]
我刚刚删除了过滤器极端值,lda 模型现在运行良好。不过我会更改filter Extreme中的参数值并稍后使用它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)