1

weka を使用してテキストを分類しようとしています。私がすることはこれです:

  • すべてのデータを含む大きな ARFF ファイルを作成します: all_of_it.arff.
  • train.arffそのデータをトレーニングとテストに分割します。test.arff
  • トレーニング セットで特徴選択を行い、新しいトレーニング ファイルを出力します。train_fs.arff
  • これらの選択された機能のみを使用して分類器を構築します。

そして問題は……。

トレーニング セットから選択した機能のみを使用するようにテスト セットを標準化する方法がよくわかりません。に従って新しいテストファイルを作成するようなものtest.arfftrain_fs.arff

※使ってみた

java -cp weka.jar weka.filters.unsupervised.attribute.Standardize -b -i train_fs.arff -o train2.arff -r test.arff -s test2.arff

しかし、私は悪名高いSrc and Dest differ in # of attributes.

Arff ファイル (つまり、ほとんど機能のない新しいトレーニング データ) に従ってセットを正規化/標準化する方法はありますか? Standardize または StringToWordVector フィルターでこれを行う方法がわかりません。

4

2 に答える 2

1

バッチ フィルタリングは、問題に対する 1 つの解決策です。

長所:

  • トレーニング データセットに適用するのと同じフィルターをテスト データセットに適用します。特徴選択を実行すると、2 つのデータセットは互換性があります

短所:

  • コマンド ライン インターフェースまたは Weka の Java API からのみ利用できます。
  • 2 つのデータセットを同時にフィルタリングする必要があります

バッチ フィルタリングの詳細については、こちらを参照してください。

于 2013-10-14T14:32:11.253 に答える
1

InputMappedClassifierを調べることもできます。これは、互換性のないトレーニング データとテスト データに対処するラッパー分類器です。

于 2014-04-25T14:20:30.060 に答える