gensim - gensim/models/ldaseqmodel.py:217:RuntimeWarning:在 double_scalars 中遇到除以零
问题描述
/Users/Barry/anaconda/lib/python2.7/site-packages/gensim/models/ldaseqmodel.py:217:RuntimeWarning:在double_scalars收敛中遇到除以零= np.fabs((bound - old_bound)/ old_bound)
#dynamic topic model
def run_dtm(num_topics=18):
docs, years, titles = preprocessing(datasetType=2)
#resort document by years
Z = zip(years, docs)
Z = sorted(Z, reverse=False)
years_new, docs_new = zip(*Z)
#generate time slice
time_slice = Counter(years_new).values()
for year in Counter(years_new):
print year,' --- ',Counter(years_new)[year]
print '********* data set loaded ********'
dictionary = corpora.Dictionary(docs_new)
corpus = [dictionary.doc2bow(text) for text in docs_new]
print '********* train lda seq model ********'
ldaseq = ldaseqmodel.LdaSeqModel(corpus=corpus, id2word=dictionary, time_slice=time_slice, num_topics=num_topics)
print '********* lda seq model done ********'
ldaseq.print_topics(time=1)
嘿伙计们,我正在使用 gensim 包中的动态主题模型进行主题分析,遵循本教程,https://github.com/RaRe-Technologies/gensim/blob/develop/docs/notebooks/ldaseqmodel.ipynb,但是我总是遇到同样的意外错误。谁能给我一些指导?即使我尝试了一些不同的数据集来生成语料库和字典,我也真的很困惑。错误是这样的:
/Users/Barry/anaconda/lib/python2.7/site-packages/gensim/models/ldaseqmodel.py:217:RuntimeWarning:在double_scalars收敛中遇到除以零= np.fabs((bound - old_bound)/ old_bound)
解决方案
该np.fabs
错误意味着它遇到了 NumPy 错误。你使用的是什么 NumPy 和 gensim 版本?
NumPy 不再支持 Python 2.7,并且 Ldaseq 在 2016 年被添加到 Gensim,所以你可能只是没有可用的兼容版本。如果您正在将 Python 3+ 教程重新编写为 2.7 变体,您显然对版本差异有所了解 - 尝试在 3.6.8 环境中运行它(无论如何,您必须在某个时候升级,2020 年即将结束来自 Python 本身的 2.7 支持)。这可能已经有所帮助,我已经完成了本教程,并没有在我自己的数据中遇到这个问题。
话虽这么说,我之前在运行时也遇到过同样的错误LdaMulticore
,这是由一个空的语料库引起的。
除了在函数中完全运行代码之外,您是否可以尝试逐行检查它(或查看您的调试级别日志)并检查您的输出是否具有预期的属性:例如,您的语料库不是空的(或包含空文件)?
如果发生这种情况,请修复预处理步骤并重试 - 这至少帮助了我并 帮助解决了邮件列表中相同的 ldamodel 错误。
PS:不发表评论,因为我缺乏声誉,请随时编辑。
推荐阅读
- jquery - Jquery在点击事件后显示输入文本字段
- jquery - Three.js 通过 dat.gui 组合框防止 Raycast
- java - How to convert List
> into Flux - >?
- sql-server - 不同的“SELECT”语句基于值 SQL Server
- cpu-architecture - 在 MESI 缓存一致性协议中,如果需要从内存中获取数据,缓存行的状态究竟何时发生变化?
- java - 是否可以创建一个文件来存储所有 Javadoc 信息?
- node.js - npm run 指向不同的 .env 文件
- gmail - gmail watch 一段时间后没有得到更改
- android - 如何在 API 级别的 CheckBox/RadioButton 之前添加填充
- c# - 如何将 IStream(C++) 转换为 System::IO::Stream(c#),反之亦然