ベイズ最適化 (G検定)

ベイズ最適化

1. 定義と概要

ベイズ最適化とは、それまでに試したハイパーパラメータの組み合わせとその評価結果を使い、次にどの組み合わせを試すと良さそうかを確率的に推定しながら候補を選んでいく探索手法です。中心にあるのは、本来は1回試すのに時間がかかる評価(モデルの学習と検証)の代わりに、少ない試行結果から性能を予測する軽いモデルを立てる仕組みです。

代理モデル(サロゲートモデル)とは、この軽いモデルのことで、確率的な予測モデルの一種であるガウス過程(予測結果とあわせて、その予測がどれくらい不確かかも一緒に表せるモデル)がよく使われます。具体例として、学習率や決定木の深さといった複数のハイパーパラメータの組み合わせを、限られた試行回数の中で少しずつ良い性能に近づけていく使われ方があります。

ハイパーパラメータの探索は、従来、グリッドサーチ(あらかじめ決めた候補をすべて総当たりで試す探索方法)や、ランダムサーチ(候補をランダムに選んで試す探索方法)が使われてきました。しかし、これらはいずれも一度試した結果を次の候補選びに生かしません。

ハイパーパラメータの組み合わせ数が多い場合や、1回のモデル学習と検証に多くの時間や計算資源がかかる場合には、試行回数そのものがボトルネックになります。ベイズ最適化はこの課題に対し、過去の試行結果を確率的に整理して次の候補を絞り込むことで、少ない試行回数でも良い解に近づこうとする手法として位置づけられます。

2. 試験対策ポイント

G検定でとくに重要な論点になるのが、代理モデルと獲得関数という2つの仕組みです。獲得関数(次にどのハイパーパラメータの組み合わせを試すべきかを、予測性能の高さと不確実性の大きさから決めるための指標)は、代理モデルの予測をもとに次に試す候補を決めます。具体的には、予測性能が高そうな場所(活用)と、まだ試しておらず不確実性が大きい場所(探索)のバランスを取るという考え方です。

この探索と活用のバランスという考え方は、強化学習(試行錯誤を通じて望ましい行動を学習していく仕組み)における探索と活用のトレードオフと同じ発想です。探索と活用のトレードオフとは、まだ試していない選択肢を試して新しい情報を得ることと、すでに良さそうだと分かっている選択肢を使うことの、どちらを優先するかのバランスを指します。対象がハイパーパラメータの候補選びに置き換わっている点として関連づけて扱われます。

ハイパーパラメータ探索の3手法は、候補の選び方と、過去の試行結果を次に生かすかどうかという2つの軸で並べると違いがはっきりします。

手法 候補の選び方 過去の試行結果の扱い
グリッドサーチ あらかじめ決めた候補をすべて総当たりで試す 次の候補選びに生かさない
ランダムサーチ 候補をランダムに選んで試す 次の候補選びに生かさない
ベイズ最適化 代理モデルの予測と獲得関数から有望な候補を選ぶ 確率的に整理して次の候補選びに生かす

総当たり、無作為、過去を生かす、という3段階の並びで3手法の名称と位置づけの違いを整理しておきたいところです。

メリットとして、少ない試行回数で良い解にたどり着けることが挙げられます。1回の評価に時間がかかるモデルほど恩恵が大きくなります。

一方で、代理モデルの構築・更新自体に計算コストがかかるという制約があります。加えて、次に試す候補が前回までの試行結果(代理モデルの予測)に依存するため、候補をあらかじめ決められるグリッドサーチや候補を独立に選べるランダムサーチほど単純には並列化できないという制約もあります。

実務のハイパーパラメータ自動探索ツールとして、Optuna(ハイパーパラメータの自動探索を行うソフトウェアの一つ)のような選択肢が挙げられます。ツールの内部で使われるアルゴリズムの一つであるTPE(Tree-structured Parzen Estimator)は、Optunaで標準的に使われている、過去の試行結果を確率的に整理して次の候補を決める方法です。ガウス過程との細かな違いは試験の主題ではなく、ベイズ最適化の考え方を実装したツールの一つという位置づけで理解しておけば足ります。

3. 関連概念との比較・相違点

