LightGBMのハイパーパラメータ調整を理論面から考える

はじめに

結構前に書いた記事で、XGBoostとLightGBMの理論という記事を書いたかと思います。

tomtom58.hatenablog.com

この記事に、LightGBMはハイパーパラメータの調整をしっかり行わないと、過学習のリスクが高いということを述べたと思います。それはLightGBMの理論的背景によるところが大きいという話をしたかなと思います。ということで今回は、LightGBMのハイパーパラメータ調整をLightGBMの理論的背景から考えてみようということをやっていこうと思います。では内容にはいっていきましょう。

理論面から考えるLightGBMのハイパーパラメータ調整

学習制御に関する基本パラメータの理論

まず、モデルの学習過程を制御する基本的なパラメータについて考えます。学習率と反復回数の関係は以下の式で表現されます。

F_m(x) = F_{m-1}(x) + \eta\sum_{j=1}^J \gamma_{jm}I(x \in R_{jm})
ここで、F_m(x)m回目の反復後のモデル、\etaは学習率、\gamma_{jm}は各領域での予測値、R_{jm}は領域を表します。この式から、学習率\etaと反復回数mには反比例の関係があることがわかります。

学習率の設定は、山登りに例えることができます。大きな学習率は大きな歩幅で登る戦略で、素早く頂上付近に到達できますが、最適地点を見逃すリスクがあります。一方、小さな学習率は慎重な歩みを表し、より正確に最適地点を見つけられますが、到達までに多くの時間(反復)が必要となります。

木の構造に関するパラメータの最適化

木の構造を制御するパラメータ間の関係は、以下の不等式で表現されます。

\text{num_leaves} < 2^{\text{max_depth}} \cdot \alpha
この式で、\alphaは1未満の調整係数です。理論上の最大値(2^{\text{max_depth}})よりも小さい値に設定することで、過学習を防ぎつつ効率的な学習が可能になります。

データ量と木の構造の理論的関係

特定のノードでの分割を決定する際の統計的な信頼性は、以下の式で表現されます。

P(\text{Err}(N) \leq \epsilon) \geq 1 - 2\exp(-2|N|\epsilon^2)
ここで、\text{Err}(N)はノードNでの推定誤差、\epsilonは許容誤差を表します。この式は、min_data_in_leafパラメータの理論的な下限を示唆しています。
これは、世論調査における標本数の考え方に似ています。各葉でより確実な予測を行うためには、十分なデータ量が必要です。データセットの総サイズをnとすると、min_data_in_leafの適切な値は以下の関係を満たすべきとされています。
\text{min_data_in_leaf} \geq c\sqrt{n}
ここで、cは問題の複雑さに応じた定数です。この制約により、統計的に信頼できる分割が保証されます。

正則化パラメータの理論的設定

正則化の強さを決定するlambdaパラメータは、以下の理論式に基づいて設定します。

\lambda_{\text{opt}} = \frac{\sigma^2}{n\text{Var}(w)}
ここで、\sigma^2はノイズの分散、\text{Var}(w)は重みの分散、nはデータ数を表します。この式は、データのノイズレベルとモデルの複雑さのバランスを取る最適な正則化強度を示しています。

これは、料理における調味料の調整に似ています。材料(データ)の質や量に応じて、適切な調味料(正則化)の量を決定する必要があります。新鮮な材料(クリーンなデータ)ならば控えめに、そうでない場合はより積極的な調整が必要となります。

最適化の優先順位

理論的な影響度に基づいて、以下の順序でパラメータを調整することが推奨されます。

\text{Impact} = \frac{\partial \text{Loss}}{\partial \theta} \cdot \Delta\theta
この式で、\thetaは各ハイパーパラメータ、\Delta\thetaはその調整範囲を表します。影響度の大きさに基づき、まずnum_leaves、max_depth、min_data_in_leafなどの木の構造に関するパラメータを調整し、その後learning_rateやlambdaなどの学習制御パラメータを最適化することが効果的です。

学習の収束と早期停止の理論

学習の収束過程は、以下の理論式で特徴付けられます。

\mathbb{E}[L(F_m)] - L(F^*) \leq \frac{C}{\sqrt{m}} + \gamma \sum_{k=1}^m \|w_k\|^2
ここで、L(F_m)m回目の反復後の損失、F^*は理論的な最適モデル、Cは定数、\gamma正則化係数、\|w_k\|^2k番目の木の重みのL2ノルムを表します。

この式は、マラソンランナーのペース配分に似ています。最初は大きく損失が減少し(速いペース)、徐々に改善幅が小さくなっていきます(ペースダウン)。この理論に基づき、early_stopping_roundsは以下の基準で設定することが推奨されます。

\text{early_stopping_rounds} \geq \lceil \log(\epsilon^{-1})/\log(1 + \eta) \rceil
ここで、\epsilonは許容する改善の最小値、\etaは学習率を表します。この式は、有意な改善が見込めなくなるまでの理論的な反復回数を示しています。

バギング関連パラメータの理論的設定

