Tunny Icon
TunnyDocs

The next-gen Grasshopper optimization tool.

ARD

概要

ガウス過程(GP)サロゲートを ARD(Automatic Relevance Determination, 自動関連度決定)カーネルで学習すると、入力次元ごとに 1 つの長さスケールハイパーパラメータが得られます。 この長さスケールの相対的な大きさは、応答曲面が各パラメータにどれだけ敏感かを表す、軽量な大域的指標です。

ダッシュボードでは、Importance チャートの ARD 手法として提供します。 選択すると、対象の目的に GP-FITC サロゲートを学習し、パラメータごとの関連度を表示します。 その GP の検証 R² も併記するため、スコアをどこまで信頼してよいかの目安になります。

PDP が「パラメータを動かすと応答が どう 変わるか」を示すのに対し、本指標はパラメータごとの平滑さに基づく感度をスカラー 1 つで与えます。 両者は互いを補完します。

  • GP-FITC の学習に基づきます。混合エキスパート(GP-MOE)はエキスパートごとに長さスケールを持ち、集約が一意に定まりません。また Ridge と LightGBM は長さスケールを持ちません。これらのモデルでは ARD 重要度を算出できません。

算出方法

ARD 重要度は通常の GP 学習の副産物であり、専用の感度計算は行いません。

  1. データの組み立て。 数値パラメータ列(およびラベル符号化したカテゴリ列)を入力行列 XX、選択した目的を目標 yy とします。入力は min-max で [0,1]d[0,1]^d にスケールし、単位の異なるパラメータ間で次元ごとのハイパーパラメータを比較できるようにします。
  2. GP-FITC サロゲートの学習。 ARD Matérn 5/2 カーネルで (X,y)(X, y) を学習します。

k(x1,x2)=σf2(1+5r+5r23)exp(5r),r2=d(x1,dx2,dd)2k(x_1, x_2) = \sigma_f^2 \left(1 + \sqrt{5},r + \frac{5r^2}{3}\right) \exp(-\sqrt{5},r), \qquad r^2 = \sum_{d} \left(\frac{x_{1,d} - x_{2,d}}{\ell_d}\right)^2

カーネルは入力次元ごとに 1 つの長さスケール d\ell_d を持ちます。 この次元ごとの自由度が「ARD」の意味するところです。 長さスケール {d}{\ell_d} は、信号分散 σf2\sigma_f^2、ノイズ分散 σn2\sigma_n^2 とともに、FITC 周辺尤度の下界を最大化して同時に推定されます(egobox-gp、勾配不要の COBYLA 多点スタート)。 これはサロゲート最適化が実行するのと同じ学習工程です。 誘導点、FITC 下界、最適化の詳細は ガウス過程 を参照してください。 長さスケールは手で与えるのではなく、$y$ を最もよく説明する値が選ばれます。 だからこそ関連度の指標になります。 目的がほとんど反応しないパラメータは長い(ほぼ平坦な)長さスケールへ、影響の大きいパラメータは短い長さスケールへと押しやられます。

  1. ARD パラメータの読み出し。 学習後、egobox は次元ごとの相関パラメータ θ=(θ1,,θd)\theta = (\theta_1, \dots, \theta_d) を学習済みカーネルから追加計算なしで公開します。$\theta$ と長さスケールの対応は次節で説明します。
  2. 重要度への正規化。 合計が 1 になるよう正規化します(下記 重要度の式 を参照)。

ダッシュボードは、スコアの隣に学習済み GP の交差検証 R2R^2 も表示します。 ARD 関連度は、サロゲートが実際にデータへ当てはまって初めて意味を持ちます。 R2R^2 が低い場合は、ランキングを慎重に扱ってください。

ARD 長さスケールと θ の規約

本ダッシュボードは egobox-gp の Matérn 5/2 ARD カーネルを使います。 カーネルは入力次元ごとの ARD 相関パラメータ θ=(θ1,,θd)\theta = (\theta_1, \dots, \theta_d) を公開します。 これは正規化入力(各パラメータを min-max で [0,1][0,1] にスケール)上で学習されます。 入力を正規化することで、物理単位の異なるパラメータ間でも θd\theta_d を比較できるようにしています。

egobox / SMT のパラメータ化では、$\theta_d$ は長さスケール d\ell_d と反比例の関係にあります。

θd1d2\theta_d \propto \frac{1}{\ell_d^2}

したがって θd\theta_d が大きいほど、次元 dd の長さスケールは短くなります。 これは、その軸に沿って曲面が速く変化すること、すなわちパラメータ dd により敏感であることを意味します。

重要度の式

重要度は合計が 1 になるよう正規化した θ\theta です。

importanced=θdk=1dθk\operatorname{importance}d = \frac{\theta_d}{\sum{k=1}^{d} \theta_k}

総和が非正の場合、または θd\theta_d に非有限値が含まれる場合は、重要度を表示しません。 θ\theta は GP の入力列順(パラメータ名と同じ順序)でインデックスされるため、$\operatorname{importance}_d$ はパラメータ dd に直接対応します。

解釈と注意点

  • 値が大きいほど、そのパラメータに沿って応答曲面が急峻に、あるいはうねって変化します(関連度が高い)。値が小さいほど、その軸方向ではほぼ平坦です。
  • これは学習済みカーネルに由来する、大域的で平滑さに基づく感度であり、分散分解(Sobol)でも局所効果(SHAP)でもありません。GP の当てはまりに対する関連度を測るため、GP 自体の信頼性(検証 R2R^2)に依存します。
  • 正規化した [0,1][0,1] 入力上で計算するため、物理単位あたりではなく、正規化レンジ単位あたりの感度を表します。
  • 素早いスクリーニングに使い、形状は PDP で、交互作用が重要なら分散ベースの手法(Sobol)で確認してください。

関連ページ: PDPSobolSurrogate Optimizer(同じ GP 系を応答曲面の最適化に用います)。

参考文献