はじめに
「AIが次に試すべき条件を教えてくれる」。データ駆動型材料開発の中心には、いつもこの一文があります。予測モデルを作るだけでなく、その予測を使って次の実験を選び、結果からまた学び直す――俯瞰記事では、この循環(クローズドループ)こそが本質だと述べました。
けれども一歩踏み込むと、素朴な問いが立ち上がります。「次に試すべき条件」を、AIはどうやって選んでいるのか。無作為な選択でも、単に予測値が最も高い点でもないとしたら、その判断の根拠はどこにあるのか。
ここで押さえておきたいことがあります。ベイズ最適化とは、予測が最も良い点を選ぶことそのものではありません。予測の「良さ」と「不確かさ」を一つのスコアに翻訳し、限られた試行の中で最も価値が高い一手を選び続ける――その意思決定の枠組みであること。それが、この手法の核心です。
本記事では、ベイズ最適化と能動学習を支える数式と考え方を分解し、なぜ少ない実験で最適解にたどり着けるのか、そして獲得関数やクエリ戦略をどう選べばよいのかを整理します。
第1章 なぜ、材料の最適化は“手強い”のか
材料やプロセスの最適化が難しいのは、アルゴリズム以前に、問題そのものの性質に理由があります。ここでは三つに整理します。
① 評価が高くつく
一回の実験に、時間も材料もコストもかかります。第一原理計算でも、系が複雑になれば数時間から数日を要します。数千点を総当たりで試す、という発想は最初から成り立ちません。評価回数そのものが、最も希少な資源なのです。
② データが少なく、勾配も使えない
材料分野のデータは、数十から数百件で組むことも珍しくありません。しかも、目的関数の形は事前にわからず、微分(勾配)も手に入りません。勾配降下のような素直な最適化が、そのままでは使えないのです。ちょうど、暗い部屋で手探りのまま最も高い場所を探すようなものです。
③ 目的が一つではなく、次元も高い
強度と延性、活性と選択性、性能とコスト――現実の材料開発は、互いに競合する複数の目的を同時に満たすことを求めます。加えて、組成・配合・プロセス条件を合わせればパラメータは容易に十を超え、探索空間は指数的に広がります。ノイズも避けられません。「一つの指標を、滑らかな空間で最大化する」という教科書的な設定は、現場ではむしろ例外なのです。
第2章 予測精度を“上げるだけ”では最適化にならない理由
では、とにかく高精度な予測モデルを作り込めばよいのかというと、話はそう単純ではありません。
見落とされがちなのは、「良いモデルを作ること」と「最適解を見つけること」は、目的が違うという点です。前者はモデルの誤差を空間全体で小さくすることを目指します。後者は、最も性能が高い一点さえ当てられればよく、性能が低い領域の予測精度はさほど重要ではありません。この違いを無視して「まず精度の高いモデルを」と全域を均等にカバーしにいくと、価値の低い領域にも貴重な実験を浪費してしまいます。
だからこそ、最適化では「予測値が高そうな有望領域」と「まだよくわからない不確かな領域」の両方に賭けを配分します。前者に寄れば速いが局所解にはまりやすく、後者に寄れば安全だが遅い。この配分こそが探索と活用のトレードオフであり、ベイズ最適化の知能はまさにここに宿ります。
重要なのは、モデルの精度を上げること自体ではなく、「限られた試行を、どこに賭けるかを決める」ことなのです。
第3章 中核 ―― ガウス過程と獲得関数
ベイズ最適化は、二つの部品でできています。目的関数を確率的に近似する代理モデル(surrogate)と、その代理モデルから「次の一点の価値」を算出する獲得関数(acquisition function)です。
3.1 ガウス過程 ―― 予測に「確からしさ」を添える
代理モデルの定番がガウス過程(Gaussian Process, GP)です。GPは関数そのものに確率分布を置く考え方で、
と書けます。\(m\) は平均関数、\(k\) はカーネル(共分散関数)です。観測データ \(\mathcal{D}\) を与えると、任意の点 \(\mathbf{x}\) での予測が、予測平均 \(\mu(\mathbf{x})\) と予測分散 \(\sigma^{2}(\mathbf{x})\) という形で得られます。ここが要点です。GPは単なる予測値ではなく、その予測がどれくらい不確かかを同時に返します。この \(\sigma(\mathbf{x})\) が、後述する探索と活用の配分を支えます。
関数の滑らかさは、カーネルの選び方で決まります。広く使われるRBF(ガウス)カーネル
は非常に滑らかな関数を仮定します。材料の応答のように多少起伏の多い対象には、より柔らかい仮定を置くMatérnカーネル(\(\nu = 5/2\) など)が好まれる傾向があります。ここでいう \(\ell\)(長さスケール)や \(\sigma_{f}\) はハイパーパラメータで、周辺尤度の最大化で調整します。どのカーネルを選び、長さスケールをどう決めるか。この地味な設定が、探索の当たり外れを静かに左右します。
3.2 獲得関数 ―― 「次の一点の価値」を一つの数に
代理モデルができたら、次に試す点を選ぶ規準が要ります。それが獲得関数 \(\alpha(\mathbf{x})\) で、空間の各点に「いま評価する価値」をスコアづけし、その最大点を次の候補とします。代表的なものを、最大化問題(現在の最良値を \(f^{*}\) とする)で見ていきます。
改善確率(PI) は、現状を上回る確率です。
期待改善量(EI) は、上回る「幅」まで見込みます。
ここで \(\Phi,\ \phi\) は標準正規分布の累積分布・密度、\(\xi\) は探索の強さを調整する小さな定数です。EIは、予測が高い点(第一項)と、不確かさが大きい点(第二項)を、一つの式の中で自然に足し合わせています。これがEIが定番であり続ける理由です。
信頼上限(UCB) は、もっと直截に両者を線形結合します。
\(\kappa\) を大きくすれば探索寄りに、小さくすれば活用寄りになります。挙動が読みやすく、理論保証(後悔の上界)も整っています。
トンプソンサンプリング(TS) は性格が異なります。事後分布から関数を一本サンプリングし、そのサンプル上の最大点を選びます。乱択が自然に探索を生み、並列化とも相性が良好です。
エントロピー系(MES/PES) は、最大値や最適点の「位置についての不確かさ」を最も減らす点を選ぶ、情報理論的な規準です。最大値 \(f^{*}\) との相互情報量
を最大化する、と書けます。計算は重いが、探索効率は高い傾向があります。
ここで見落としてはならないのは、獲得関数に「万能の一つ」は存在しない、という点です。対象の滑らかさ、ノイズの大きさ、次元――問題の性質しだいで、最適な規準は変わります。だからこそ、選ぶ側の見立てが問われます。
第4章 獲得関数と、その拡張技術を分解する
では、これらをどう使い分け、現実の「多目的・高次元・バッチ・ノイズ」にどう対応するのか。技術を層で整理します。
4.1 獲得関数の性格を見比べる
まず、基本となる獲得関数の性格を星取表にまとめます(高・中・低を目安とした定性評価)。
| 獲得関数 | 探索の強さ | 計算負荷 | 勾配最適化のしやすさ | バッチ適性 | ノイズ耐性 | 直感的わかりやすさ |
|---|---|---|---|---|---|---|
| 改善確率(PI) | 低 | 低 | 高 | 中 | 中 | 高 |
| 期待改善量(EI) | 中 | 低 | 高 | 中 | 中 | 高 |
| 信頼上限(UCB) | 中〜高(κ次第) | 低 | 高 | 高 | 中 | 高 |
| トンプソンサンプリング | 高 | 中 | ―(乱択) | 高 | 高 | 中 |
| エントロピー系(MES/PES) | 高 | 高 | 中 | 中 | 高 | 低 |
大づかみに言えば、PIは活用寄りで局所解に注意、EIはバランス型の定番、UCBは \(\kappa\) で性格を調整できる素直な選択肢、TSとエントロピー系は探索・並列に強い一方、とくにエントロピー系は計算が重い、という住み分けです。
4.2 現実の難所への拡張
基本の獲得関数だけでは、現場の要求には届きません。四つの拡張軸があります。
多目的では、競合する目的の間の最良の折り合い(パレートフロント)を広げることが目標になります。目的を重み付き和に落として単目的化するスカラー化のほか、より原理的には、フロントが囲む体積(ハイパーボリューム)の期待増分を最大化する期待ハイパーボリューム改善(EHVI)が使われます。
並列版のqEHVIは経験的に強い一方、計算コストが課題として知られています。なお多目的BOで扱われてきた探索空間は、文献上も概ね数十パラメータ規模までとされ、高次元・大バッチとの両立は、信頼領域法などによる克服が進みつつある発展途上の領域です。
バッチ(並列)では、一度に複数点を選んで同時実験します。ただ獲得関数の上位を並べるだけでは似た点ばかりが集まるため、選んだ点どうしの重複を避ける工夫(局所ペナルティ、行列式点過程、あるいはTSの乱択性の活用)が要ります。
高次元では、探索空間の広さそのものが敵になります。低次元の部分空間へ写して探索するランダム埋め込みや、有望領域に信頼領域(trust region)を切って局所的に攻めるアプローチが有効とされます。合成関数を使った検証では、最適化の成否がノイズ水準と目的関数の地形(鋭い孤立ピーク型か、なだらか型か)に強く依存することが報告されています。
多忠実度(マルチフィデリティ)は、粗く安い評価(低精度計算・簡易試作)と、精密で高い評価(本実験・高精度計算)を混ぜて使う考え方です。安い評価で当たりをつけ、要所だけ高い評価に回します。獲得関数に「情報量あたりのコスト」を組み込み、資源効率を最適化します。
第5章 ベイズ最適化と能動学習は、似て非なるもの
ここで、しばしば混同される二つを対比しておきます。ベイズ最適化の真価は、能動学習との違いを押さえることで、かえって明確になります。
両者は「不確かさを手がかりに次のデータを選ぶ」点でよく似ています。しかし、目的が異なります。ベイズ最適化が「最も性能が高い一点」を探すのに対し、能動学習が目指すのは「モデルの誤差を空間全体で小さくする」ことです。前者は最良点の近傍に試行を集中させ、後者はむしろ、モデルが最も自信のない領域に均等に実験を配ります。同じ「賢い実験選び」でも、狙う出口が異なるのです。
能動学習のクエリ戦略も、いくつかの系統に分かれます。予測分散が最大の点を選ぶ不確実性サンプリング(\(\mathbf{x}^{*} = \arg\max_{\mathbf{x}} \sigma(\mathbf{x})\))が最も素直な規準です。複数モデルの委員会を組み、予測が最も割れる点を選ぶクエリ・バイ・コミッティ(QBC)や、予測の曖昧さ(エントロピー)に着目する規準もあります。そして、モデルの認識的不確かさ(epistemic uncertainty)だけを狙い撃つのがBALDで、予測とモデルパラメータの相互情報量
を最大化します。第一項は予測全体の不確かさ、第二項はデータのばらつきに由来する部分で、その差がモデル自身の無知の量にあたります。バッチ選択で似た点が重複する問題には、冗長性を割り引くBatchBALDが用いられます。
| 戦略 | 狙う不確かさ | モデルの前提 | 計算負荷 | バッチ多様性への配慮 |
|---|---|---|---|---|
| ランダム抽出(基準線) | ― | 不問 | 低 | 自然に確保 |
| 不確実性サンプリング | 予測分散 | 分散を出せること | 低 | 要工夫 |
| クエリ・バイ・コミッティ | 委員会の不一致 | 複数モデル | 中 | 委員会で緩和 |
| BALD | 認識的不確かさ | ベイズ的推論 | 中 | 要工夫 |
| BatchBALD | 認識的(冗長性補正) | ベイズ的推論 | 高 | 明示的に確保 |
| 積分予測分散 | 全域の分散低減 | 分散を出せること | 高 | 全域で最適化 |
材料分野での実証も蓄積が進んでいます。合金設計で不確かさに基づく能動学習が実験回数を大幅に削減した例(Xue/Lookman ら, Nat. Commun. 2016・npj Comput. Mater. 2019)、三元系の相図回帰で、通常の三割ほどのデータで同等精度に到達した例(Koizumi ら)、大規模な第一原理データベースで委員会型の能動学習がプールの三割程度の照会で全データ利用と同等の精度に達し、七〜九割超の計算・ラベリング資源を節約したとする報告(Li ら, arXiv:2304.13076)などです。これらの数値はいずれも各原著の設定に依存する目安であり、条件によって変わり得ます。近年は、点ごとの分散ではなく空間全体の予測分散の低減を狙う積分予測分散が、材料データで従来手法を上回るとの報告も出ています。
もちろん、すべての場面で最も高度な規準が要るわけではありません。滑らかで低次元の問題なら、UCBや不確実性サンプリングの素朴な設定でも十分に戦えます。規準の高度さと問題の難しさは、釣り合っていることが望ましいのです。
第6章 探索を“設計”するために押さえる勘所
「理屈はわかった、では実際に何を決めればよいのか」――最後に、探索キャンペーンを設計する際の勘所を、五つの段階で整理します。いきなり最も凝った設定を目指す必要はありません。
レベル1:問題を定義する
何を最大化(最小化)するのか、制約は何か、目的は一つか複数か。パラメータの範囲と型(連続・離散・カテゴリ)を洗い出します。ここが曖昧なままでは、どんな獲得関数も力を発揮できません。
レベル2:代理モデルとカーネルを選ぶ
少データならガウス過程が第一候補です。対象の滑らかさに応じてカーネル(RBFかMatérnか)を選び、長さスケールを尤度で調整します。入力のスケーリングも忘れずに行います。
レベル3:獲得関数を選び、初期点を配る
まずはEIかUCBから始めます。初期点は空間を広くカバーするよう(ラテン超方格などで)配ると、序盤の迷走を防げます。探索が足りなければ \(\kappa\) や \(\xi\) を上げます。
レベル4:バッチ・ノイズ・多目的へ広げる
同時に複数実験するならバッチ化と多様性確保を検討します。測定ノイズが大きいなら、それを前提にした獲得関数と代理モデルを採用します。目的が競合するならEHVIなど多目的の規準へ切り替えます。
レベル5:停止と検証を組み込む
改善が頭打ちになったら止める停止規準、そして合成関数などで事前に挙動を確かめる検証の枠組みを持ちます。探索は、回して終わりではなく、監視しながら育てる基盤だと捉えるのがよいでしょう。
レベル1から始め、問題の難しさに合わせて段階的に規準を上げていくアプローチが現実的です。なお、こうした一連の探索は、代理モデルの精度・獲得関数・初期設計・停止規準が噛み合って初めて回るため、どれか一つだけを高度化しても効果は限られます。
おわりに
これからますます重要になるのは、単に精度の高い予測モデルを持つことではなく、限られた実験をどこに投じるかを、根拠をもって決められることです。ガウス過程が不確かさを定量し、獲得関数がその不確かさと期待値を一つのスコアに束ね、能動学習が「モデルを賢くする実験」を選ぶ――これらはいずれも、少ない試行から最大の情報を引き出すための道具立てです。
逆に言えば、土台となる代理モデルと獲得関数の設計が甘ければ、どれだけ実験を自動化しても、狙いどころを外し続けてしまいます。探索の速さを決めるのは、装置の速さだけでなく、「次の一点」を選ぶ数式の質なのです。
獲得関数は、最適化の「裏方」ではなく、限られた実験を価値ある一手へ翻訳する中心的な意思決定装置です。良い材料を速く生むのは、賢い予測だけではなく、賢く選ばれた次の一手なのです。