1

プロジェクトで SVM 分類を実装するために libsvm(3.11) ツールを使用しています (マルチエージェントを使用したテキスト分類)。しかし、結果を予測するたびに、すべてのテスト ドキュメントに同じラベルを付けています。つまり、 +1 または -1 のいずれかですが、さまざまな種類のデータを使用しています。

プレーン テキスト ドキュメントの libsvm 分類を実行するために、次の手順を使用しています。

-> トレーニングテキストドキュメントのセットがあります

-> TF-IDF 重みを使用して、これらのテキスト ドキュメントを libsvm でサポートされている形式に変換しています (2 つのクラスを表す 2 つのフォルダーを使用しています。最初のフォルダーにはラベル -1 を割り当て、2 番目のフォルダーには +1 TF に従います-そのテキスト ドキュメントの IDF 値)

- >その後、これらの単語のバッグを1つのプレーンテキストドキュメントに取りました..次に、それらの単語を使用して、ラベル付きのテストドキュメントベクトルを生成しています(テストドキュメントは1つだけなので、IDFは常に1になり、ベクトルは 1 つだけです ... ラベルが問題にならないことを願っています) ...

-> その後、libsvm 関数 svm_train および svm_predict をデフォルトのオプションで適用しています

私は正しい手順でやっていますか?? ..間違った手順がある場合は、お気軽にお知らせください..本当に助かります..

そしてYこのlibsvmは常に1つのラベルとして結果を提供しています?? .. 私の手順に誤りがありますか?? ..またはツールの問題?? 前もって感謝します..

4

1 に答える 1

1

なぜ新しい基準を使用してテストドキュメントを作成するのですか? テストおよびトレーニング ドキュメント セットはすべて、元の「トレーニング テキスト ドキュメント」セットから派生する必要があります。これらのサブセットを取得してテストに使用できるため、これらを引用符で囲みます。最終的に、トレーニングとテストのテキスト ドキュメント セットが元のセットとは異なるものであることを確認してください。

于 2012-08-13T22:39:48.143 に答える