勾配ブースティング

Gradient Boosting

勾配ブースティング(Gradient Boosting)とは、複数の弱学習器(通常は浅い決定木)を逐次的に構築し、前のモデルの誤差を次のモデルが修正していくアンサンブル学習手法です。Kaggleなどのデータサイエンスコンペティションで最も高い実績を持つ手法の一つです。

アルゴリズムの仕組み

勾配ブースティングでは、まず最初の弱学習器で予測を行い、その残差(誤差)を次の弱学習器が学習します。この「残差を学習する」プロセスを繰り返すことで、モデル全体の精度が段階的に向上していきます。

表:勾配ブースティングの要点まとめ
ひとことで言うと前のモデルの誤差そのものを、次のモデルに学習させていく手法。
どこで使う売上予測、与信、離反予測など、表形式データの分析全般。
注意点木の数や深さを増やしすぎると過学習する。早期終了を併用する。

勾配降下法との関連

「勾配」ブースティングと呼ばれるのは、損失関数の勾配(負の方向)に沿って新しい弱学習器を追加していくためです。これにより、任意の微分可能な損失関数を最適化できる柔軟な枠組みとなっています。

図:勾配ブースティングの流れ
1予測を出す最初は平均値など
▶
2残差を計算正解とのズレ
▶
3ズレを学習次の木が残差を予測
▶
4予測に足し込む少しずつ補正
↺ 2〜4を数百回くり返して精度を上げる

代表的な実装

XGBoost、LightGBM、CatBoostが「三大勾配ブースティング実装」として広く使われています。特にLightGBMは大規模データへのスケーラビリティに優れ、実務で非常に人気があります。