第3話
ベイズ最適化
総当たりをやめる数学
少ない実験回数で当たりを引く「賢い手抜き」。代理モデルと獲得関数を、カレー作りでたとえて解説。
この動画で話すこと
味見に1回3時間かかるカレー。1万通りの配合から、いちばんおいしい1つを探すには? 少ない回数で当たりを引く「ベイズ最適化」を、代理モデル・活用と探索・獲得関数の順に、実際に計算した地形で見せます。
章
- 味見は1回3時間
- 今日の現在地
- 代理モデル:地形を想像で描く
- 活用と探索、獲得関数
- 21回で頂上へ
- 実績:AlphaGo の調整
- 弱点と、人間の仕事
- 次に見るなら
- 応援のお願い
ナレーション全文
究極のカレーを作りたい。スパイスは2種類、配合は自由。ただし、味見は1回3時間かかります。
全部の組み合わせを試す? 100通りずつで、1万回。3万時間。3年半、寝ずにカレーを煮込むことになります。
研究や開発の現場は、だいたいこの状態です。そこで登場するのが、ベイズ最適化。少ない回数で当たりを引く、賢い手抜きの技術です。
相手は、中身の見えないブラックボックス。配合を入れると、おいしさの点数だけが返ってきます。式も、ヒントも、ありません。
そこでまず、数回だけ試します。そしてその結果から、全体の地形を、想像で描く。これが代理モデルです。
ポイントは、自信のなさも一緒に描くこと。試した場所の近くは、くっきり。遠い場所は、霧の中。
「分かりません」と、正直に言えるモデルなんです。会議で知ったかぶりをする誰かとは、違います。
では次に、どこを試すか。今いちばん良さそうな場所を攻める「活用」。まだ誰も知らない霧の中に踏み込む「探索」。
いつもの店に行くか、新しい店を開拓するか。人生でおなじみの、あの悩みです。
ベイズ最適化は、これを獲得関数という1つの点数にまとめます。伸びしろの期待が、いちばん大きい場所。そこが、次の一手です。
試す。地形を描き直す。次を選ぶ。これを繰り返すと…
霧が晴れるのは、頂上のまわりだけ。どうでもいい場所は、霧のまま放っておく。この割り切りが、速さの正体です。
1万通りのうち、試したのは、たった21回。3年半のカレー修行が、3日足らずで終わりました。
実績もあります。囲碁AIのAlphaGo。その調整にベイズ最適化を使ったところ、自己対戦の勝率が、50%から66.5%に上がりました。
いまでは、機械学習の設定さがしから、電池や薬の材料開発まで。高くつく実験がある場所なら、どこでも出番があります。
ただし、弱点もあります。調整するつまみが何十個にも増えると、霧が深すぎて、苦しくなります。
そして、何を「おいしい」とするか。それを決めるのは、あいかわらず、人間の仕事です。
出典・参考
- Jones, Schonlau, Welch, "Efficient Global Optimization of Expensive Black-Box Functions", J. Global Optim. 13, 455 (1998)
- Snoek, Larochelle, Adams, "Practical Bayesian Optimization of Machine Learning Algorithms", NeurIPS (2012)
- Chen et al., "Bayesian Optimization in AlphaGo", arXiv:1812.06855 (2018) https://arxiv.org/abs/1812.06855
- 動画の中の地形・霧・次の一手は、ガウス過程と期待改善量を実際に計算した結果です(100×100 の格子、21回で頂上に到達)