黒木玄 Gen Kuroki is a user on mathtod.online. You can follow them or interact with them if you have an account anywhere in the fediverse. If you don't, you can sign up here.

mathtod.online/@tanutarou/7347

汎化損失を理解するためにはKullback-Leibler情報量とSanovの定理について理解する必要があり。

私が繰り返し述べている個人的な意見ですが、以下の3つは統計学を学ぶためには必須の確率論の教養です。

1. 大数の法則: i.i.d. $X_k$ について$$
\frac{1}{n}\sum_{k=1}^n X_k\to\mu
$$2. 中心極限定理:$$
\frac{1}{\sqrt{n}}\sum_{k=1}^n(X_k-\mu)\to\mathrm{Normal}(0,\sigma)
$$3. Sanovの定理: 各$X_k$の確率密度が$p(x)$のとき$$
(\text{$X_1,\ldots,X_n$ の分布が $q(x)$ に近い確率})\\
=\exp(-nD(q||p)+o(n)).
$$ここで$$
D(q||p) = \int q(x)\log\frac{q(x)}{p(x)}\, dx.
$$

続き。統計学では未知の確率分布 $q(x)$ に対してある確率分布 $p(x)$ で $q(x)$ を近似的にシミュレートできるものを作りたいわけです。(「パラメータの推定」という中途半端な発想にトラップされることは有害。「確率分布の推定」という発想が必須!)

Sanovの定理は $p(x)$ に従って生成した乱数列 $X_1,\ldots,X_n$ が $q(x)$ をどれだけうまくシミュレートできるかはKullback-Leibler情報量 $D(p||q)$ で記述されることを主張しています。

$p(x)$ に従って生成した乱数列 $X_1,\ldots,X_n$ の分布は大数の法則より $p(x)$ に近付くので、$p(x)\ne q(x)$ ならば $X_1,\ldots,X_n$ の分布が $q(x)$ に近い確率は0に近付きます。0に近付く速さがKL情報量だというのがSanovの定理。$p(x)$ による $q(x)$ のシミュレーションがボロが出る速さは小さい方が良い。

続く

黒木玄 Gen Kuroki @genkuroki

Kullback-Leibler情報量の定義は$$
D(q||p) = \int q(x)\log\frac{q(x)}{p(x)}\, dx.
$$これは$$
D(q||p) = S(q) + G(q||p), \\
S(q)=\int q(x)\log q(x)\,dx,\\
G(q||p)=-\int q(x)\log p(x)\,dx
$$と書き直せます。$S(q)$ は分布 $q(x)$ のエントロピーと呼ばれており、$G(q||p)$ が「汎化損失」です。

$S(q)$ は $p(x)$ を含まないので、2つの $p(x)$ のどちらがよりよく $q(x)$ をシミュレートできるかはどちらの「汎化損失」が小さいかを調べればわかるわけです。

このアイデアを実用的な形式で実現した赤池情報基準AICは素晴らしい業績。

未知の $q(x)$ が生成したサンプルの情報だけから予測分布の汎化損失を推定する手段がある!

$q(x)$ のエントロピーの推定は難しいです。だから、KL情報量そのものの推定も難しい。

· Web · 0 · 1

以上のような事情になっているので、「パラメーターの推定」というトラップされると有害な発想から逃れて、より普遍的な「確率分布の推定」という発想をできるようになるためにはKullback-Leibler情報量とSanovの定理に関する教養が必須になります。

この方向での教育はおそらく世界的にかなりお寒い状況でたぶん統計学を教えている側も理解していないケースが多いと思う。

実際、ベイズ統計の大家である有名なゲルマンさんでさえ、KL情報量の定数差を除いての推定(汎化誤差の推定)が重要な点を理解せずに、「WAICよりもよい一個抜き交差検証の推定値がある」という内容の共著論文を書いて、渡辺澄夫さんにいちゃもんを付けていたりします。その件については渡辺澄夫さんの方が正しい。

watanabe-www.math.dis.titech.a

KL情報量のSanovの定理の解説は情報理論の教科書を見れば載っています。

個人的に日本語のよる易しい解説が見当たらないないように思えたので、自前で解説文を書きました。理学部物理学科の学部生が想定読者です。

