Tunny Icon
TunnyDocs

The next-gen Grasshopper optimization tool.

PDP

概要

部分依存プロット(Partial Dependence Plot; PDP)は、特定のパラメータが目的関数に与える限界効果を可視化する手法です。 他のパラメータの影響を平均化することで、着目パラメータと目的関数の関係を分離して把握できます。

Tunny Dashboard では、複数のサロゲートモデルで 1D PDP と 2D PDP を計算します。 1D PDP は折れ線グラフ、2D PDP は 3D の応答曲面プロットとして表示します。

種別 入力 出力
1D PDP パラメータ 1 つ、目的関数 1 つ 1 変数の応答曲線
2D PDP パラメータ 2 つ、目的関数 1 つ 2 変数の応答曲面

2D PDP のサロゲートモデル

モデル 速度 品質 適用 N 規模
Ridge 回帰 < 100ms 線形のみ 全規模
Random Forest < 2,000ms 非線形・不連続 全規模
GP-FITC < 10,000ms 滑らか・最高品質(デフォルト GP) 全規模(全 N 点で学習)
GP-VFE < 10,000ms 滑らか・保守的フィット 全規模(GP-FITC が過学習の場合)
GP-MOE < 30,000ms 滑らか・多領域対応 不連続・レジームスイッチ

すべての GP バリアントは egobox-gp / egobox-moe(Apache-2.0)バックエンドを使用し、M = min(N, 100) 誘導点を用います。 N ≤ 100 のとき、FITC/VFE はノイズ推定付き厳密 GP と等価になります。


理論背景

一般的な PDP の定義

モデル f(xS,xC)f(x_S, x_C) について、着目変数の集合 SS と補完変数の集合 C=XSC = X \setminus S を考えます。PDP は次のように定義されます:

fˉS(xS)=ExC[f(xS,xC)]1Nif(xS,xC,i)\bar f_S(x_S) = \mathbb{E}{x_C}[ f(x_S, x_C) ] \approx \frac{1}{N} \sum_i f(x_S, x{C,i})

すべてのトレーニングサンプルに対して x_C を周辺化(平均化)することで、x_S だけの純粋な効果を抽出します。


Tunny Dashboard での計算方法

完全なモンテカルロ評価は N × グリッド数の予測呼び出しが必要になるため、サロゲートモデルを使った近似計算を採用しています。

1D PDP(Ridge 回帰による解析的計算)

1D PDP は全パラメータで Ridge 回帰をフィッティング後、解析的に計算します:

y^=ymean+kβkxkmeankstdk\hat y = y_{\mathrm{mean}} + \sum_k \beta_k \frac{x_k - \mathrm{mean}_k}{\mathrm{std}_k}

パラメータ jj に着目した場合、他のパラメータ kjk\ne j を平均値 meank\mathrm{mean}_k で代入すると:

fˉj(v)=ymean+βjvmeanjstdj\bar f_j(v) = y_{\mathrm{mean}} + \beta_j \frac{v - \mathrm{mean}_j}{\mathrm{std}_j}

上式は、次の完全な式

fˉj(v)=yˉ+βjvμjσj+kjβkE[xkμkσk]\bar f_j(v)=\bar y + \beta_j\frac{v-\mu_j}{\sigma_j} + \sum_{k\ne j}\beta_k,\mathbb{E}\left[\frac{x_k-\mu_k}{\sigma_k}\right]

において、標準化項の平均が E[(xkμk)/σk]=0\mathbb{E}[(x_k-\mu_k)/\sigma_k]=0 となることを使って簡約した形です。 すなわち、Ridge 係数 β_j に比例する線形関数として解析的に表現されます。

2D PDP(複数サロゲートモデルによる計算)

2D PDP は、選択したサロゲートモデルでグリッドを計算します。Random Forest は 30×30、それ以外(Ridge、GP-FITC、GP-VFE、GP-MOE)は 20×20 です:

モデル 計算方法
Ridge 2変数線形平面: y_mean + β₁(v1−mean₁)/std₁ + β₂(v2−mean₂)/std₂
Random Forest CART+Bagging でグリッド各点を予測
GP-FITC ARD Matérn 5/2 GP(egobox-gp、FITC M=min(N,100)、全 N 点で学習)
GP-VFE ARD Matérn 5/2 GP(egobox-gp、VFE 下界、M=min(N,100)、全 N 点で学習)
GP-MOE 混合エキスパート GP(egobox-moe、GMM クラスタリング、最大 K=3 FITC エキスパート)

挙動の詳細

パラメータ型に関する前提

PDP は数値パラメータのみを対象とします。 非数値(カテゴリ)列はグリッド計算上 0.0 として扱われるため、実質的に無視されます。

グリッドの構築

各パラメータの観測値の最小値〜最大値を等間隔にサンプリングしてグリッドを作ります(linspace):

gridj[k]=minj+(maxjminj)kngrid1(k=0,,ngrid1)\mathrm{grid}_j[k] = \mathrm{min}_j + (\mathrm{max}j - \mathrm{min}j) \frac{k}{n{\mathrm{grid}} - 1} \quad (k = 0, \ldots, n{\mathrm{grid}}-1)

