メインコンテンツへスキップ
どのハイパーパラメータがもっとも良い予測因子であり、かつ望ましいメトリクス値と強く相関していたかを確認できます。
パラメータ重要度パネル
Correlation(相関) は、ハイパーパラメータと選択したメトリクス(この例では val_loss)との線形相関です。相関が高いということは、ハイパーパラメータの値が高いときにメトリクスの値も高くなり、その逆も成り立つことを意味します。相関は参照すべき優れたメトリクスですが、入力間の二次の相互作用を捉えられず、スケールが大きく異なる入力同士を比較すると煩雑になることがあります。 そのため W&B は importance(重要度) メトリクスも計算します。W&B はハイパーパラメータを入力、メトリクスをターゲット出力としてランダムフォレストを学習し、そのランダムフォレストの特徴量の重要度を算出します。 この手法のアイデアは、ランダムフォレストの特徴量の重要度を用いてハイパーパラメータ空間を探索する手法を開拓した Fast.aiJeremy Howard 氏との議論から着想を得たものです。この分析の背景にある考え方をさらに学ぶには、この講義(およびこれらのノート)を確認することを W&B は強く推奨します。 ハイパーパラメータ重要度パネルは、高い相関を持つハイパーパラメータ同士の複雑な相互作用を解きほぐします。これにより、モデルの性能を予測するうえでどのハイパーパラメータがもっとも重要かを示すことで、ハイパーパラメータ探索をより細かく調整するのに役立ちます。

ハイパーパラメータ重要度パネルの作成

  1. W&B のプロジェクトに移動します。
  2. Add panels ボタンをクリックします。
  3. CHARTS ドロップダウンを展開し、Parallel coordinates を選択します。
空のパネルが表示された場合は、runs がグループ化されていないことを確認してください
パラメータの自動可視化
Parameter manager を使うと、表示するパラメータと非表示にするパラメータを手動で設定できます。
表示フィールドと非表示フィールドの手動設定

ハイパーパラメータ重要度パネルの読み方

特徴量重要度の分析
このパネルでは、学習スクリプト内で wandb.Run.config オブジェクトに渡されたすべてのパラメータが表示されます。さらに、選択したモデルの評価指標(この例では val_loss)に対して、これらの config のパラメータの特徴量重要度と相関が表示されます。

重要度

「importance」列には、選択したメトリックを予測するうえで、それぞれのハイパーパラメータがどの程度有用だったかが示されます。多数のハイパーパラメータのチューニングを始めて、このプロットを使い、どれがさらに詳しく探索する価値があるかを絞り込むシナリオを想像してください。その後の Sweeps では、最も重要なハイパーパラメータだけに対象を限定できるため、より良いモデルを、より速く、より低コストで見つけられます。
W&B は、線形モデルではなくツリーベースのモデルを使って重要度を計算します。ツリーベースのモデルのほうが、カテゴリカルデータや正規化されていないデータの両方をより適切に扱えるためです。
前の画像では、epochs, learning_rate, batch_size および weight_decay がかなり重要だったことがわかります。

相関

相関は、個々のハイパーパラメータとメトリクス値との間の線形な関係を捉えます。これは、たとえば SGD オプティマイザのようなハイパーパラメータを使用することと val_loss との間に有意な関係があるかどうかという問いに答えます(この例では「はい」です)。相関係数は -1 から 1 の範囲をとり、正の値は正の線形相関、負の値は負の線形相関、0 は相関がないことを表します。一般的に、どちらの方向でも 0.7 を超える値は強い相関を示します。 このグラフを使って、メトリクスとより高い相関を持つ値をさらに詳しく調べることができます(この場合、rmsprop や nadam よりも stochastic gradient descent や adam を選ぶかもしれません)。あるいは、より多くのエポックで学習することも検討できます。
  • 相関は関連の証拠を示すものであり、必ずしも因果関係を示すものではありません。
  • 相関は外れ値に敏感であり、特に試したハイパーパラメータのサンプル数が少ない場合、強い関係を中程度の関係に見せてしまう可能性があります。
  • 最後に、相関はハイパーパラメータとメトリクスの間の線形な関係のみを捉えます。強い多項式的な関係があっても、相関では捉えられません。
重要度と相関の差異は、重要度がハイパーパラメータ同士の相互作用を考慮している一方で、相関は個々のハイパーパラメータがメトリクス値に与える影響だけを測定している、という事実に起因します。さらに、相関は線形な関係のみを捉えるのに対して、重要度はより複雑な関係も捉えることができます。 ご覧のとおり、重要度と相関はどちらも、ハイパーパラメータがモデル性能にどのように影響するかを理解するうえで強力なツールです。