初めてのベイズ学習(続き)









3.発展

以下に,発展的な事柄を述べます.初めてベイズ法を習う人は,以下のことは, 読む必要はありません.また,何を言っているかわからなくても問題はありませんので,わからない ところがあっても気にせず読んでください.また,以下に述べる事柄については, 本を読んでも,ネットワークを検索しても,先生に聞いても,答えはないことが多いので, 自分で考えてみるのがよいでしょう.


(3.A) ベイズ推測は,確率モデル p(x|w) と事前分布 φ(w) のペアを モデルとする推測であり,双有理不変な推測法です.実際, 解析写像 w=g(u) によってパラメータを w から u にかえたとき,

p(x|w) → p(x|g(u))
φ(w) → φ(g(u))|g'(u)|


とすると,w 上の推測を u 上の推測に置き換えることができます. ここで |g'(u)| は,解析写像 w=g(u) のヤコビアンです. 解析写像 w=g(u) は,微分同相写像でなくても良いことに注意してください. つまり,ヤコビアンが0になるところがあっても構いません.また w と u は 多様体の元である必要はありません. フィッシャー情報行列の正定値性は,双有理不変な世界では必要ありません. このことから, 周辺対数尤度や汎化誤差の挙動が解明できたとき,その挙動を与える値は 双有理不変量 になっていることがわかります.真の確率密度 q(x) と 与えられたペア「p(x|w)とφ(w)」を考察するために,ふさわしい 解析写像 w=g(u) とは,どのようなものであるべきでしょうか. ブローアップやトーリック改変を利用してこの解析写像を うまく作る方法を考えましょう.また周辺対数尤度や汎化誤差を与える 双有理不変量が,代数幾何,代数解析,多変数函数論において,どのような意味を 持つのかについて考えてみましょう.


(3.B) データ数が n のときの対数周辺尤度 F の平均値を F(n) と書き, G の平均値を G(n) と書くことにします.このとき,恒等式

G(n) = F(n+1)-F(n)-S


が成り立ちます.ここで S は真の確率密度のエントロピーです.

S = -∫q(x)log q(x)dx


上記の G(n) と F(n) の関係式は,任意の自然数 n で成り立ちます( n が十分大きい必要はありません).このことから,平均汎化誤差 は,平均自由エネルギーの増分と一致することがわかります. 確率モデルや事前分布の候補が複数あったとき, 汎化誤差を最小化することと自由エネルギーを最小化することは,強い関係を 持っていますが,数学的には等価ではないことがわかります.


(3.C) ベイズ推測は,データの個数が少ない場合や,フィッシャー情報行列が 固有値0を含む場合において,最尤法やMAP法よりも優れた予測精度を 有しています.また,階層構造を持つ学習モデルや隠れた変数を持つ学習モデルでは, 最尤法やMAP法よりも理論的にも実験的にも適切な学習法を与えます. 統計的正則モデルでデータ数が多い場合には, ベイズ推測は最尤推測やMAP推測と同じ漸近効率を持ちますが, そうでないときにはベイズ推測が優れています.

最尤推定量は,統計的正則モデルでは漸近有効性を持ちますが,統計的正則モデルで ないときは,そのような性質は持っていません.この理由は次の通りです. 統計的正則モデルでは,n →∞のとき, 尤度関数は正規分布(の定数倍)に近づくので,最尤推定量は <漸近的な十分統計量>になりますから最尤推定量は漸近的には情報損失を持ちません. 統計的正則モデルでない場合には,そのような性質はもちません.

ベイズ事後分布は,尤度関数についての全ての情報を持っていますから, 統計的正則モデルであってもなくても情報損失は持ちません. ベイズ法は,サンプルを,いつまでも捨てずに持ち続ける方法です.

統計的正則モデルは,エネルギーを最小にする点と自由エネルギーを最小に する点が,漸近的に同じという,極めて特殊な性質を有しています.この 特殊な性質の上では,最尤推定量は漸近有効性を持ちますが, そうでなければ,最尤推定量は良好な性質を有しておりません.