グリッド点数は、モデルと次元数(1D/2D)によって異なります。 1D PDP は Ridge が 50 点、それ以外(Random Forest、GP-FITC、GP-VFE、GP-MOE)は 30 点です。 2D PDP は Random Forest が 30×30、それ以外は 20×20 です。

Z スコア標準化

Ridge 回帰前に各パラメータ列を Z スコア標準化します:

xk=xkmeankstdk\tilde x_k = \frac{x_k - \mathrm{mean}_k}{\mathrm{std}_k}k=stdkxkmeank

標準偏差がほぼ 0(定数列)の場合は 1.0 として扱い、ゼロ除算を避けます。

出力形式

2D PDP の応答値は、2 つのパラメータのグリッド点ごとの目的関数の予測値であり、3D サーフェスとして描画されます。

サーフェスに Show data で重ねた観測点にマウスを載せると、パラメータ値と目的値のツールチップが表示されます。 クリックするとトライアル詳細モーダルが開きます(他の 3D 散布図と同じ操作感です)。 同じ条件(モデル種別、パラメータの組み合わせ、目的関数、グリッド数)で再度開いた場合は、キャッシュされた結果がすぐに表示されます。 Study を切り替えるとキャッシュはクリアされます。


R² について

R² は、各サロゲートモデルの訓練データへの適合度を表します:

R2=1i(yiy^i)2i(yiyˉ)2R^2 = 1 - \frac{\sum_i (y_i - \hat y_i)^2}{\sum_i (y_i - \bar y)^2}

  • R² ≈ 1.0: サロゲートモデルがデータをよく説明しており、PDP の信頼度が高いです
  • R² < 0.5: モデルの説明力が低く、PDP は目安程度にとどめます
  • R² が低い場合は、より表現力の高いモデル(滑らかな場合は GP-FITC / GP-MOE、ノイジーな場合は Random Forest / LightGBM)への切り替え、または Spearman / Sobol による感度分析を推奨します

特性・限界

Ridge 回帰(1D PDP・2D PDP デフォルト)

強み: 解析解のため高速です(< 100ms)。外挿しません。R² で信頼度を確認できます。

弱み: 線形のみです。非線形、U 字型、交互作用は捉えられません。

Random Forest

強み: 非線形で不連続な目的関数に対応します。外挿しません。

弱み: 決定木境界のアーティファクト(段差)が現れやすいです。少数サンプルでは不安定です。

GP-FITC(ガウス過程回帰、FITC 近似)

強み: 滑らかな補間です。少数サンプル(N < 50)でも高品質です。ARD で次元重要度を自動推定します。全 N 点で学習します(サブサンプリング不要)。egobox-gp バックエンド(COBYLA 10 点マルチスタート)を使います。デフォルトの GP です。

弱み: N > 100 では M = 100 の誘導点上限でコストを抑えますが、近似誤差が生じます。ノイジーなデータで過学習することがあります。

GP-VFE(Variational Free Energy 近似)

強み: GP-FITC と同じアーキテクチャです。VFE 下界によりノイズ推定がやや保守的になり、フィットがより滑らかになります。GP-FITC の曲面が過学習気味の場合に推奨します。

弱み: GP-FITC よりわずかにフィットが緩いです(参考値であり環境により変動しますが、ノイズなしベンチマークでは GP-FITC よりやや低い R² が観測される傾向があります)。

GP-MOE(混合エキスパート GP)

強み: 不連続、レジームスイッチング、多峰性の応答曲面に対応します。クラスタ数を自動選択します。滑らかな再結合で継ぎ目がありません。GP の不確実性推定を保持します。

弱み: GP-FITC / GP-VFE より学習コストが高いです(おおよそ K 倍)。学習に失敗した場合は GP-FITC にフォールバックします(PDP 時)。


使用場面の目安

2 つのパラメータが目的関数に与える複合的な影響を見たいときは、まず Importance Chart や Sensitivity Heatmap で重要なパラメータを絞り込み、上位 2 パラメータを 3D 応答曲面プロットで可視化するとよいでしょう。

サロゲートモデルの選び方の目安:

  • まず高速に確認したい場合 → Ridge(デフォルト)
  • R² < 0.5 で非線形、ノイジーな場合 → Random Forest または LightGBM
  • 滑らかな補間で最高品質を求める場合 → GP-FITC(全 N 点で学習、デフォルト GP)
  • GP-FITC が過学習気味の場合 → GP-VFE(より滑らかで保守的)
  • 不連続で多領域の応答曲面 → GP-MOE

1D PDP と 2D PDP の比較

項目 1D PDP(折れ線グラフ) 2D PDP(3D サーフェスプロット)
着目変数 パラメータ 1 つ パラメータ 2 つ
可視化形式 折れ線グラフ 3D サーフェスプロット
出力 1 変数の応答曲線 2 変数の応答曲面
サロゲート Ridge / Random Forest / GP-FITC / GP-VFE / GP-MOE(選択可、デフォルト Ridge) Ridge / Random Forest / GP-FITC / GP-VFE / GP-MOE(選択可)
用途 単一パラメータの傾向確認 2 変数の複合効果、最適領域の把握

参考文献

© 2026 hrntsm
Made with Fresh