3

私の学士論文では、テキスト分類問題でMultinomialNaiveBayes分類器とともにAdaBoostM1を使用することになっています。問題は、ほとんどの場合、ブーストせずにM1がMultinomialNaiveBayesよりも悪いか等しいということです。

私は次のコードを使用します:

AdaBoostM1 m1 = new AdaBoostM1();
m1.setClassifier(new NaiveBayesMultinomial());
m1.buildClassifier(training);

それで、AdaBoostがどのように結果を改善できないのかわかりませんか?残念ながら、ほとんどの人がAdaBoostに非常に満足しているように見えるため、Web上でそれについて他に何も見つけることができませんでした。

4

3 に答える 3

5

AdaBoostは、バイナリ/二分/2クラスの分類器であり、精度が1/2よりも優れている弱い学習者を後押しするように設計されています。AdaBoostM1はMクラスの分類器ですが、チャンスレベルが約1 / Mであると予想される場合、弱い学習者は1/2の精度よりも優れている必要があります。バランシング/重み付けは、最初は等しい有病率クラスを取得するために使用されますが、AdaBoostに固有の再重み付けは、これをすぐに破壊する可能性があります。解決策は、カッパやインフォームドネス(AdaBook)のような偶然に修正された対策に基づいてブーストすることです。

Mが大きくなると、たとえばテキスト分類の場合、この不一致が大きくなるため、偶然よりもはるかに強力な分類子が必要になります。したがって、M = 100の場合、確率は約1%ですが、AdaBoostM1には50%の最小精度が必要です。

基本分類子が強くなるにつれて(つまり、チャンスをかろうじて超えることはなくなります)、物事を改善するためのブーストの範囲は狭くなります-それはすでに検索スペースの非常に特定の部分に私たちを引っ張っています。エラーや外れ値に過剰適合している可能性が高くなっているため、さまざまなバリアントのバランスを取る余地はありません。

情報に基づく多くのリソース(matlabコードとxlsシートおよび初期の論文を含む)はここにあります:http ://david.wardpowers.info/BM他の偶然修正されたカッパ測定との比較はここにあります:http://aclweb.org /anthology-new/E/E12/E12-1035.pdf

ブックメーカーの情報を使用したAdaboostのweka実装と実験が利用可能です-作成者に連絡してください。

于 2013-03-11T01:47:20.310 に答える
4

テキスト分類でナイーブベイズを打ち負かすのは難しいです。さらに、ブーストはバイアスの高い弱い分類器用に設計されており、ブーストがうまく機能する場所です。ブーストするとバイアスは減少しますが、分散は増加します。したがって、コンボAdaBoost + NaiveBayesをNaiveBayesよりも優れたパフォーマンスにする場合は、大きなトレーニングデータセットを用意して境界を越える必要があります。トレーニングセットを拡大しても、Naive Bayesのパフォーマンスはさらに向上しません(AdaBoostは拡大の恩恵を受けます)。トレーニングデータセット)。

于 2012-08-19T19:03:46.970 に答える
2

ナイーブベイズでのブーストについて検討している次の論文を読むことをお勧めします。これは、ブースティングによって単純ベイズ分類器の精度が向上しないことを示しています。これは、一連の自然領域で通常期待されることです。

http://onlinelibrary.wiley.com/doi/10.1111/1467-8640.00219/abstract

それが良い洞察を提供することを願っています。

于 2013-11-26T07:08:59.600 に答える