在使用Gensim库训练LDA模型时,有时会遇到以下错误:

'ValueError: not enough values to unpack (expected 2, got 1)'

这个错误通常发生在使用 gensim.models.ldamodel.LdaModel 创建LDA模型时,代码如下:

da_model = gensim.models.ldamodel.LdaModel((tfidf_matrix.todense(),), num_topics=8, id2word=dict((i, s)
                                            for i, s in enumerate(feature_names)),
                                            passes=10)

这个错误的根本原因是 LdaModel 的第一个参数期望的是一个 NumPy 矩阵,而你传递的是一个包含一个 NumPy 矩阵的元组。

解决方法很简单,只需将第一个参数中的逗号去掉,将它从元组改为 NumPy 矩阵即可:

da_model = gensim.models.ldamodel.LdaModel(tfidf_matrix.todense(), num_topics=8, id2word=dict((i, s)
                                            for i, s in enumerate(feature_names)),
                                            passes=10)

通过这种方式修改代码,即可解决该错误,成功训练LDA模型。

Gensim LDA模型错误:ValueError: not enough values to unpack (expected 2, got 1)的解决方法

原文地址: https://www.cveoy.top/t/topic/nJbk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录