さまざまな分類器のさまざまなエラー率を弱学習器のエラー率と比較したい (ランダムな推測よりも優れている)。それで、私の質問は、単純で処理しやすい弱学習器のいくつかの選択肢は何ですか? それとも、概念を間違って理解しているのでしょうか? また、弱い学習者は単に私が選択したベンチマーク (線形回帰など) にすぎませんか?
2 に答える
ランダムな推測よりも優れています
これは基本的に弱学習器の唯一の要件です。ランダムな推測を一貫して打ち負かすことができる限り、真のブースティング アルゴリズムは最終的なアンサンブルの精度を高めることができます。どの弱学習器を選択するかは、次の 3 つの要因のトレードオフになります。
- モデルのバイアス。ほとんどの場合、バイアスが低いほど優れていますが、オーバーフィットするものを選びたくはありません (そうです、ブースティングはオーバーフィットする可能性があり、実際にオーバーフィットします)。
- 弱学習器のトレーニング時間。通常、数百 (または数千) の弱学習器を構築するため、弱学習器をすばやく学習できるようにしたいと考えています。
- 弱学習器の予測時間。予測速度が遅いモデルを使用すると、それらのアンサンブルは数百倍遅くなります!
古典的な弱学習器は決定木です。ツリーの最大深度を変更することで、3 つの要素すべてを制御できます。これにより、ブーストで非常に人気があります。何を使用する必要があるかは、個々の問題によって異なりますが、決定木は良い出発点です。
注: アルゴリズムが加重データ インスタンスをサポートしている限り、任意のアルゴリズムをブーストに使用できます。私の大学のゲスト スピーカーは、計算生物学の研究のために 5 層のディープ ニューラル ネットワークを強化していました。
弱学習器は、基本的に各機能のしきい値です。簡単な例の 1 つは、バギングまたはブースティングに適用される決定スタンプと呼ばれる 1 レベルの決定木です。1 つの特徴のしきい値を選択し、そのしきい値でデータを分割するだけです (たとえば、花びらの幅に基づいて、アイリスの花が Iris versicolor か Iris virginica かを判断します)。次に、バギングまたは AdaBoost によって、この特定の機能についてトレーニングされます。