本記事は、miLabにおける英文記事(Key Concepts in Bayesian Optimization: Acquisition Functions)の日本語翻訳版です。

ベイズ最適化における獲得関数の役割

ベイズ最適化において、獲得関数は未知の目的関数空間で効率的に最適解を探索するためのガイドとして重要な役割を果たします。ベイズ最適化の中心的な考え方は、代理モデルを用いて目的関数をモデル化することです。この確率モデルは、任意の点で関数値の平均と分散を予測し、関数の挙動の推定値と不確実性の尺度の両方を提供します。

獲得関数は、この確率モデルを利用して次に評価すべき点を決定します。この際、高い不確実性を持つ領域をサンプリングする「探索」と、現時点で高い値が期待される領域をサンプリングする「活用」のバランスを取ることが求められます。獲得関数は、最適化プロセスが次にサンプルすべき位置を指し示すヒューリスティックとして機能し、最適解を見つけるために必要な評価回数を最小化することを目指しています。

ベイズ最適化で次の入力点を選択するプロセスは、獲得関数を最大化する入力点を見つけることに相当します。

探索と活用のバランス

探索と活用のトレードオフは、獲得関数にとって重要な概念です。

活用は、現在の知識(データ)に基づき、有望とされる領域に焦点を当てて高い成果が期待される点をサンプリングすることを指します。この戦略により、既知の最良の結果を迅速に改善することが期待されます。しかし、活用に偏りすぎると、十分に探索されていない領域に存在する可能性のある、より優れた解を見逃してしまうリスクもあります。

一方、探索は、不確実性が高く、モデルがまだ十分に情報を持っていない領域でサンプリングを行うことを意味します。このアプローチは、現在の知識に基づいて必ずしも有望に見えない領域であっても、より良い解が存在する可能性を発見するのに役立ちます。しかし、探索に偏りすぎると、価値が低い領域での無駄な評価が増えてしまう可能性があります。

効果的な獲得関数は、これら二つのアプローチをバランス良く組み合わせ、期待される高い結果を狙う(活用)か、もしくは有益な情報を得るためのサンプリング(探索)を戦略的に選択します。

これを具体的に表した例として、「EI(Expected Improvement)」と呼ばれる獲得関数を見ていきましょう。

獲得関数としてのEI(Expected Improvement)

期待改善量(Expected Improvement, EI)とよばれる獲得関数は、現在の最良値を基準にどの程度の改善が期待できるかを見積もることで、ベイズ最適化における最適解の探索を導きます。

EIは大まかに言えば、活用と探索の二つの戦略を組み合わせるように設計されており、それぞれに対応する二つの要素を加算して構成されます。活用の要素は、予測される値が現在のデータでの最良値を上回る場合に高い値を持ち、有望な領域に重点を置いています。一方、探索の要素は、モデル内での不確実性が高い場所で高い値を持ち、未探索の領域を試みることを促進します。この二つの要素が合わさることで、活用と探索のバランスが取れたトレードオフが生まれます。

このトレードオフにより、EIを獲得関数として使用するベイズ最適化は計算効率が高く、必要な評価回数が少なくて済む一方で、戦略的な探索も行えるようになります。

制約と考慮すべき事項

EI 獲得関数は、効率的でバランスの取れた探索戦略で広く利用されていますが、その性能に影響を与える制約と注意点も存在します。

  • 不適切なモデルによる過剰な探索:探索空間全体で不確実性が一貫して高い問題では、EIは探索を過剰に重視する傾向があり、期待される価値の低い領域における評価が過度に行われる場合があります。これは代理モデルがデータを正確にモデル化できていないときに発生しやすく、獲得関数は良好なモデルがあって初めて効果を発揮するため、代理モデルの精度が重要です。
  • 局所解への早期収束による活用バイアス:変動が大きい関数では、EIが既知の高値領域を過度に活用し、局所最適に早期収束するリスクがあります。このような場合、探索と活用のバランスを調整するために、獲得関数の重み付けをチューニングすることでバイアスを緩和できます。
  • 現在の最良解への依存性:EIは既知の最良結果に大きく依存しています。この値が最適でない場合や不正確に評価されている場合、EIは期待される価値の低い領域に注力してしまう可能性があります。そのため、データ内での最良値を可能な限り正確に評価することが重要です。また、データのノイズを考慮した別の獲得関数戦略を使用することで、この制約を緩和することも可能です。

これらの制約は、EIが多用途であるものの、問題の複雑さや次元に応じて慎重なチューニングや代替の獲得関数が必要になることを示しています。

まとめ

獲得関数は、評価回数を最小限に抑えるためのサンプリング決定を導くことで、効率的なベイズ最適化を実現する上で不可欠な役割を果たします。特にEI獲得関数は、不確実性の高い領域の探索と、高い可能性を持つ領域の活用をバランス良く行い、最適解に効率的に近づくことが可能です。ベイズ最適化における獲得関数の適切な選択は、複雑な関数を少ない評価回数と最小限のリソースで最適化することを支援します。