使用Mallet时,如何获取与每个文档关联的主题列表?我想我需要使用train-topics和--output-topic-docs,但是当我这样做时,我会收到错误。
我正在使用Mallet(2.0.8),并使用以下bash脚本进行建模:
MALLET=/Users/emorgan/desktop/mallet/bin/mallet
INPUT=/Users/emorgan/desktop/sermons
OBJECT=./object.mallet
$MALLET import-dir --input $INPUT --output $OBJECT --keep-sequence --remove-stopwords
$MALLET train-topics --input $OBJECT --num-topics 10 --num-top-words 1 \
--num-iterations 50 \
--output-doc-topics ./topics.txt \
--output-topic-keys ./keys.txt \
--xml-topic-report ./topic.xml \
--output-topic-docs ./docs.txt
不幸的是,没有创建./docs.txt。相反,我收到以下错误:
线程中的异常" main" java.lang.ClassCastException:java.net.URI无法强制转换为java.lang.String 在cc.mallet.topics.ParallelTopicModel.printTopicDocuments(ParallelTopicModel.java:1773) 在cc.mallet.topics.tui.TopicTrainer.main(TopicTrainer.java:281)
更具体地说,我希望Mallet生成一个文档列表和分配给它们的相关主题,或者我想要一个主题列表,然后是相关文档列表。如何创建此类列表?
答案 0 :(得分:0)
至少在mallet 2.0.7中,--output-doc-topics ./topics.txt
提供了所需的表(每个文档的主题组合)。虽然输出格式已从2.0.7更改为2.0.8,但文件的主要内容保持不变。