【べいずさいてきか】

ベイズ最適化 とは?

最終更新:
💡 試した結果と不確かさから、次の候補を選ぶ

過去に試した入力と結果から確率モデルを作り、次に評価する候補を選ぶ最適化の方法。評価に時間や費用がかかる問題に使い、良さそうな候補と不確かな候補を考慮する。機械学習の設定探索は応用例の一つ。

📌 このページのポイント
結果と不確かさから、次の候補を選ぶ過去の入力と結果観測データモデルを作る予測と不確かさ獲得関数で選ぶ次に試す入力有望さ・情報不足実際に評価新しい結果を得るガウス過程を使った予測の模式図評価値(大きいほど良い例)次の候補入力● 観測線:予測平均帯:不確かさ
上段は、観測・モデル・候補選択・実際の評価を繰り返す流れです。下段は説明用に描いたガウス過程の例で実測データではありません。候補の結果は評価するまで不明です。ガウス過程はモデルの一例で、最適解や試行回数の改善を保証しません。
ひよこ ひよこ
ベイズ最適化は、何を探す方法?
ペンギン先生 ペンギン先生
入力を変えたときの結果を見て、良い値を出す入力を探すんだ。例えば学習の設定を変えて性能を比べる場合に使える。実験の条件など、機械学習以外の評価が高価な問題にも使えるよ
ひよこ ひよこ
試していない点は、どうやって考えるの?
ペンギン先生 ペンギン先生
過去の入力と結果から、目的関数を代わりに予測するモデルを作るよ。これをサロゲートモデルと呼ぶ。ガウス過程はその一例で、予測の平均値だけでなく不確かさも扱う。予測は実際の評価結果とは分けるんだ
ひよこ ひよこ
獲得関数って、何をするの?
ペンギン先生 ペンギン先生
次に評価する候補の良さを計算する関数だよ。値を大きくする問題なら、EIは今の最良値からの改善の期待値、UCBは予測平均と重みを付けた不確かさを使う。有望な場所と、まだ情報が少ない場所の両方を考えるんだ
ひよこ ひよこ
Optunaを使えば、必ずこの方法になる?
ペンギン先生 ペンギン先生
Optunaには複数の探索方法があるよ。TPEを使うTPESampler、ガウス過程を使うGPSampler、ランダム探索などから選べる。Optunaという道具の名前と、選んだ探索アルゴリズムを分けて確認しよう
ひよこ ひよこ
ランダムサーチより、必ず少ない試行で成功する?
ペンギン先生 ペンギン先生
保証ではないよ。1回の評価が高価な問題で試行を節約することを目指すけれど、変数の数、モデルの仮定、観測のばらつき、並列実行などが効く。モデルを作る計算時間も含め、予算と問題に合わせて比較するんだ
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ベイズ最適化」って出てきたら「過去の結果と不確かさを使い、次に試す候補を選ぶ方法」と思えばだいたいOK!
📖 おまけ:英語の意味
「Bayesian Optimization」 = ベイズ的な最適化
💬 Bayesianはベイズ推論に基づくという意味だよ。観測した結果を使って目的関数についての確率的な見方を更新し、次の評価に活かすんだ

参考資料

← 用語集にもどる