2013-02-07 39 views
5

當前的Mahout 0.8-SNAPSHOT包含用於主題建模的Collapsed Variational Bayes(cvb)版本,並刪除了潛在Dirichlet分析(lda)方法,因爲cvb可以更好地並行化。不幸的是,關於如何運行示例並生成有意義的輸出,僅有lda的文檔。在mahout中運行cvb 0.8

因此,我想:

  • 預處理一些文本正確
  • 運行CVB的cvb0_local版本
  • 在生成的各主題看着前n個字檢查結果

回答

12

所以這裏是後續的Mahout命令,我不得不在Linux shell中調用它。 $ 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 
+0

有什麼辦法以檢索eache主題documen TS?或者其他方式來檢索文檔主題? –

3

由於JoKnopp爲詳細的命令。

如果你得到: 異常在線程「主要」 java.lang.ClassCastException:java.lang.Integer中不能轉換爲java.lang.String

你需要添加命令行選項「maxIterations」 : --maxIterations(-m)maxIterations

我用-m 20和它的作品

參考: https://issues.apache.org/jira/browse/MAHOUT-1141

相關問題