如何在 gensim 上修复木槌



我在笔记本上写了LDA模型。 我正在尝试用木槌包装我的 gensim LDA 模型,出现以下错误:

调用进程错误:命令 '../input/mymallet/mallet-2.0.8/bin/mallet import-file --preserve-case --keep-sequence --remove-stopwords --token-regex "\S+" --input/tmp/fbcc4b_corpus.txt --output/tmp/fbcc4b_corpus.mallet' 返回非零退出状态 126。

由于第二行引发的错误:

mallet_path = '../input/mymallet/mallet-2.0.8/bin/mallet' # update this path
ldamallet = gensim.models.wrappers.LdaMallet(mallet_path, corpus=corpus, num_topics=20, id2word=id2word)

路径正确。

尝试了这个解决方案:Gensim 槌 调用进程错误:返回非零退出状态

对我不起作用..

我花了几个小时试图解决它。 尝试了此解决方案,但没有任何效果。

查看我之前对LDA Mallet的成功调用,我注意到一些参数没有被设置,然后我做了这样:

gensim.models.wrappers.LdaMallet(mallet_path=mallet_path, corpus=corpus, num_topics=num_topics, id2word=id2word, prefix='temp_file_', workers=4(

我真的希望它对你有所帮助。找到解决这个问题的方法是一种痛苦。

我不知道你是否曾经解决这个问题,但我遇到了同样的问题。 对我来说,出现问题是因为我将 mallet 二进制文件上传到研究服务器,其中 Mallet 丢失了其可执行标志。 我的解决方案是运行

chmod -R +x mallet-2.0.8

这允许 gensim 包装器,或者您希望运行 mallet 的任何方式,运行可执行文件。 如果你想更精确地使用chmod,你可能会chmod实际的mallet-2.0.8/bin/mallet文件。

相关内容

  • 没有找到相关文章

最新更新