Mahoutを使用してk-meansアルゴリズムを分析しています。いくつかのテストを実行し、パフォーマンスを観察し、得られた結果を使用していくつかの統計を実行します。
Mahout内で自分のプログラムを実行する方法がわかりません。ただし、コマンドラインインターフェイスで十分な場合があります。
サンプルプログラムを実行するには、
$ mahout seqdirectory --input uscensus --output uscensus-seq
$ mahout seq2sparse -i uscensus-seq -o uscensus-vec
$ mahout kmeans -i reuters-vec/tfidf-vectors -o uscensus-kmeans-clusters -c uscensus-kmeans-centroids -dm org.apache.mahout.common.distance.CosineDistanceMeasure -x 5 -ow -cl -k 25
データセットは1つの大きなCSVファイルです。各行はレコードです。機能はコンマで区切られます。最初のフィールドはIDです。入力形式が原因で、seqdirectoryをすぐに使用できません。この同様の質問に対する答えを実装しようとしています。CSVとして保存されたベクトルデータを使用してmahoutでk-meansクラスタリングを実行するにはどうすればよいですか?しかし、私はまだ2つの質問があります:
- CSVからSeqFileに変換するにはどうすればよいですか?Mahoutを使用して独自のプログラムを作成し、この変換を行ってから、その出力をseq2parseの入力として使用できると思います。CSVIterator(https://cwiki.apache.org/confluence/display/MAHOUT/File+Format+Integrations)を使用できると思います。読み書きにはどのクラスを使用すればよいですか?
- 新しいプログラムを作成して実行するにはどうすればよいですか?マハウトの本が実際に動いているか、ここで他の質問をしていると、私はそれを理解できませんでした。