python - get_document_topics 返回一个空列表。
问题描述
我正在使用 gensim 进行主题建模。在训练 lda 模型后,我在新文档上调用 get_document_topics 以获取主题分布。但是,对于某些文档,返回值是一个空列表。这是我的代码。知道可能出了什么问题吗?
topic_vector = [ x[1] for x in self.ldamodel.get_document_topics(new_doc_bow , minimum_probability=
0.0, per_word_topics=False)]
解决方案
以下是我解决此问题的方法:
首先,确保您的 gensim 版本是 gensim-3.6.0,您可以通过在终端中运行以下命令来检查:
pip freeze | grep gensim
如果没有,您可以卸载您的 gensim 并安装较新版本。然后在文件 gensim/models/ldamodel.py 中,您需要将 epsilon 的值编辑为更大的值。
DTYPE_TO_EPS = {
np.float16: 1e-5,
np.float32: 1e-35, # modify the value and set it to 1e-5
np.float64: 1e-100,
}
推荐阅读
- mysql - 员工平均工资
- docker - Docker 容器中的“uwsgi 进入 FATAL 状态,启动重试次数过多”
- javascript - 模拟计算机的移动并用分数更新玩家的回合
- nginx - LetsEncrypt 在 Raspberry Pi Web 服务器上安装
- javascript - 如何在 MappaJS 中访问地图提供者成员
- powershell - 为什么信息可以重定向但调试/详细不能?(默认情况下它们不会显示在主机上)
- python - OpenCV addweight 不绘制覆盖
- regex - 删除 nginx 中的第一个文件夹
- python - 如何定义函数以使用 python 集成列表?
- python - TensorFlow 神经网络中的权重约束