データをテストするには、トレーニング セットにいくつかのラベルがあること、またはデータ コレクション セットで使用したいくつかの機能に基づいてチャンクに分割されていることを確認する必要があります。データをどのように整理したかはわかりませんが、データ セットを同様のフィーチャのチャンクに分割する必要があります。
基準に基づいて分割を作成したら、入力データの作成を確認します。以下を使用してファイルを検証できます。
hadoop fs -ls filename
以下を使用して分類器をトレーニングします。
$MAHOUT_HOME/bin/mahout trainclassifier -i input_file -o output_model
以下を使用して分類子をテストします。
$MAHOUT_HOME/bin/mahout testclassifier -m output_model -d input_file
注: データ収集中に、特定のデータ値が存在する場合は、重みを割り当てる必要があることに注意してください。また、実験のセットアップまたはデータ収集中にエラーを正規化するために、データクリーニングを行う必要があります。データセットに対して任意の乗法散乱補正手法を使用して補正できます。
まず、 training-categories.txt
分類器のカテゴリを含む というファイルを用意します。これには、単純なテキスト エディタを使用できます。
関心のあるカテゴリのリストができたExtractTrainingData
ので、カテゴリ リストを使用してクラスを実行します。
$TT_HOME/bin/tt extractTrainingData \
--dir ./index \
--categories ./training-categories.txt \
--output ./category-bayes-data \
--category-fields categoryFacet,source \
--text-fields title,description \
--tv
このコマンドは、ドキュメントを読み取り、カテゴリおよびソース フィールドで一致するカテゴリを検索します。にリストされているカテゴリのtraining-categories.txt
1 つがこれらのドキュメントのいずれかで見つかった場合、用語は、タイトル フィールドと説明フィールドに格納されている用語ベクトルから抽出されます。これらの用語は、category-bayes-data
ディレクトリ内のファイルに書き込まれます。カテゴリごとに 1 つのファイルが作成されます。それぞれは、任意のテキスト エディタまたは表示ユーティリティで表示できるプレーン テキスト ファイルです。
カテゴリ名は最初の列に表示され、ドキュメントに表示される各用語は 2 番目の列に含まれています。Mahout Bayes 分類子は、入力フィールドがステミングされることを想定しているため、これがテスト データに反映されていることがわかります。data コマンドの --tv
引数 extractTraining
により、各ドキュメントの用語ベクトルから抽出された用語が使用されます。
ExtractTrainingData
クラスの実行が完了すると、各カテゴリで見つかったドキュメントの数が出力されます。