feature_fractionとbagging_fractionのバランスは、以下の式で表現されます。

\text{Var}(\hat{f}) = \rho\sigma^2 + \frac{1-\rho}{B}\sigma^2
ここで、\rhoは特徴量間の相関、Bはバギングの回数、\sigma^2は予測の分散を表します。この式は、特徴量のサブサンプリングとデータのバギングによる分散削減効果を示しています。

これは、料理人が複数の調理方法を組み合わせる際の考え方に似ています。各調理法(特徴量)の特性と、材料の使い方(データのサンプリング)のバランスを取ることで、より安定した結果を得ることができます。

GOSSに関連するハイパーパラメータの理論

GOSSのサンプリング戦略を制御するパラメータは、理論的に以下の式で表される情報利得の計算に直接影響を与えます。

\tilde{V}_j(d) = \frac{1}{n} \left( \frac{\sum_{i \in A_l} g_i + \frac{1-a}{b}\sum_{i \in B_l} g_i}{\sqrt{|A_l| + |B_l|}} + \frac{\sum_{i \in A_r} g_i + \frac{1-a}{b}\sum_{i \in B_r} g_i}{\sqrt{|A_r| + |B_r|}} \right)
この式において、aは`top_rate`、bは`bagging_fraction`として直接パラメータ化されています。また、`other_rate`は\frac{1-a}{b}の調整に影響を与えます。

これらのパラメータの相互作用は、水の濾過システムに例えることができます。top_rateは最初のフィルター(大きな勾配を持つ重要なインスタンスの保持)の目の粗さを、bagging_fractionother_rateは二次フィルター(残りのインスタンスのサンプリング)の特性を決定します。理論的な最適値は以下の式で示される条件を満たす必要があります。

\frac{\text{Var}(\tilde{V}_j)}{\text{Var}(V_j)} \leq \epsilon \text{ where } \epsilon = f(a, b)
ここで、\text{Var}(\tilde{V}_j)はサンプリング後の分散、\text{Var}(V_j)は元の分散、f(a, b)はパラメータから決定される上限を表します。

EFBに関連するハイパーパラメータの理論

EFBのバンドル化プロセスは、以下の最適化問題として定式化されます。

\min_{c} |{c(v) : v \in V}| \text{ subject to } \sum_{k=1}^K \text{bin}(f_k) \leq M
ここで、\text{bin}(f_k)は特徴kのビン数、Mは`max_bin`で指定される上限を表します。`min_data_in_bin`は各ビンの統計的信頼性を保証するための制約として機能します。

特徴量の選択プロセスは、以下の理論式に基づいて制御されます。

P(\text{select}(f) | \text{bundle}(B)) = \frac{\text{feature\_fraction}}{\sqrt{|B|}}
この式で、\text{select}(f)は特徴fの選択、\text{bundle}(B)はバンドルBの形成を表し、`feature_fraction`と`feature_fraction_bynode`がこの確率を直接制御します。

これは図書館の書籍整理に例えることができます。max_binは各棚(バンドル)の収容能力を、min_data_in_binは各セクション(ビン)に必要な最小書籍数を、feature_fractionfeature_fraction_bynodeは書籍の分類方法と配置戦略を決定します。カテゴリカル特徴の処理にはcat_smoothが関与し、以下の式で表される平滑化を行います。

\hat{p}(y|x) = \frac{n(x,y) + \alpha}{n(x) + \alpha K}
ここで、n(x,y)は特徴値xでラベルyを持つデータ数、Kはカテゴリ数、\alphaは`cat_smooth`パラメータを表します。

最後に

目新しい記事をと思い、理論面からLightGBMのハイパーパラメータチューニングに関しての記事を書いてみました。どうしてLightGBMなのかというと、ハイパーパラメータチューニングが特に重要なモデルだからです。
LightGBMでハイパーパラメータチューニングが重要な理由は、主にモデルの構造と学習戦略に起因します。
特に重要な理論的背景として、LightGBMはleaf-wiseな木の成長戦略を採用しています。この戦略は各イテレーションで最大の損失減少を持つ葉を選択して分割を行いますが、この過程で木が非対称的に深くなりやすい性質があります。これは複雑なパターンの捕捉能力を向上させる一方で、過学習のリスクを高める要因となっています。
また、GOSSによるサンプリング戦略も重要な要素です。GOSSは勾配の大きいインスタンスを優先的に選択し、残りをランダムサンプリングすることで計算効率を向上させています。しかし、このサンプリング比率が不適切な場合、データの分布を正確に反映できなくなる可能性があるというわけです。
さらに、EFB(Exclusive Feature Bundling)による特徴量の次元削減も、適切なパラメータ設定が必要です。EFBは疎な特徴空間において互いに排他的な特徴をバンドルすることで計算効率を向上させますが、過度な特徴量のバンドル化は情報損失につながる可能性があります。
というわけで、LightGBMにおいては、ハイパーパラメータチューニングが重要だというわけです。
最後までお読みいただきありがとうございます。