genkuroki.github.io/documents/
Kullback-Leibler 情報量と Sanov の定理

その他に関連の補足的な解説文に

genkuroki.github.io/documents/
確率論入門

genkuroki.github.io/documents/
最尤法とカイ二乗検定の基礎

があります。

KL情報量と昔ながらの平均と分散の推定値を求める統計学の関係は次の練習問題(大学1年レベル)を解けばわかります。

問題: 確率分布 $q(x)$ が与えられているとき、正規分布 $p(x)$ でKL情報量 $D(q||p)$ を最小にするものは、平均と分散が $q(x)$ と一致するものになることを示せ。

未知の確率分布 $q(x)$ の平均と分散を推定することは、未知の確率分布をもっともよくシミュレートできそうな正規分布を推定することと同じです。この例は「パラメーターの推定」を「確率分布の推定」にどのように持ち上げればよいかに関する最も易しい例になっています。この例は、正規分布よりもずっと一般的な指数型分布族(例えばガンマ分布)に一般化されます。

Kullback-Leibler情報量の定数差を除いての推定(汎化誤差の推定)と昔ながらの仮説検定の最もわかりやすい接点は最尤法における赤池情報量基準AICと対数尤度比検定の直接的な関係にあります。

以下、最尤法が上手く行く設定を仮定。

モデル1のパラメーターの1つを固定して得られるモデルをモデル0とします。「サンプルを生成した未知の確率分布がモデル0に含まれる」という仮定(帰無仮説)のもとで、モデル1の最大尤度とモデル0の最大尤度の比の対数の2倍(対数尤度比)はサンプルサイズを大きくしたとき漸近的に自由度1のカイ二乗分布に従います。

対数尤度比が3.84以上ならばカイ二乗検定によって有意水準5%で「サンプルを生成した未知の確率分布がモデル0に含まれる」という帰無仮説は棄却されます。そしてその条件はモデル1のAICがモデル0のAICより1.84以上小さいことと同値。

genkuroki.github.io/documents/
に解説を書いておきました。

mathtod.online/@genkuroki/7325

nbviewer.jupyter.org/gist/genk

にモデル1のパラメーターを $\nu$ 個固定して得られるモデル0にサンプルを生成している確率分布が含まれるときに、モデル1と0の対数尤度比が自由度 $\nu$ のカイ二乗分布に従うことの数値計算例があります。

自信がない場合には速やかに数値計算が基本。

ところで、カイ二乗分布は正規分布の次に重要な確率分布だと思います。

正規分布をすでに知っている人はその次にカイ二乗分布について理解するとよいと思う。

中心極限定理で普遍的に正規分布が出て来て、正規分布が出て来ると必ずカイ二乗分布も出て来る。s次元の多変量正規分布が出て来ると必ず自由度sのカイ二乗分布モデル出て来る。

Kullback-Leibler情報量$$
D(q||p) = \int q(x)\log\frac{q(x)}{p(x)}\,dx
$$が $p(x)=q(x)$ のとき0になることは自明ですが、さらに$$
\frac{1}{2}\left(\int |q(x)-p(x)|\,dx\right)^2 \leqq D(q||p)
$$も満たしているので、$D(q||p)\to 0$ ならば $p(x)$ は $q(x)$ に $L^1$ 収束します。この辺のことも

genkuroki.github.io/documents/

に書いておきました。

この発言からたどれるスレッドと

mathtod.online/@genkuroki/7200

のスレッドは同じような話。

何度も繰り返し同じ話をしているが、今回は mathtodon の強みを利用して、数学的内容をかなり詳しく説明した。

私が気になっているのは、統計学を教わる側ではなく、教えている側の理解の仕方。

ベイズ統計と検定については、

渡辺澄夫著『ベイズ統計の理論と方法』の第6.4節に、

「パラメーターの値 $w_1,w_0$ の比較に関する最強力検定は尤度比検定である」

というネイマン・ピアソンの補題が自明な方法で

「事前分布 $\varphi_1(w),\varphi_0$ の比較に関する最強力検定も尤度比検定である」

という結果に拡張できるということが書いてあります。自明な話です。

「事前分布を持ち出すと頻度主義から主観主義的な確率観に移ったことになる」のような馬鹿げた意見を述べる大学の先生には問題があることがよくわかるクリアな結果。