(3.D) ペア「p(x|w)とφ(w)」として多くの可能性がある場合, 例えば,いくつかのモデルの候補から適切なモデルを選びたい場合や, ハイパーパラメータ(パラメータのパラメータ)を最適化したいとき,Z を最大化する, あるいは F を最小化するという規準がしばしば有用であると考えられています. 経験ベイズ法 (Empirical Bayes Method)あるいは タイプ2最尤法 (Type II maximum likelihood method) と呼ばれたりします. この方法は,実データの解析において推奨されています.実際,非常に 有効であると思います.実データ解析をする人は,まずは,この方法を 試してみるべきでしょう.最尤法やMAP法などのパラメータを1個に決める方法 では,この方法と同じ推測精度に到達することは通常は容易ではないと思います. ただし上記で述べたように,この方法は,平均汎化誤差を最小化する方法と, ぴったりと一致しているわけではありません.

統計的正則モデルであってもなくても,一般に, <確率的複雑さの最小化>と<平均汎化誤差の最小化>は,両立しません. 得られたデータから最も高い確率で確からしいと考えられる「モデルと事前分布」のペアは, 平均汎化誤差を最小にすると期待される「モデルと事前分布」のペアとは異なるのです. これは学習という問題が一般的に持っている性質です.標語的に述べれば,

<知識の発見>と<最良の予測>は両立しない


ということになります.

(注意)このことを聞いたとき,どのように感じるかは,人によって ずいぶん違います.情報科学の研究者の人たちは,「目的が違うのだから, 最適なものが違うのは当然であり,まったく不思議ではない」と感じる場合が多いようです. 一方,物理学の研究者の人たちは, 「真の法則が発見できるということと,最良の予測ができることとは,ぴったりと 同じであるべきである」と感じるようです.これは,おそらく,「モデル」という 概念や重みにおいて,情報科学と物理学では大きな隔たりがあることが原因ではないかと 思います.(例題:電子の質量が正確に予言できるのは,量子電磁力学が真の自然法則であるからと 考えられています).

生物学・環境学・経済学に用いられる「モデル」は,上記の意味での情報科学におけるモデルに近いのか, 物理学における理論に近いのか,それとも,その中間に当たるのか,もっと違う種類の ものなのか,は,かなり微妙な質問で,一様な回答はないものと思います. 数学者のかたが数理科学の研究に挑もうとされるときには,「モデル」という言葉が表すものが, 分野において,場合において,このように様々に異なりうることを認識されておかれるとよろしいでしょう。


(3.E) しばしば,確率モデル p(x|w) だけを絶対視して,事前分布φ(w) を どのように選ぶべきかという疑問を持つ人がありますが, ベイズ推測においては「p(x|w) とφ(w)」のペアがモデル であるということを忘れてはいけません. 確率モデル p(x|w) を客観的なものと感じ,事前分布 φ(w) を 主観的なものだと感じることは,偏った感受性です. 最尤法において,ある確率モデル p(x|w) を用いる先験的な 理由が存在しえないように,ベイズ推測では,ペア「p(x|w) とφ(w)」を 用いる先験的な理由は存在しえません.ただし,どちらの場合でも, 与えられたデータに対してそれらの良さをデータをもとに 評価するための規準を作ることは可能です.

(注意) 統計的推測において,データ解析者はデータから完全に 客観的であることはできません.有限個の離散データだけから, モデルや仮定を用いずに統計的推測をすることはできません. データ解析者は,自分が用いている方法やモデルが, どの程度に主観的であるのかについて自覚を持つ必要があります (これは案外,容易ではありません).世の中には,統計的推測に主観を 入れることに違和感を感じ,主観を入れずに統計的推測をしたい と切望する人が多いのですが,そもそも 有限個のデータから無限次元の空間(それも連続濃度以上の集合)の中のひとつを 推測するのですから,主観なしでは統計的推測はできないのです.ノンパラメトリック 推測の場合も同じです.

(注意)統計的推測における理論の役割のひとつに, データ解析者が自分でも気づかずにいたかもしれない主観の影響が どの程度であるのかを正しく知ることができるという点をあげることができます. 世界の姿を認識することは,すなわち,世界を知ろうとする自己の姿に 気づくことに他ならないわけであります(双対構造).この双対構造から 自由になりたい場合には「統計的推測は決して行わない」という選択を するほかありません.標語的に述べれば

誤差が零になる統計的推測は,存在しません.

主観を使わない統計的推測も,存在しません.


