Gradient Boosting Trees(GBM)とAdaboostの違いの直感的な説明


48

GBMとAdaboostの違いを理解しようとしています。

これらは私がこれまでに理解したことです:

  • 前のモデルのエラーから学習し、最終的にモデルの加重和を作成するブースティングアルゴリズムがあります。
  • GBMとAdaboostは、損失関数を除いてかなり似ています。

しかし、それでも私はそれらの間の違いのアイデアをつかむことは困難です。誰かが直感的な説明をくれますか?

回答:


34

この序論は、いくつかの直観的な説明を提供するかもしれないことがわかりました。

  • 勾配ブースティングでは、(既存の弱学習器の)「欠点」は勾配によって識別されます。
  • Adaboostでは、「欠点」は高データポイントによって識別されます

私の理解では、Adaboostの指数関数的損失は、より良く適合したサンプルにより多くの重みを与えます。とにかく、序論で提供された勾配ブースティングの歴史に示されているように、アダブーストは損失関数の観点から勾配ブースティングの特別なケースと見なされます。

  1. 最初に成功したブースティングアルゴリズムであるAdaboostの発明[Freund et al。、1996、Freund and Schapire、1997]
  2. Adaboostを特別な損失関数を持つ勾配降下として定式化する[Breiman et al。、1998、Breiman、1999]
  3. さまざまな損失関数を処理するためにAdaboostを勾配ブースティングに一般化する[Friedman et al。、2000、Friedman、2001]

11

AdaBoostアルゴリズムの直感的な説明

@Randelの優れた答えに基づいて、次の点を説明しましょう


  • Adaboostでは、「欠点」は高データポイントによって識別されます

AdaBoostのまとめ

Gm(x) m=1,2,...,M

G(x)=sign(α1G1(x)+α2G2(x)+...αMGM(x))=sign(m=1MαmGm(x))
  • 最終予測は、重み付き多数決によるすべての分類子からの予測の組み合わせです

  • αmGm(x)

  • w1,w2,...,wNm
  • m=1wi=1/N

おもちゃの例のAdaBoost

M=10

ここに画像の説明を入力してください

弱学習器のシーケンスとサンプルの重みを視覚化する

m=1,2...,6

ここに画像の説明を入力してください

最初の反復:

  • これらはwea学習者であるため、決定境界は非常に単純(線形)です。
  • 予想通り、すべてのポイントは同じサイズです
  • 6つの青い点は赤い領域にあり、誤分類されています

2回目の反復:

  • 線形決定境界が変更されました
  • 以前に誤分類された青い点が大きくなり(sample_weightが大きくなり)、決定境界に影響を与えました
  • 9つのブルーポイントが誤分類されるようになりました

10回の反復後の最終結果

αm

([1.041、0.875、0.837、0.781、1.04、0.938 ...

予想どおり、最初の反復は、誤分類が最も少ない係数であるため、最大の係数を持ちます。

次のステップ

勾配ブースティングの直感的な説明-完了予定

ソースと詳細情報:

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.