パラメーターの値をデルタ分布に置き換え、デルタ分布を一般の事前分布に置き換えるだけの議論。極めて自明。

事前分布にも「頻度主義的」な検定の枠組みを作ることができる。

最尤法ではなく、ベイズ推定法を採用したから、「尤度比検定が最強力検定である」という結果が拡張可能になった。(p.185 注意67(2)でそのことが指摘されています。)

「検定」の手法が大事だと考えるなら、ベイズ統計も大事だという話になる。

genkuroki.github.io/documents/
確率分布の尤度比検定は最強力検定

「確率分布 $p_0(x), p_1(x)$ の検定において($p_0(x)$ の方が帰無仮説)、尤度比函数 $L(x)=p_1(x)/p_0(x)$ による検定が最強力である」という一般的な定理(Neyman-Pearsonの補題とBayes検定の最強力性を特別な場合に含む)の証明(ほぼ自明)の紹介。

3頁で短いです。自明なので長くなりようがない。説明を詳しくして3頁まで伸ばした感じ。

注意しなければいけないことは、最尤法のWilksの定理の意味での尤度比検定(カイ二乗検定)には上の一般的結果は適用できないこと。

それに対して、事前分布のあいだのベイズ検定が最強力検定であることは上の自明な結果の特別な場合に過ぎない。

ベイズ検定の最強力性はネイマン・ピアソンの補題の一般化になっています。

「頻度主義 vs. ベイズ主義」とかバカバカし過ぎ。科学で必要なのは、主義ではなく、数学的定理。

Kullback-Leibler情報量の$$
D(q||p)=G(q||p)-I(q),\\
G(q||p)=-\int q(x)\log p(x)\,dx,\\
I(q)=-\int q(x)\log q(x)\,dx
$$という表示中の汎化損失 $G(q||p)$ とシャノン情報量 $I(q)$ にはそれぞれ「可逆圧縮のサイズ」と「その下限」という「情報量」的な解釈もあります。そのとき、KL情報量は「可逆圧縮のサイズが理想的な下限よりも大きな分」(損失)と解釈できるわけです。

もしかしたら、こちらの方がKullback-Leibler情報量の解釈としては有名かも。その辺のことは、いつも紹介している解説文

genkuroki.github.io/documents/

の「10 Mcmillanの不等式と平均符号長」に書いてあります。

しかし、可逆圧縮での損失話と予測分布での損失の話はちょっと違うので、Sanovの定理についても知っておいた方がよいです。

Mcmillan の不等式の証明は所謂

tensor power trick
terrytao.wordpress.com/2008/08

の最も易しい例になっています。(Weil予想は tensor power trick の高級な例になっている。)

genkuroki.github.io/documents/
確率分布の尤度比検定は最強力検定

で、渡辺澄夫著『ベイズ統計の理論と方法』第6.4節の意味でのベイズ検定を紹介したのでした。

二項分布モデルの通常の両側仮説検定はベイズ検定の特別な場合になっているんですね。

このことに気付いて腑に落ちた点があります。

二項分布モデルでは確率 $p$ のみがパラメーターで、よくある両側仮説検定では

帰無仮説:$p=1/2$
対立仮説:$p\ne 1/2$

を比較するのですが、確率論的に対立仮説の意味がよくわかりません。$p\ne 1/2$ って確率論的にどのように定式化するの?

これに対して、通常の両側仮説検定と同値なベイズ検定では

帰無仮説:事前分布は $\delta(p-1/2)$
対立仮説:事前分布は区間 $(0,1)$ 上の一様分布

を考えます。こちらは明瞭に確率論の言葉で述べられている。

これが腑に落ちた点の一つ目です。

続く

腑に落ちた点の二つ目は、通常の両側仮説検定の奇妙さの意味が、ベイズ検定の方では明瞭になっていることです。

ベイズ検定は最強力検定ではあるのですが、単に「同じ有意水準で検出力が最大であること」を意味するに過ぎず、帰無仮説が棄却されたときに、帰無仮説よりも対立仮説の尤度の方が大きくなることを意味しません。

対立仮説は、検定にかけたサンプルをうまく説明できなくても全然問題ない。

