AIの基礎
グラディエントブースティングとは?
データサイエンスの競技で非常に有用であることが証明された機械学習モデルの1種は、グラディエントブースティングモデルです。 グラディエントブースティング は、基本的に弱い学習モデルを強い学習モデルに変換するプロセスです。 しかし、実際にはどうやってこれが達成されるのでしょうか? グラディエントブースティングアルゴリズムを詳しく見てみましょう。また、グラディエントブースティングモデルが弱い学習者を強い学習者に変換する方法をより深く理解しましょう。
グラディエントブースティングの定義
この記事では、グラディエントブースティングが何であるかを、数学的な詳細を省略して説明します。 グラディエントブースティングが高レベルでどのように機能するかを理解した後、グラディエントブースティングが可能になる数学をより深く理解することができます。
「ブースティング」することを定義してみましょう。 弱い学習者は、学習モデルの特性を調整することで強い学習者に変換されます。 どの学習アルゴリズムがブースティングされているのでしょうか?
ブースティングモデルは、別の一般的な機械学習モデルである 決定木 を拡張することによって機能します。
決定木 モデルは、データセットを小さな部分に分割し、サブセットをさらに分割できないとき、ノードと葉を持つ木が生成されます。 決定木のノードは、さまざまなフィルタリング基準を使用してデータポイントについて決定が行われる場所です。 決定木の葉は、分類されたデータポイントです。 決定木アルゴリズムは、数値データとカテゴリデータの両方を処理でき、木の分割は特定の変数/機能に基づいて行われます。

ブースティングモデルがトレーニングされる方法のイラスト。
Photo: SeattleDataBuy via Wikimedia Commons, CC 4.0 (https://commons.wikimedia.org/wiki/File:Boosting.png)
ブースティングアルゴリズムの1種は、 AdaBoostアルゴリズム です。 AdaBoostアルゴリズムは、決定木モデルをトレーニングし、各観測値に等しい重みを割り当てから始めます。 最初の木が精度のために評価された後、さまざまな観測値の重みが調整されます。 分類が容易な観測値の重みは低下し、分類が困難な観測値の重みは増加します。 調整された重みを使用して2番目の木が作成され、2番目の木の予測が1番目の木の予測よりも正確になることを目指します。
モデルは、元の木と新しい木 (または木 1 + 木 2) の予測で構成されます。 新しいモデルの分類精度は再び評価されます。 モデルの計算されたエラーに基づいて3番目の木が作成され、重みが再び調整されます。 このプロセスは、指定された数のイテレーションにわたって続行され、最終的なモデルは、前に構築されたすべての木の予測の加重合計を使用するアンサンブルモデルになります。
上記の説明では、決定木と基本予測モデル/モデルの使用が説明されていますが、ブースティングアプローチは、多くの標準的な分類器および回帰モデルなどの幅広いモデルで実行できます。 重要な概念は、後続の予測モデルが前のモデルが犯したミスの学習を実行し、予測モデルが順番に作成されることです。
ブースティングアルゴリズムの主な利点は、他の機械学習モデルの予測を取得するのに比べて時間が短いことです。 ただし、ブースティングアルゴリズムを使用する際には注意が必要です。オーバーフィッティングの傾向があるからです。
グラディエントブースティング
ここで、最も一般的なブースティングアルゴリズムの1つを見てみましょう。 グラディエントブースティングモデル (GBM) は、高い精度で知られており、AdaBoostで使用されている一般的な原則を拡張しています。
グラディエントブースティングモデルとAdaBoostの主な違いは、GBMが学習者がデータポイントを誤って識別している場所を計算するために異なる方法を使用することです。 AdaBoostは、重みの付いたデータポイントを調べることでモデルがどこで低性能であるかを計算します。一方、GBMは損失関数をモデルに適用して学習者の精度を決定します。 損失関数は、モデルがデータセットに適合する精度を測定する方法であり、エラーを計算し、エラーを最小限に抑えるようにモデルを最適化します。 GBMにより、ユーザーは目的の目標に基づいて指定された損失関数を最適化できます。
最も一般的な損失関数である 平均二乗誤差 (MSE) を例に挙げてみましょう。 勾配降下法 は、事前に定義された学習率に基づいて予測を更新するために使用され、損失が最小になる値を見つけます。
より明確に説明すると:
新しいモデル予測 = 出力変数 – 古い不完全な予測。
より統計的な意味では、GBMはモデルの残差内の関連パターンを見つけ、モデルの適合を改善するためにモデルを調整し、残差をできるだけ 0 に近づけることを目指します。 モデルの予測を回帰分析すると、残差は 0 (完全な適合) 周囲に分布し、GBM は残差内のパターンを見つけ、モデルをこれらのパターンに基づいて更新します。
言い換えると、予測は、残差の合計が 0 にできるだけ近づくように更新されます。つまり、予測値は実際の値に非常に近くなります。
注: 他の損失関数 (ログ損失など) も GBM で使用できます。 上記では、MSE が使用されていますが、単純さのために選択されています。
グラディエントブースティングモデルのバリエーション
グラディエントブースティングモデルは、貪欲アルゴリズムであり、データセットでオーバーフィッティングする傾向があります。 これは、グラディエントブースティングモデルのパフォーマンスを向上させることができる 数種類の方法 で防ぐことができます。
GBM は、4 つの異なる方法で規制できます: シャンク、ツリーの制約、ストキャスティック勾配ブースティング、ペナルティ付き学習。
シャンク
GBM では、予測は順番に合計されます。 「シャンク」では、合計に追加される各木の追加が調整されます。 学習率を遅くする重みが適用され、モデルがロバスト性とパフォーマンスを向上させるために、より多くの木がモデルに追加される必要があります。 ただし、モデルがトレーニングされるのに時間がかかります。
ツリーの制約
ツリーをさまざまな調整 (ツリーの深さの追加、ツリー内のノードまたは葉の数の増加など) で制限することで、モデルがオーバーフィッティングするのを困難にできます。 分割ごとの最小観測値の数に制限を加えることも同様の効果があります。 ただし、モデルがトレーニングされるのに時間がかかります。
ランダムサンプリング
個々の学習者は、トレーニングデータセットのランダムに選択されたサブサンプルに基づいて、確率的プロセスを使用して作成できます。 これにより、ツリー間の相関が低減され、オーバーフィッティングが防止されます。 データセットは、ツリーを作成する前にサブサンプリングできます。 または、ツリー内で分割を考慮する前にサブサンプリングできます。
ペナルティ付き学習
ツリー構造を制限すること以外に、回帰ツリーを使用することもできます。 回帰ツリーには、葉ごとに数値値が付与され、L1 および L2 正則化などの一般的な正則化関数で調整できます。












