ベイズ最適化

ベイズ最適化

執筆済 最適化DFOベイズ最適化

目的関数を確率モデルで近似し、「次にどこを測るべきか」をそのモデルから決める手法。 1 回の評価が高価な問題のために作られている。

2 つの部品#

代理モデル (surrogate model) — これまでの観測から f を推定する。 ガウス過程が標準で、各点について 予測値と不確かさの両方を返すのが要点。

獲得関数 (acquisition function) — 次の測定点を決める指標。 代理モデルの予測から計算され、これを最大にする点を選ぶ。

獲得関数 考え方
EI (Expected Improvement) 現在の最良をどれだけ更新できるかの期待値
UCB (Upper Confidence Bound) 予測値 κ× 不確かさ。κ で探索の強さを調整
PI (Probability of Improvement) 更新できる確率

獲得関数は探索と活用式の上で明示的に足している点が特徴。予測値の項が活用、 不確かさの項が探索にあたる。

高価な評価に向く理由#

獲得関数の最大化そのものは、代理モデル上での最適化なので安い。 本物の f を測るのは 1 反復に 1 回だけ。 「考える時間は惜しまないが、測る回数は惜しむ」という配分になっている。

そのため、f の 1 回の評価がミリ秒で済む問題では割に合わない。 モデルの更新(ガウス過程は観測数 N に対して 𝒪(N3))が 支配的になるため、観測数が数百を超えると重くなる。

使われている場面#

  • 機械学習のハイパーパラメータ探索
  • 材料・化学の実験計画
  • 量子回路のVQEでも、 ショット数を抑えたい場面で検討される

参考文献#

ノート一覧を閉じる