ということになります. この二つの理解の上に学習理論や統計的推測はあるわけです.人間は,生きて行く以上, 誤差や主観から自由になることはできないので,自分が,どのくらいの誤差や主観に基づいているかを 自覚することが大切であるということでしょうか.

(注意)例として,例えば混合正規分布の混合比に関する事前分布として, ディレクレ分布を用いた場合を考えてみましょう.ディレクレ分布のハイパー パラメータが学習に及ぼす影響は,扱っているデータの次元に応じて変化し, データの次元に対応して異なる点において 相転移 を持ちます. すなわち,事前分布は,「事前知識は,どのように表現されるのが自然か」という 主観的なものよりも,むしろ,数理的な構造によって推測に影響を与えています. このようなことは学習理論や統計的推測の理論を作って初めてわかることです.

事前分布を考えるとき,人文科学的に発想してしまう人が少なくないのですが (いわゆる「事前知識とはなんだろうか」という問いかけです),むしろ, 数理科学によって初めて,その構造を正しく捉えることができます. 人文科学の問題が,すべて数理科学を深めれば解決される,ということは, とても考えられません.しかしながら,事前分布の問題に関しては,おそらく,人文科学の 課題ではなく,数理科学および科学技術の課題であろうと感じられます. ⇒ 事前分布について .


(3.F) ベイズ法を計算機で実行する場合,事後分布による平均操作が必要になります. 「ベイズ法は,精度は申し分ないが,事後分布での平均操作が 大変である」というのは,昔はよく聞かれた話でした. しかしながら,事後分布の生成法は,日々,発展を遂げています. 近年では,マルコフ連鎖モンテカルロ法などの確率アルゴリズムの発展により, 従来は困難であると考えられていた平均操作が実現できるようになってきました. 膨大な数の確率変数が複雑に絡み合う問題を解析しなくてはならない課題は, 今,世の中に溢れていますが,その基礎として,確率アルゴリズムの研究は, ますます大切になるであろうと予測されます. また,演算量を減らしたい場合には,事後分布を平均場近似する方法が 非常に有効です.混合指数分布に EM 法を用いている人ならば,プログラムの わずかな改良で変分ベイズ法を実行することが可能であり, 優れた予測精度を安定して持つようにすることができます.


(3.G) 学習モデルが特異点を持つことが学習精度に悪影響を及ぼすと感じる人が あるようです.最尤推定法では確かにその通りですが,ベイズ学習では,その 反対であり,広大なパラメータ空間に特異点があるからこそ,学習モデルは, 優れた学習を行うことができます.神経回路網などの多数のパラメータを含む系では, ベイズ学習の結果得られたパラメータが特異点から離れているというようなことは ほとんど起こりません.特異点の集合はパラメータ集合の中の測度零の集合ですが, 学習の過程のほとんど全てを定めています.よほど,特殊な学習モデルでない限り, そのモデルの学習の結果は特異点の近くにあります.例えば,神経回路網, 混合正規分布,混合2項分布, ベイズネットワーク,隠れマルコフモデル,確率文脈自由文法,ボルツマンマシン, 縮小ランク回帰などは全てそうです.このことが信じられないかたは,得られた パラメータのフィッシャー情報行列を調べてみてください.その固有値の中には, 特別に0に近い値のものが幾つかあるはずです.

脳や神経回路、あるいは生体システムなどの巨大な自由度を持つ非線形系において, 数理モデルに基づいて考察するとき,それらが実世界の中にあるならば, 特異点の影響を受けない状況にあるとは到底考えられません。 高度に複雑な特異点はマクロな視点で見たときの挙動にも大きな影響を 与えているはずです.そのような世界に挑もうとする研究者のかたには,それらは, 自由場からの摂動で記述される(正規分布で近似される)世界ではないこと, つまり,統計的正則モデルではないこと,が非常に重要であることを御理解いただきたいと 思います.(当たり前のことを言っていると感じられるかたが多いと 思います.しかしながら,脳や神経回路、生物システムの研究の場面では,そこに 現れるモデルが統計的正則モデルであると思われているケースが多いようです. 統計的正則モデルであると考えられてしまうと,統計的推測や統計的検定において, 誤った結論が導出されますので注意が必要であると思います).