グリッドサーチとの最大の違いは、総当たりか、過去の結果を生かすかという点にあります。グリッドサーチはあらかじめ決めた候補をすべて試す網羅的な探索であるのに対し、ベイズ最適化は過去の試行結果から有望な領域を確率的に絞り込みます。候補の当たりを付けずに広く網羅するか、当たりを絞り込みながら進めるかという判断の違いが、この2つの手法の性格を分けています。

ランダムサーチとの違いは、候補選びが無作為か推定に基づくかという点です。ランダムサーチは候補をランダムに選んで試す探索であるのに対し、ベイズ最適化は代理モデルの予測と獲得関数をもとに次の候補を選びます。偶然に良い組み合わせへたどり着くか、これまでの手がかりを踏まえて次の一手を選ぶかという点で、両者の探索の質は異なります。

強化学習の探索と活用のトレードオフとの関係では、同じ「探索と活用のバランス」という考え方が使われる対象が異なります。強化学習では次にどの行動を取るかの選択に使われるのに対し、ベイズ最適化では次に試すハイパーパラメータの候補選びに使われます。どちらも過去の手がかりを生かして次の一手を賢く選ぶという発想を共有していますが、選ぶ対象が行動かハイパーパラメータかという違いがあります。

4. ビジネス・実務での活用シナリオ

製造業の画像検査AIでは、1回の学習と検証に時間がかかる深層学習モデルに対し、層の数や学習率といった複数のハイパーパラメータの組み合わせを、限られた試行回数の中で効率よく探索することが検出精度の向上につながります。試行のたびに一から学習をやり直す余裕がない現場ほど、少ない試行回数で良い組み合わせに近づけるベイズ最適化の恩恵が大きくなります。

創薬・材料開発の分野では、1回の実験にかかるコストや時間が大きいため、ハイパーパラメータ探索と同じ「少ない試行回数で有望な条件に絞り込む」という考え方が、配合や実験条件の探索にも応用されています。実験そのものが高コストな領域ほど、過去の結果を生かして次に試す条件を絞り込む発想が生きてきます。

クラウド上の機械学習基盤では、モデルの再学習にかかる計算コストを抑えるため、Optunaのようなツールでベイズ最適化を使い、グリッドサーチより少ない試行回数でハイパーパラメータを決定する運用が行われています。計算資源の利用時間そのものがコストに直結するクラウド環境では、試行回数を絞り込めることが直接的な費用削減につながります。

5. 要点まとめ

  • ベイズ最適化は、過去の試行結果を使い次に試す候補を確率的に推定しながら選ぶハイパーパラメータの探索手法で、代理モデル(ガウス過程がよく使われます)と獲得関数(探索と活用のバランスを取る指標)が中心概念になります。
  • ハイパーパラメータ探索は、グリッドサーチ(総当たり)→ランダムサーチ(無作為)→ベイズ最適化(過去を生かす)という3段階として位置づけられます。
  • 少ない試行回数で良い解に近づける利点がある一方、代理モデルの構築・更新に計算コストがかかり、次の候補が前回の結果に依存するため並列化がグリッドサーチ・ランダムサーチほど単純ではないという制約があります。

6. 確認問題

問1ベイズ最適化は、それまでの試行結果をもとに代理モデル(サロゲートモデル)を構築し、次に試す候補を推定しながら選んでいく手法である。

解答・解説をみる

○ 正しい

代理モデルは、本来評価に時間がかかる対象の代わりに、少ない試行結果から性能を予測する軽いモデルです。確率的な予測モデルであるガウス過程がよく使われます。

問2獲得関数は、予測性能が高そうな場所(活用)とまだ試しておらず不確実性が大きい場所(探索)のバランスを取って次の候補を決める指標である。

解答・解説をみる

○ 正しい

獲得関数の役割そのものにあたります。強化学習における探索と活用のトレードオフと同じ考え方が、次に試すハイパーパラメータの候補選びに使われています。

問3ベイズ最適化はグリッドサーチやランダムサーチに比べて、各候補の試行を並列に実行しやすいという利点がある。

解答・解説をみる

× 誤り

正しくは逆です。ベイズ最適化は次に試す候補が前回までの試行結果(代理モデルの予測)に依存するため、候補選びを並列化しにくくなっています。候補があらかじめ決まる、または独立に選べるグリッドサーチやランダムサーチのほうが並列実行はしやすい関係にあります。