1

関連性フィードバック用のRocchio アルゴリズムを機能させようとしています。質問があり、ポジティブとネガティブのマークが付けられたドキュメントがいくつかあります。たとえば、60 のポジティブと 337 のネガティブがあります。このデータセットの一部を使用してモデルをトレーニングし (この場合はクエリを調整)、他の部分でテストしたいと考えています。しかし、この種の不均衡なデータセットを使用すると、トレーニングセットに取り込めるネガティブとポジティブの数がわかりません。

もう 1 つの問題は、テスト データセットのポジティブ/ネガティブの比率に応じて、誤解を招く精度、再現率、および F1 スコアの結果が得られることです。テスト データセットに 49 個の陽性と 17 個の陰性があると、精度 = 0.742、再現率 = 1.000、F1 = 0.852、TP = 49、FP = 17、TN = 0、FN = 0 の数が得られます。

他のクエリの正/負の比率の分布は、モデルにどの比率を選択するかについてのヒントを与えてくれません。

だから私があなたに求めているのは、不均衡なデータセットを使って正しい結果を得るためのアドバイスです。

前もって感謝します。

4

1 に答える 1

0

まず第一に、あなたのアルゴリズムは、このような少数の例から一般化するのに苦労すると思います (これはもちろん機能の数にも依存します)。

第二に、不均衡なデータセットを扱うのはあまり良い考えではないと思います。出力が常に「正」であるため、アルゴリズムは何も学習していないようです。これは、データセットのバランスが取れていれば、50% の精度が得られることを意味します。あまり良くありません...より大きなデータセットが見つからない場合は、次のように分割することをお勧めします。

  • トレーニングセット(ポジティブ45点・ネガティブ45点)
  • テストセット(陽性15名/陰性15名)

とはいえ、私はまだ学生なのでそう思うのですが、経験豊富なユーザーが確認または弱体化できるとよいでしょう。

それが役立つことを願っています!

于 2012-06-01T13:47:05.443 に答える