当前的Mahout 0.8-SNAPSHOT包括用于主题建模的折叠变型贝叶斯(cvb)版本,并删除了潜在Dirichlet分析(lda)方法,因为可以更好地并行化cvb。不幸的是,只有lda的文档介绍了如何运行示例并生成有意义的输出。

因此,我想:

  • 正确预处理了一些文本
  • 运行cvb
  • 的cvb0_local版本
  • 通过查看每个生成的主题中的前n个单词
  • 来检查结果

    最佳答案

    因此,以下是我必须在linux shell中调用的后续Mahout命令。
    $ MAHOUT_HOME指向我的mahout/bin文件夹。

    $MAHOUT_HOME/mahout seqdirectory \
        -i path/to/directory/with/texts \
        -o out/sequenced
    
    $MAHOUT_HOME/mahout seq2sparse -i out/sequenced \
        -o out/sparseVectors \
        --namedVector \
        -wt tf
    
    $MAHOUT_HOME/mahout rowid \
        -i out/sparseVectors/tf-vectors/ \
        -o out/matrix
    
    $MAHOUT_HOME/mahout cvb0_local \
        -i out/matrix/matrix \
        -d out/sparseVectors/dictionary.file-0 \
        -a 0.5 \
        -top 4 -do out/cvb/do_out \
        -to out/cvb/to_out
    

    通过显示每个主题的前10个词来检查输出:
    $MAHOUT_HOME/mahout vectordump \
        -i out/cvb/to_out \
        --dictionary out/sparseVectors/dictionary.file-0 \
        --dictionaryType sequencefile \
        --vectorSize 10 \
        -sort out/cvb/to_out
    

    10-08 11:08