『ベイズ統計の理論と方法』の行間を読む I
概要
渡辺澄夫の『ベイズ統計の理論と方法』 (以下, 渡辺本) は, 私のように統計学は多少知ってるものの, 統計力学を知らない人間にとっては, 「自由エネルギー」だの「分配関数」だのが何を意図して定義された統計量 (物理量?) なのかよくわからず, はじめは数式を目で追うことしかできなかった.
加えて, 渡辺本は, 実務に役に立つテクニックなどといった趣旨の本ではなく, 統計学的なモデリングや機械学習*1の理論を統一的に説明することを目的としている. そのため, 統計モデルを抽象的に一般化してその性質を説明する一方で, 混合分布モデルとか, ニューラルネットとか具体的な手法についての言及は控えめであることも, 人によっては理解が進まない原因になっていそうである. しかし, 難解であっても, 渡辺本に書かれている内容は非常に価値がある. 例えば, 以前私が [教材] 今更だが, ベイズ統計とは何なのか. - ill-identified diary で書いた「ベイズ統計と古典統計は互いに矛盾するものではなく, ベイズ統計は古典統計を包含する」という話も, この渡辺本に由来している. そこで, 私と同じように物理学を知らない「文系」のために渡辺本の行間を埋めて, 紹介される定理が何を含意しているのかの理解を促してみようと思う. もちろん, 私の勝手な解釈なので, 著者の意図に合致している保証はない.
今回は3章までの行間を読んでいく. なので, 残念ながら渡辺先生の研究の重要なところである特異モデルに対する理論分析は範囲外である.
この記事は, 期待値とか確率密度関数とか, 統計学に関連する基本的な数学的知識を持っていることを前提としている. 特に, パラメータ で積分したり,
で積分したり (周辺化), 確率分布
を掛けて
で積分したり (期待値) 積分の仕方にいろいろなパターンがあり, 変数としてみているのが
なのか,
なのか, よく確認する必要がある. 見やすさのため, 数式の記法はなるべく渡辺本に準じる*2が, いくつか例外がある.
事後分布
を
と書く.
は確率分布一般を表すのに使っているので, パッと見でわかるように
と書くことにした.
対数
を
と書く.
は対数のうち, 特に
を底とする自然対数を表すものである. とはいえ, ゼロなど不自然な値を取らない限り, 対数の底をどのようにしようが結果に影響はない.
なお, 原稿用紙で8頁ぶんくらいある.
最も基本的なこと
あまり細かく書きすぎると渡辺本の丸写しになってしまうので, で最低限の基本的なルールだけ書いておく.
機械学習でも統計学でも*3, データがある確率分布にしたがって生成されているという状況を仮定している. 統計学では母分布とか, データ生成過程 (DGP) などと呼ばれる. これを渡辺本では という確率密度関数で表している. 実際の問題は,
そのものは不明だが, データ
は, それぞれ
から抽出した乱数とみなせるので, 間接的に
に対応する関数を推定することになる. 推定された関数を
としている. これを尤度と呼ぶ本も多いが, 渡辺本では確率モデルと呼んでいる. 機械学習における学習器 (learner) とも同義である. ベイズ統計の理論を考えるには真の分布
, 事前分布
, 確率モデル
の3種類の確率が最低限必要になる.
尤度比とカルバック=ライブラ距離
2章では, 汎化損失, 汎化誤差, 経験誤差など似たような名前の統計量がいろいろ出てくるので, 初見では戸惑うことだろう.
さらに, 自由エネルギーと分配関数の2つは統計力学の法則と関連付けるために出てきた話なので, 統計力学を知らない文系の我々は知ってもどうしようもない. 渡辺本の範囲では, 自由エネルギーの概念を導入すると分かる知見として特に重要なトピックは,
である. 自由エネルギーは理論分析のために必要ではあるが, その一方で我々の多くはデータ分析の実務上でどう役に立てるかが主な関心となるだろうから, 実用に際してのつながりを重視して説明していきたい. われわれ文系は, 自由エネルギーではなく別のルートから読解しなければならないので, 極力触れないことにする*4.
我々は, 真の分布により近い統計モデルないし学習器を作成しようとしている. そこで, 真の分布と確率モデルのズレを, 比として考える.
確率モデルは尤度とも呼ばれるので, これは尤度比と呼ばれる. これが何を意味するかというと, これを の関数とみなすと, ある点
で, 尤度比が1に近いほど真の分布と確率モデルの差異がなくなるということである. また, 分子分母ともに確率を表す関数だから, 尤度比もゼロ以上であり, 両者が一致するとき尤度比が1となるとわかる. 渡辺本では, 尤度比の対数をとった対数尤度比関数を重視して,
と定義される. 名前が長いので, 以降は「KL距離」と書く. KL距離は, 確率分布 で
の平均を取っているから, 期待値でもあるので,
では, この KL距離とはなんなのか, 対数は と変形できるから,
さらに, KL距離の性質を解き明かしていく. 右辺の2つの期待値が何を意味するか考えてみる. どちらも, 確率の対数について. で平均を取っている. そこで,
はデータ
にも影響されない, 真の分布
固有の定数である. つまり, どんな確率モデルにしようが, KL距離には大きさが固定された成分があり, 原理上どうしても発生するズレが, 多かれ少なかれ存在することがわかる. ここから, カルバックライブラ距離をゼロにする
を求めるというよりは, とりあえず
は考えず,
の部分にどういう性質があるかを見ればよいという見通しが立つ.
平均対数損失
しかしKL距離は, まわりの期待値なので, 真の分布がわからない以上, これだけでは求めることができない. KL距離を移項すると,
となり, 左辺, つまり確率モデルの対数の真の分布まわりの期待値は, エントロピーとKL距離の差で表せる. これが平均対数損失 (mean log loss)である. これを の関数として,
経験対数損失
平均対数損失は, 最小二乗法など, 何らかの損失関数を最小化する方法を指している. だが, は, 知ることのできない
を用いて期待値を計算しなければならない. そこで, 期待値を標本平均で代用した, 次のような経験対数損失 (empirical log loss) を考える.
具体例
ここで, よく知られた従来の方法との関連を考えてみる. ガウシアン線形回帰モデルなら, 正規分布を利用した
少し脱線するが, 線形回帰モデルでは, をどのような正の値に固定しても,
を最小化する
の値には影響しない. よって, 回帰係数
だけを求めたいなら,
を最小化するだけでもよい. これが最小二乗法になる. つまり, 最小二乗法は, ベイズ推測の特殊ケースである最尤推測の, さらに特殊なケースという位置づけになる.
汎化誤差と汎化損失
渡辺本ではさらに, 汎化損失 (gerenalization loss) と汎化誤差 (generalization error)
が次のように定義される.
ではなぜ, 真の分布と確率モデルではなく, 真の分布と予測分布とのKL距離へと変更を加えたのか. この違いは何を意味するのだろうか. 実は, 最尤推測など古典的な統計モデリングでは, 両者に違いがなかったため, 区別する必要がなかったのだ. しかし, 機械学習やベイズ統計は, 罰則項や事前分布を用いて, 平均対数損失に代わり汎化損失を最小化している. これはベイズの定理を用いれば分かることである. 事後分布は, 確率モデルと事前分布に比例する(). 機械学習においても, 損失関数が尤度 (=確率モデル) の正負を逆にしたものに相当し, これに罰則項を追加するから, 事後分布は確率モデルにパラメータに関するなんらかの分布を加味したものになる. 一方で, 最尤推測は 尤度の最大化により直接決定するから, 事後分布が存在せず, パラメータは1点に固定される*10. よって, 汎化誤差・汎化損失はそれぞれ 平均誤差関数と平均対数損失の拡張である*11.
平均対数損失に対して経験損失が存在するように, 汎化誤差・汎化損失においても, これを推定するための統計量が存在する. それが経験誤差 と経験損失
になる. つまり, 統計モデリングでも学習器でもパラメータ決定は, 経験損失の最小化問題とみなせる.
ここまで, 似たような用語が出てきたので, 改めてまとめると以下のようになる.
平均誤差関数: 真の分布とモデルの間のズレの大きさの期待値 (=KL距離)
平均対数損失: 平均誤差関数に平均対数損失の最小値
(
のエントロピーのマイナス) を足したもの
汎化誤差: 真の分布と予測分布の間のKL距離
汎化損失: 汎化誤差に
を足したもの
経験 XX: 上記の汎化 XX や平均 XX を標本平均で推定したもの
ここから, 誤差 (error) と損失 (loss) の意味を区別して命名されているのが分かる. とはいえ, 古典的統計学・ベイズ統計学・機械学習はそれぞれ独自に発展してきたという背景もあり, 多層ニューラルネットの誤差逆伝播法は, 損失関数で評価してるのに「誤差」という語を使っているなど, 必ずしも厳密に統一されているわけでない.
情報量規準と汎化誤差
実用上は, 真の分布 が不明であり, サンプル
のみが与えられている状況でパラメータ
を求めなけらばならない. そのような場合には, 汎化損失の代理となる経験損失を最小化するだけでいいということがわかった. しかし, だからといって, 理論上の汎化誤差を無視していいというわけではない.
経験損失を最小化する と, 汎化損失を最小化する
が一致するのは, サンプルサイズ
が
となったときであり, 実用のためには
が有限の場合も考えるべきであろう. このとき, 両者の間には差 (バイアス) が発生することがわかっている. この差は経験過程と呼ばれる, 平均誤差関数を用いて定義される確率で表される. このバイアスがいわゆる過剰適合とか過学習とか呼ばれる現象をもたらす. よって, 経験過程の大きさを考慮して, 汎化損失を求める必要がある.
有名な赤池の情報量規準 (AIC) やベイジアン情報量規準 (BIC) といった情報量規準は, このように, サンプルサイズが有限な場合*12に, 経験損失で代用したときに発生するバイアスを補正する方法だと考えれられる. AIC は汎化損失の近似で, 汎化損失は平均誤差関数と, 定数項とみなせるエントロピーのマイナス の和だから, モデルをAICで比較することは, 汎化誤差を間接的に推定しているのと同じと言える. 汎化誤差は真の分布と予測分布のKL距離だから, AIC が小さいということは, より良い予測分布を作成できるモデルということになる.
AIC と並んで BIC も多くの教科書で紹介されているが, 両者は式の定義が異なる. 良いモデルを選ぶのに, なぜ異なる指標が存在するのか. 渡辺本ではこれも説明されているが, 解説のためにはいよいよ自由エネルギーに言及しなくてはならない. 自由エネルギー は,
対数周辺尤度を近似するBICがなぜモデル選択に使えるのか, 渡辺本では具体的に説明していないが, 日本語文献ならば, 小西 & 北川 (2004, 情報量規準) によれば, 対数周辺尤度でモデルの正しさの事後確率の相対的な大きさが表せることから, 対数周辺尤度のマイナスの近似として BIC が導出されると順を追って説明している. よって, BIC が小さいほど周辺尤度が大きく, 正しいモデルである確率が高いということになる.
AIC と BIC の式が異なるのはこのように導出過程が異なるからであり, 「ベイズ統計モデルだから BIC を使うべき」といった主張は根拠のない俗説であるとわかる.
そして, それぞれ異なる統計量の近似であるため, サンプルサイズ が有限でも無限大でも, AIC と BIC が一致するとは限らない. AIC と BIC の細かい性質の違いや, 実用上どう使い分けるべきかのヒントは, 渡辺本の本文でも述べられているので省略する.
4章以降
以上の話は, 正則な条件が成り立つ場合のみであり, まだ学習理論の問題のすべてのケースをカバーできてない. 具体的には, サンプルサイズが十分でない, パラメータ が一意に定まらない, などの状況では, ここまでの理論の前提が崩れる. このとき, 最尤推測が最適な
を導く保証はなく, AIC や BIC がそれぞれ汎化損失や周辺尤度のよい推定量になっているという前提条件が崩れてしまい, 意味をなさなくなる.
が未知であるからこそ推測するという統計学の問題が発生するので, 事前・事後的のいずれでも正則な条件を満たしているかを知ることはできない. よって, 特異なモデルにも対処できるように理論を拡張する必要が出てくる. 渡辺本では既に, 特異モデルの範囲でも AIC, と同等の性質を維持する情報量規準である WAIC を説明している. が, そのためには多様体その他のより発展的な数学の知識を要する. 自分はまだ, 話を噛み砕いてエッセンスだけを抽出し説明できるほど理解しているとは言えないので, この続きを書くとしたら, だいぶ後になるだろう.
追伸
私事ですが, 2018年2月より再就職しています. これからも出来る限りブログ更新は続けていこうと思います. この個人ブログだけでなく, 現所属企業のブログにも投稿することがのちのちあると思います.
*1:総合して学習理論と呼ぶ
*2:第4刷の時点で著者による正誤表が出ている ことにも注意.
*3:あわせて学習理論と呼ぶ
*4:今回言及する正則理論の範囲では, 汎化誤差と自由エネルギーの違いをあまり気にする必要がなく, 汎化誤差だけで説明できることが多い. しかし, より一般化する場合には, 自由エネルギーも考える必要が出てくる
*5:カルバック=ライブラ情報量とか, KL ダイバージェンスと呼ばれることも多い.
*6:ただし, KL 距離は p, q を入れ替えると値が変わるので, 対称性を満たさない. さらに言うと三角不等式も満たさないので, 厳密には「距離」ではない. しかし, 渡辺本ではかまわず「カルバック・ライブラ距離」表記をしている. 紙面が限られていて頻出用語の字数を減らしたかったからだろうか. ただし, 末尾の付録では「情報量」と呼んでいる.
*7:エントロピーは, KL距離と自由エネルギーの関係式にも現れる.
*8:多くの教科書では, この形ではなく, 誤差項が平均ゼロ, 分散 の正規分布に従うと表記している. しかし, 正規分布の性質から, 誤差項と
の和もまた正規分布に従うので, 結局はどちらの定義も同じである.
*9:これを平均対数尤度という
*10:この点で言えば, 事後分布を最大化するようにパラメータを選ぶ MAP 法は, 実はベイズ統計ではない.
*11:ここでは厳密な定理ではく, 大まかなアイディアとして関係を述べた. 実際にこの関係を導くのに必要なのが自由エネルギーである.
*12:ただし, 渡辺本では, ある程度大きなサンプルサイズが必要であるとしている. 特に AIC については, これ以前にも, サンプルサイズが比較的小さい場合向けに修正した, 有限修正 AIC (AICc) というものが提案されている (Hurvich & Tsai 1989, Regression and time series model selection in small samples)