古典的機械学習

ブースティング ぶーすてぃんぐ

ブースティングAdaBoost弱学習器アンサンブル学習バイアス低減
ブースティングについて教えて

簡単に言うとこんな感じ!

「前のモデルが間違えたデータに次のモデルが重点的に取り組む」という直列型のアンサンブル手法だよ。弱いモデルを積み重ねて最終的に強いモデルを作る考え方。AdaBoostが発祥で、勾配ブースティング・XGBoostへと進化してきたんだ!


ブースティングとは

ブースティング(Boosting)は、複数の弱学習器(Weak Learner)を逐次的に学習させ、前のモデルの誤りを修正しながら強力なモデルを構築するアンサンブル手法です。

バギングが「独立したモデルの並列学習」なのに対し、ブースティングは「前の結果に依存した直列学習」です。


主要なブースティング手法

手法発表年特徴
AdaBoost1995誤分類データの重みを増やす
Gradient Boosting1999勾配(残差)を最小化する木を追加
XGBoost2014正則化・並列化を加えた高速実装
LightGBM2017Leaf-wise成長による超高速化
CatBoost2017カテゴリ変数対応を強化

AdaBoostの仕組み

1. 全データを等しい重みで初期化(重み = 1/n)

2. 弱学習器(浅い決定木)を学習

3. 誤分類したデータの重みを増やす
   (次の学習器はこのデータに集中させる)

4. 学習器の性能に基づいて重みを計算

5. 指定回数繰り返す

最終予測:各学習器の予測を重み付き多数決

バギングとの違い

比較項目バギングブースティング
学習の順序並列(独立)直列(依存)
目的分散低減バイアス低減
過学習リスク低いやや高い(調整が必要)
データの扱い同等誤分類を重視

歴史と背景

  • 1990年:Schapireが「弱学習器を強学習器にブーストできる」という理論を証明
  • 1995年:Freund & SchapireがAdaBoostを発表。ブースティングの実用化
  • 1999年:FriedmanがGradient Boostingを提案
  • 現在:勾配ブースティングがKaggleをはじめ多くの実務タスクで最高性能

関連用語