確率 $p$ に関する0~1区間の一様分布で二項分布の確率
$$
\binom{n}{k}p^k(1-p)^{n-k}
$$
の平均を取ると、$1/(n+1)$ になり、$k$ によらなくなります。($k$ について離散一様分布になる。)

こんなモデルで現実に得られるサンプルをうまく説明できるはずがない。

それにもかかわらず、尤度比検定の数学的仕組みはうまく機能する。

これは、仮説検定の話を聞いたときに感じる違和感を、ベイズ検定としての解釈はうまく数学的に表現していると思いました。

二項分布モデルのベイズ検定をJulia言語で実装したコードが次のリンク先にあります。そこのコメントにはさらに詳しい説明があります。

nbviewer.jupyter.org/gist/genk
二項分布モデルのベイズ検定

よくある統計学の教科書に書いてある二項分布モデルの両側仮説検定はベイズ検定の特別な場合です。

ここまで来ると、「仮説検定とベイズ統計は極めて相性が良い」と言わざるを得ないんじゃないですかね?

ベイズ検定の枠組みを使うと、二項分布モデルの両側仮説検定の曖昧な部分を極めて明瞭に定式化できる。

みんなにお願い:以上の件について、私が何か勘違いしていたら、教えて下さい。お願いします。

genkuroki.github.io/documents/

にベイズ検定の例を追加しました。ベイズ検定は通常の両側検定の一般化になっていることがわかる計算を追加しておきました。

普通の統計学の教科書に書いてある、二項分布の両側検定はもろにベイズ検定の特別な場合。

二項分布モデル$$
p(k|\theta)=
\binom{n}{k}\theta^k(1-\theta)^{n-k}
$$に関する2つの事前分布$$
\varphi_0(\theta)=\delta(\theta-\theta_0), \\
\varphi_1(\theta)=1 \quad(0<\theta<1)
$$の前者を帰無仮説、後者を対立仮説とするベイズ検定は、通常の両側仮説検定と完全に同等。何の違いもない。

ただし、帰無仮説が棄却されても対立仮説がもっともらしいことには全然ならない。

この発言が繋がっているスレッドの続きの話が以下のリンク先にあります。

mathtod.online/@genkuroki/7646

mathtod.online/@genkuroki/7652

私の最近の解説文

genkuroki.github.io/documents/
確率分布の尤度比検定は最強力検定

の「売り」は渡辺澄夫さんの意味での「ベイズ検定の最強力性」(←他の意味にも使われる言葉なので注意)はよりシンプルな「2つの確率分布に関する尤度比検定の最強力性」の特殊な場合であることを明瞭に示していることです。

数学的には完全にtrivialな話。

確率分布 $p_0(x)$ が帰無仮説で 確率分布 $p_1(x)$ が対立仮説のとき、尤度比函数 $L(x)=p_1(x)/p_0(x)$ は最強力検定を与える。証明は最強力検定の定義を知っていればほぼ自明。

渡辺澄夫さんの教科書の意味での「ベイズ検定の最強力性」はこれの特別な場合。

最尤法が有効な場合には、$$
\widetilde{L}(x) = \frac{p(x|\hat w_x)}{p(x|w_0)}
$$の形の尤度比函数が尤度比検定でよく使われます。ここで $\hat w_x$ はサンプル $x$ が与えられたときの尤度 $p(x|w)$ を最大にするパラメーター $w$ です。 $w_0$ は帰無仮説を与えるパラメーター。

分子の $p(x|\hat w_x)$ は $x$ に関する確率密度函数ではないので、その場合は、私の解説文にある「2つの確率分布 $p_0(x)$, $p_1(x)$ の尤度比検定」にはなっていません。

それに対して、ベイズ統計における$$
p_1(x) = \int p(x|w)\varphi_1(w)\,dw, \\
p_0(x) = \int p(x|w)\delta_{w_0}(w)\,dw = p(x|w_0)
$$を使った$$
L(x) = \frac{p_1(x)}{p_0(x)}
$$であれば、「2つの確率分布 $p_0(x)$, $p_1(x)$ の尤度比検定」になっています。

渡辺澄夫さんは『ベイズ統計の理論と方法で』の第6.4節で「ベイズ検定」を定義して、その最強力性を証明しています。

