目次
背景
- データを集める・実験をするというのは、時間もコストもかかる行為
- どうせ限られた予算しかないなら、次にやる実験・次に集めるデータは、なるべく多くの情報が得られるものを選びたい
- ベイズ実験計画法(Bayesian Experimental Design)は、この「次に何を試すべきか」という問題を、ベイズ統計の枠組みで定式化する
実験計画法とは
- 実験計画法(Design of Experiments)は元々、統計学の分野で、限られた実験回数からできるだけ多くの情報を得るために、実験条件(factor)をどう組み合わせるかを設計する手法
- 要因実験・直交表・応答曲面法などが古典的な手法として知られている
- これらの多くは、実験条件の組み合わせを事前に固定的に設計するのに対し、ベイズ実験計画法は「今の知識(事後分布)を踏まえて、次の一手を選ぶ」という逐次的な発想を取る
ベイズ実験計画法とは
- パラメータ$\theta$についての事前分布$p(\theta)$があるとする
- ある実験デザイン$d$を行うと、結果$y$が$p(y \mid \theta, d)$に従って観測される
- 実験を行った後は、ベイズ更新で事後分布$p(\theta \mid y, d)$が得られる
- ベイズ実験計画法は、この事後分布の更新によって「どれだけ情報が得られるか」を事前に見積もり、それが最大になるような$d$を選ぶ
情報の増加量は、期待情報利得(Expected Information Gain, EIG)として、次のように定義される。
$$ \text{EIG}(d) = \mathbb{E}_{y \sim p(y \mid d)}\left[ D_{\text{KL}}\bigl(p(\theta \mid y, d) \,\|\, p(\theta)\bigr) \right] $$- 実験結果$y$がまだ分からない段階なので、あらかじめ$y$の分布で期待値を取っている
- 事後分布が事前分布からどれだけ変化するか(KLダイバージェンス)を、期待値として測っている
この量は、実は$\theta$と$Y$の間の相互情報量(Mutual Information)と一致することが知られている。
$$ \text{EIG}(d) = I(\theta; Y \mid d) = \mathbb{E}_{\theta, y}\left[\log\frac{p(y \mid \theta, d)}{p(y \mid d)}\right] $$直感: 最も不確実な実験を選ぶ
- 直感的には、モデルが「結果がどうなるか全く予想できない」実験ほど、情報量が大きい
- 逆に、結果がほぼ確実に予想できる実験(すでに分かっていることの繰り込み)は、情報利得が小さい
- つまりEIGが大きい$d$とは、事前知識のもとでの結果の不確実性(予測分布のエントロピー)が大きい実験、というイメージ
- 無作為にデータを集めるのではなく、モデルが最も自信を持てていない領域を狙って実験・データ収集することで、同じ予算でも効率よく知識を更新できる
Active Learningとの関係
- Active Learning(能動学習)は、ラベル付けするサンプルを選ぶ問題に、この考え方を応用したもの
- 代表的なクエリ戦略に、以下がある
- Uncertainty Sampling: モデルの予測確信度が最も低いサンプルを選ぶ
- Query-by-Committee: 複数モデルの予測が割れるサンプルを選ぶ
- BALD(Bayesian Active Learning by Disagreement): モデルパラメータの事後分布からサンプリングした複数のモデル間で、予測の不一致(相互情報量)が最大のサンプルを選ぶ
BALDのスコアは、次のように書ける。
$$ \text{BALD}(x) = H\bigl[y \mid x, D\bigr] - \mathbb{E}_{\theta \sim p(\theta \mid D)}\Bigl[H\bigl[y \mid x, \theta\bigr]\Bigr] $$- 第1項は、モデル全体(パラメータの事後分布で積分した予測)の予測エントロピー
- 第2項は、個々のパラメータ$\theta$のもとでの予測エントロピーの期待値
- この差が大きいサンプルは、「個々のモデルはそれぞれ自信を持って予測しているが、モデル同士の意見が割れている」状態を表し、パラメータの不確実性そのものが高い領域を指す
逐次実験計画法とベイズ最適化
- 実験を1つ選んで結果を観測し、事後分布を更新し、次の実験を選ぶ、というのを繰り返す設計を逐次実験計画法(Sequential Experimental Design)と呼ぶ
- モデルの学習の多信頼度最適化で扱ったベイズ最適化は、この逐次実験計画法の一種と見なせる
- ベイズ最適化における獲得関数(Expected Improvement, Upper Confidence Boundなど)は、EIGとは目的が少し異なる(「最適値を早く見つける」ことが目的で、「パラメータについての情報を最大化する」ことが目的ではない)が、どちらも「次にどこを試すべきか」を事後分布から計算するという構造は共通している
- 同様に、Freeze-Thaw Bayesian Optimizationのような手法も、逐次的に「どの候補にどれだけ計算資源を割くか」を決める、ベイズ実験計画法の一種として整理できる
実務での応用例
- ラベル付けの優先順位付け: 大量の未ラベルデータのうち、どれを人手でラベル付けするかを選ぶ(Active Learning)
- A/Bテストの設計: どの施策を検証すれば、最も早く意思決定に必要な情報が得られるかを選ぶ
- ハイパーパラメータ探索: 次にどの設定を試すかを選ぶ(ベイズ最適化)
- 診断データセットの拡充: 機械学習におけるデータセットの分割の再考のDiagで見つかった不確実性の高い領域を優先して、追加のデータを集める
計算上の難しさ
- EIGは、多くの場合解析的に計算できず、モンテカルロ近似や変分近似が必要になる
- 特に、事後分布$p(\theta \mid y, d)$自体をベイズ更新するたびに近似計算する必要があり、候補となる実験デザイン$d$が多いと計算コストが膨らむ
- 近年は、ニューラルネットワークを使ってEIGの推定・設計選択自体を学習する、amortized(償却型)なベイズ実験計画法(Deep Adaptive Design等)も研究されている
まとめ
- ベイズ実験計画法は、事前知識のもとで期待情報利得が最大になる実験・データ収集を選ぶ、逐次的な意思決定の枠組み
- 期待情報利得は、事後分布と事前分布のKLダイバージェンスの期待値であり、パラメータと観測データの相互情報量と一致する
- 直感的には、モデルが最も不確実な実験・サンプルを選ぶという発想
- Active LearningのUncertainty Sampling・BALDは、この考え方をラベル付け対象の選択に応用したもの
- ベイズ最適化・Freeze-Thaw Bayesian Optimizationも、逐次実験計画法の一種として位置づけられる
- 実務では、Active Learningによるラベル付けの優先順位付け、A/Bテストの設計、ハイパーパラメータ探索、診断データセットの拡充などに応用できる
- EIGの計算は多くの場合解析的に求まらず、近似計算やamortizedな手法が必要になる
参考文献
- Lindley, D. V. (1956). “On a Measure of the Information Provided by an Experiment”
- Chaloner, K., & Verdinelli, I. (1995). “Bayesian Experimental Design: A Review”
- Houlsby, N. et al. (2011). “Bayesian Active Learning for Classification and Preference Learning” (BALD)
- Foster, A. et al. (2021). “Deep Adaptive Design: Amortizing Sequential Bayesian Experimental Design”
- モデルの学習の多信頼度最適化
- 機械学習におけるデータセットの分割の再考
