Random Forest
概要
Random Forest サロゲートは
LightGBM(boosting_type=rf)を使った回帰木アンサンブルで応答曲面を予測します。
Ridge では対応できない非線形、不連続、ノイジーな目的関数に有効です。
LightGBM Random Forest モード
LightGBM の RF
モード(boosting_type=rf)は、各木を異なるブートストラップサンプルで学習し、予測を平均します。
デフォルト設定:
| パラメータ | 値 | 説明 |
|---|---|---|
num_iterations |
64 | アンサンブルの木の本数 |
max_depth |
10 | 木の最大深さ |
min_data_in_leaf |
2 | 葉ノードの最小サンプル数 |
bagging_fraction |
0.8 | 1 本の木に使うデータの割合 |
feature_fraction |
0.8 | 1 本の木に使う特徴量の割合 |
seed |
42 | 再現性のための固定シード |
注: PDP(1D/2D)計算時は num_iterations が明示的に 100
に上書きされます(サロゲートモデル本体の経路ではデフォルト値の 64
が使われます)。
PDP の計算
1D と 2D の偏依存プロットは、非対象次元をすべて周辺化する正規の PDP です。 グリッド点ごとに、対象列をその値で固定したすべての訓練行に対してモデルが予測し、平均を PDP 値とします。 2D グリッドでは 50×50 グリッド×N 訓練行を一括バッチ予測します。
R² の見方
R² は訓練データ上の MSE から計算されます(過学習により楽観的になる場合があります)。
| R² | 対応 |
|---|---|
| > 0.7 | 曲面の傾向は概ね信頼できます |
| < 0.5 | GP-FITC への切り替えを検討 |
計算量と性能目標
| N(試行数) | 学習時間の目安 | グリッド予測(50×50) |
|---|---|---|
| 50〜200 | < 100ms | < 50ms |
| 1,000 | < 500ms | < 200ms |
| 5,000 | < 2,000ms | < 500ms |
目標: 2,000ms 以内(UI のローディングスピナーで待機を許容)。
特性と限界
強み:
- 非線形・不連続な目的関数に対応可能
- 外れ値への頑健性が高い(アンサンブル平均により影響が希薄化)
- 特徴量スケーリング不要(決定木は閾値比較のみ)
- LightGBM のヒストグラムベース分割により大 N でも高速
弱み:
- 訓練データの外挿が苦手(データ範囲外では定数値になります)
- Gaussian Process と比べて予測の滑らかさが劣る(階段状の曲面になりやすいです)
- 計算コストは Ridge より大きいです
使用場面の目安
目的関数の形が...
線形に近い ──────────────────────────────────→ Ridge(高速)
非線形・不連続・外れ値あり・ノイジー ────────→ Random Forest(LightGBM RF バックエンド)
滑らかな非線形(デフォルト) ─────────────────→ GP-FITC
不連続・多領域の応答 ────────────────────────→ GP-MOE- 試行数が多い( )場合に効果的
- なら曲面の傾向は信頼できます
参考文献
- Breiman, L. (2001). Random Forests. Machine Learning, 45(1), 5–32. https://doi.org/10.1023/A:1010933404324
- Ke, G. et al. (2017). LightGBM: A Highly Efficient Gradient Boosting Decision Tree. NeurIPS 30. https://proceedings.neurips.cc/paper_files/paper/2017/hash/6449f44a102fde848669bdd9eb6b76fa-Abstract.html