サロゲートモデル
サロゲートモデルは試行データに関数を当てはめ、密なグリッド上で目的関数を予測して応答曲面(PDP チャート 2D)を可視化します。
モデル比較
| モデル | 速度 | 非線形 | 用途 |
|---|---|---|---|
| Ridge | < 100 ms | なし | 線形な応答、任意の N |
| Random Forest | < 2,000 ms | あり | 非線形 / 不連続 / ノイジー |
| GP-FITC | < 10,000 ms | あり | 滑らかな非線形、任意の N — デフォルト GP |
| GP-VFE | < 10,000 ms | あり | 滑らかな非線形、任意の N — 保守的、より滑らかなフィット |
| GP-MOE | < 30,000 ms | あり | 不連続 / レジームスイッチ / 多峰性 |
GP バリアント(GP-FITC、GP-VFE、GP-MOE)はすべて egobox-gp / egobox-moe(Apache-2.0)を使用し、M = min(N, 100) 誘導点を使います。 N ≤ 100 の場合、数学的にはノイズ推定付きの厳密 GP と等価になります。
Random Forest は LightGBM の Random Forest モードをバックエンドとして使用します。
モデル選択の目安
flowchart TD
shape{"応答の形は?"}
shape -- "線形" --> ridge["Ridge(最速)"]
shape -- "非線形 / ノイジー / 不連続" --> rf["Random Forest<br/>(LightGBM RF バックエンド)"]
shape -- "滑らかな非線形" --> smooth{"滑らかな非線形"}
smooth -- "デフォルト" --> gpfitc["GP-FITC"]
smooth -- "曲面が過学習気味・スパイク状" --> gpvfe["GP-VFE<br/>(より滑らか・保守的)"]
smooth -- "不連続 / 多領域" --> gpmoe["GP-MOE"]
R² の解釈
全モデルが訓練データに対する R² を報告します。 高いほど良いですが、訓練セット R² は過学習で膨らむことがあります。
| R² | 対応 |
|---|---|
| ≥ 0.8 | モデルの当てはまりが良好です;曲面は信頼できます |
| < 0.5 | より表現力の高いモデルへ切り替えます |