(3.H) 汎化誤差 G,学習誤差 T,対数周辺尤度 F は,統計的正則モデルで, 学習モデルが真の分布を含んでいるときに, データ数が多いときの平均値の主要項は

E[G] = d/(2n)

E[T] = - d/(2n)

E[F] = nS + (d/2)log n + 定数


となることは1970年代には知られていました.ここで S は真の分布のエントロピーです. また d はパラメータ空間の次元です. それぞれ,AIC および BIC と呼ばれる情報量規準の数理的基礎を与えています. 統計的正則モデルでないときは,G, T, F の挙動は長い間知られていませんでしたが, 近年,

E[G] = λ/n

E[T] = (λ-2ν)/n

E[F] = nS + λlog n -(m-1)loglog n + 定数


であることが知られるようになりました.ここで λとm は, 確率モデルのゼータ関数の極と位数であって,具体的なモデルに対して算出することも 可能です. 定数λは,代数幾何学において,代数多様体の分類や極小モデルの研究に現れる 対数閾値 と呼ばれる双有理不変量と一致します.また, 定数νは 特異ゆらぎ と呼ばれる双有理不変量です. 一般に定数λとmは,真の分布に依存しますので,真の分布がわからなければ推測できないと 感じる人もあるかもしれませんが,実は, 汎化誤差 G をデータだけから不偏推定することも可能です. なぜなら,次の方程式が成り立つからです.

E[G] = E[T] + E[V] /n ---(☆)


ここで T は学習誤差であり,V は汎関数分散と呼ばれる量です. T も V も真の情報源がわからない場合でも,データだけから算出できます. V の平均値は双有理不変量 νの2倍になっています(E[V]=2ν). 特異ゆらぎが数学において,どのような意味を持つかは,まだよくわかっていません.

最後の関係式(☆)は,真の分布,学習モデル,事前分布が何でも成り立ちます. すなわち,真の分布が学習モデルに含まれていても,いなくても, 真の分布が学習モデルの特異点に相当する場合でも,そうでない場合でも, 成立します.特殊な場合として,学習モデルが統計的に正則な場合には, AIC や TIC を与える式と一致します(もちろん,AICやTICを与える式は, 統計的正則モデルでなければ成り立ちません).

この関係式(☆)は, ベイズ事後分布をボルツマン分布と考えたときの3個の観測量の平均値の間に 普遍的(ユニバーサル)に成り立つ関係式なので, 学習の状態方程式 と呼んでいます.

(注意)気体の状態方程式 PV=nRT は,どんな分子に対しても(自由運動する粒子なら) 成り立ちます. 学習の状態方程式 E[G]=E[T]+E[V]/n は,(十分 n が大きければ) どんな学習モデルに対しても成り立ちます. 気体の状態方程式を用いれば,我々は気体がどんな分子で出来ているかを知らなくても, 体積と温度から圧力を知ることができます.同じように,学習の状態方程式を用いれば, 我々は真の分布が何であるかを知らなくても,学習誤差と汎関数分散から,汎化誤差を 知ることができます.

(注意)気体の状態方程式を導出する際の統計力学は,ひとつの確率分布に関する 平均を考えるものですが,学習の状態方程式の導出では,サンプルの現れ方に関する平均と, 事後分布に関する平均が2重で現れます.学習理論は,統計力学としては,ハミルトニアンが 確率的である場合に相当します.なお,問題として似ているとは言っても, 学習の状態方程式の導出は物理学で開発された方法ではできません. 代数幾何,ゼータ関数,経験過程など,いろいろな数学的な構造を考える必要があります. (これらは,数理物理学なら,ごく普通に現れるものかも知れません.) また,現れてくる量は,純粋数学においても,重要な意味を持つことが 少なくありません.


学習理論において,まだわかっていないことがたくさんあります. 「学習理論において,数学的構造は遥かな過去に 解き明かされており,現代では,それを応用することしかない」という意見は, 学習理論を理解している人の意見ではありません.学習理論においては,最も本質的で, 最も深く豊かな数学的構造が,これから解き明かされるべきものとして,まだ 未解明の世界の中に眠っています.このページに書かれていることは,小さな 出発点にすぎず,数学的構造の中心部分に光を当てた研究者は,まだ 世界中にひとりもいないのです.

(2009年4月21日作成).