我正在尝试使用用于短槌的Gesim包装器在Databricks上执行主题建模。
我在本地系统上已经有相同的运行代码。
以下是一些示例代码,这些代码已在我的本地系统上运行:
import os
os.environ['MALLET_HOME'] = 'C:/Users/Soumadiptya.c/Desktop/mallet-2.0.8'
mallet_path = 'C:/Users/Soumadiptya.c/Desktop/mallet-2.0.8/bin/mallet'
ldamallet_model = gensim.models.wrappers.ldamallet.LdaMallet(mallet_path, corpus=corpus, num_topics=20, id2word=id2word, random_seed = 123)
这是我要在Databricks实例上执行的操作:
os.environ['MALLET_HOME'] = '/dbfs/FileStore/tables/mallet-2.0.8'
mallet_path_new = '/dbfs/FileStore/tables/mallet-2.0.8/bin/mallet'
new_model = gensim.models.wrappers.ldamallet.LdaMallet(mallet_path_new, corpus=corpus, num_topics=20, id2word=id2word)
但这会退出,并显示以下错误:
CalledProcessError: Command '/dbfs/FileStore/tables/mallet-2.0.8/bin/mallet import-file --preserve-case --keep-sequence --remove-stopwords --token-regex "\S+" --input /tmp/e091ce_corpus.txt --output /tmp/e091ce_corpus.mallet' returned non-zero exit status 126
请注意,我已经将必要的槌文件导入了上述目录,并且路径本身存在。我假设问题在于在数据块内设置Env变量,但无法弄清楚。任何帮助将不胜感激。