数学的には、定義が良いものかどうかは、その定義が良い定理を導くかどうかで判定されるので、渡辺澄夫さんによる「ベイズ検定」の定義の仕方も「良い」と感じられます。(数学的に何かを定義をしたら、その定義が良いものであることの証拠を提出しないとダメだと思う。定義の良し悪しの評価の対象になる。証拠は大事。)

渡辺さんと同じようなことを「ベイズ検定」の名のもとで説明している人たちを見付けようとググってみたのですが、渡辺さん達の研究しか見付けることができませんでした。見付けたのはこれ↓

watanabe-www.math.dis.titech.a

渡辺さんの意味での「ベイズ検定」は、帰無仮説と対立仮説の成立している事前確率を設定して云々することではありません。

この点で誤解するとまずい。

「ベイズ検定」という用語の定義に関する注意の続き。

たぶん、渡辺澄夫さんの意味で「ベイズ検定」という用語を使う人は少数派で、次のリンク先の意味で「ベイズ検定」という用語を使う人の方が多数派だと思います。

nlp.dse.ibaraki.ac.jp/~shinnou

帰無仮説と対立仮説それぞれが成立している事前確率を設定し、サンプルに基いて、帰無仮説が成立している事後確率を計算し、その確率の大きさで検定する(したつもりになる)のが、多数派の意味での「ベイズ検定」のようです。

渡辺澄夫さんの意味での「ベイズ検定」はこれとは全然違っていて、二項分布モデルの場合には通常の仮説検定を明瞭に含んでおり、かつ、最強力検定であることが容易に証明でき(ネイマン・ピアソンの補題の一般化)、正則でない確率モデルでも使用できます。

これらを明瞭に区別しないとまずい。

数学的に明瞭な利点を持つのは後者の方。

例題:誕生した赤子98451人中49581人が男の子で残りの48870人が女の子だった。帰無仮説を「男の子の生まれる確率はちょうど0.5」とし、対立仮説を「0.5ではない」としたときの有意水準5%の仮説検定を実行せよ。

通常の仮説検定:帰無仮説のもとで男の子が98451人中49581人以上生まれる確率の2倍(両側検定なので2倍)は2.35%なので帰無仮説は有意水準5%で棄却される。

渡辺澄夫さんの意味でのベイズ検定の例:帰無仮説の事前分布は $p=0.5$ のデルタ分布、対立仮説の事前分布は $p$ に関する一様分布だとすると、通常の仮説検定と全く同じ結果になる。

多数派の意味でのベイズ検定の例:帰無仮説と対立仮説が正しい事前確率はどちらも0.5だと仮定する。この事前確率のもとで98451人中49581人が男の子だったというデータを使うと、帰無仮説が正しい事後確率は約95%になる。帰無仮説がもっともらしいという結論が得られた。

詳しくは
en.wikipedia.org/wiki/Lindley%
を見て下さい。

上の例題をJulia言語で計算した例が

nbviewer.jupyter.org/gist/genk
二項分布モデルのベイズ検定

にあります。

Out[2]: 2.36%

が通常の仮説検定のp値(正規分布近似せずに二項分布で直接計算)で、

Out[9]: 2.33%

がモンテカルロ法による渡辺澄夫さんの意味でのベイズ検定(の通常の仮説検定と一致する場合)の数値計算結果です。モンテカルロ法なので誤差が出ています。理論的には以上の2つは誤差無しで一致しています。そして、

out[10]: 95%

が多数派の意味でのベイズ検定の例(帰無仮説と対立仮説の事前確率が50%、50%の場合)です。

mathtod.online/@genkuroki/7669
に関連の話題の続きがあります。

特に次のリンク先のJupyter notebookは重要。

nbviewer.jupyter.org/gist/genk
t分布による線形回帰の実験

もしかしたら、上の方でノードの紹介で混乱して、このノートを紹介しているつもりで、他のノートにリンクをはっていたりしたかも。

このノートでは、MCMCシミュレーションで事後分布のチェインを求めた後に、それを使って最尤法で近似的にモデルを解くことを行っていたりします。

最尤法とベイズ推定法は仲の良い兄弟のようなものだと思います。それぞれに、利点と欠点がある。