gpt4 book ai didi

python-3.x - 槌中的Python主题建模错误

转载 作者:行者123 更新时间:2023-12-03 17:44:03 25 4
gpt4 key购买 nike

嗨,我正在使用 gensim 进行主题建模,正在使用 Mallet 并执行此代码我在 c 驱动器中解压缩了 mallet,如图所示,并设置了环境 MALLET_HOME命令。我正在执行的代码是

mallet_path = r'c:/mallet-2.0.8/bin/mallet'
ldamallet = gensim.models.wrappers.LdaMallet(mallet_path, corpus=corpus,
num_topics=20, id2word=id2word)

这给了我这样的错误
CalledProcessError                        Traceback (most recent call last)
<ipython-input-58-6e0dbb876ee6> in <module>()
----> 1 ldamallet = gensim.models.wrappers.LdaMallet(mallet_path,
corpus=corpus,
num_topics=20, id2word=id2word)

~\AppData\Local\Continuum\anaconda3\lib\site-
packages\gensim\models\wrappers\ldamallet.py in __init__(self, mallet_path,
corpus, num_topics, alpha, id2word, workers, prefix, optimize_interval,
iterations, topic_threshold)
124 self.iterations = iterations
125 if corpus is not None:
--> 126 self.train(corpus)
127
128 def finferencer(self):

~\AppData\Local\Continuum\anaconda3\lib\site-
packages\gensim\models\wrappers\ldamallet.py in train(self, corpus)
265
266 """
--> 267 self.convert_input(corpus, infer=False)
268 cmd = self.mallet_path + ' train-topics --input %s --num-topics
%s --alpha %s --optimize-interval %s '\
269 '--num-threads %s --output-state %s --output-doc-topics %s -
-output-topic-keys %s '\

~\AppData\Local\Continuum\anaconda3\lib\site-
packages\gensim\models\wrappers\ldamallet.py in convert_input(self, corpus,
infer, serialize_corpus)
254 cmd = cmd % (self.fcorpustxt(), self.fcorpusmallet())
255 logger.info("converting temporary corpus to MALLET format with
%s", cmd)
--> 256 check_output(args=cmd, shell=True)
257
258 def train(self, corpus):

~\AppData\Local\Continuum\anaconda3\lib\site-packages\gensim\utils.py in
check_output(stdout, *popenargs, **kwargs)
1804 error = subprocess.CalledProcessError(retcode, cmd)
1805 error.output = output
-> 1806 raise error
1807 return output
1808 except KeyboardInterrupt:`

CalledProcessError: Command 'c:\mallet-2.0.8\bin\mallet import-file --
preserve-case --keep-sequence --remove-stopwords --token-regex "\S+" --input
C:\Users\apath009\AppData\Local\Temp\d186ea_corpus.txt --output
C:\Users\apath009\AppData\Local\Temp\d186ea_corpus.mallet' returned non-zero
exit status 1.

请帮忙!!!

最佳答案

我也有这个错误,但现在它正在工作。我不确定我做了什么让它开始工作,但我会详细说明我所做的一切。

首先,我按照此链接中的所有内容进行操作,答案分 3 个步骤(粘贴在下面):
Error when implementing gensim.LdaMallet

  • 确保 MALLET_HOME已设置
  • 在 Python 中设置 mallet_path 时转义斜线
    mallet_path = 'c:\\mallet-2.0.8\\bin\\mallet'
    LDA_model = gensim.models.LdaMallet(mallet_path, ...
  • 此外,修改 Python\Lib\site-packages\gensim\models\ldamallet.py: 中的第 142 行可能很有用。改 --token-regex '\S+' to --token-regex \"\S+\"

  • 但我仍然收到错误消息。接下来,我的电脑是双启动,所以我启动了lubuntu,安装了java、python3、gensim,并将mallet文件夹复制到lubuntu分区。我使用与 windows 相同的代码运行了一个测试 python 文件,但使用了新的 mallet 目录 /home/Desktop/mallet-2.0.8/bin/mallet从 lubuntu 终端。有效。然后我重新启动到 Windows,突然它也可以在 Windows 上运行。

    关于python-3.x - 槌中的Python主题建模错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50742031/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com