gensim - 如何在 gensim 上修复木槌
问题描述
我在笔记本上写了 LDA 模型。我正在尝试用木槌包装我的 gensim LDA 模型,出现以下错误:
CalledProcessError:命令'../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 mallet CalledProcessError: returned non-zero exit status
没有为我工作..
解决方案
我不知道你是否解决了这个问题,但我遇到了同样的问题。对我来说,问题的发生是因为我已将 mallet 二进制文件上传到研究服务器,而 Mallet 丢失了它的可执行标志。我的解决方案是运行
chmod -R +x mallet-2.0.8
这允许 gensim 包装器或您希望运行 mallet 的任何方式来运行可执行文件。如果您想更精确地使用chmod
,则可能chmod
是实际mallet-2.0.8/bin/mallet
文件。
推荐阅读
- python - 如何获得一套字典?
- r - stat_compare_means 和多个组的错误
- python - 如何在不使用 hmac 库的情况下在 python 中实现 HMAC?
- javascript - javascript正则表达式匹配非常具体的搜索(搜索字符串的开头)
- verilog - 灵敏度列表如何在电路级工作?
- javascript - 在对特定字段提出请求时,我在 req.body 上有一个奇怪的行为
- java - 从 clojure 调用带有可选 null 参数的 java 函数
- macos - 以给定路径的特定模式打开 emacs 应用程序
- reactjs - 尝试使用 redux 将值保存到我的商店,但它似乎不起作用
- concurrency - 如何在 fp-ts 中限制并发