Kullback-Leibler情報量と最尤推定

Kullback-Leibler情報量(Kullback-Leibler divergence, 以下KL情報量)についての超基本事項と最尤推定との関係についてまとめます。

KL情報量とは

KL情報量とは、二つの確率分布 p(x)p(x)q(x)q(x) がどれだけ近いかを表す指標の一つです。 定義は以下の通りです。

D(p,q)=p(x)logp(x)q(x)dxD(p,q)=\int p(x)\log \frac{p(x)}{q(x)}dx

D(p,q)D(q,p)D(p,q)\neq D(q,p) なので厳密には距離とは言えませんが、二つの確率分布間の近さを測る量となっています。

D(p,q)=p(x)logp(x)q(x)dx=p(x)logq(x)p(x)dxp(x)(q(x)p(x)1)dx=p(x)dxq(x)dx=11=0\begin{align*} D(p,q)&=\int p(x)\log \frac{p(x)}{q(x)}dx\\ &=-\int p(x)\log \frac{q(x)}{p(x)}dx\\ &\geqq -\int p(x)\left(\frac{q(x)}{p(x)}-1\right)dx\\ &=\int p(x)dx - \int q(x)dx \\ &=1-1=0 \end{align*}

より、D(p,q)0D(p,q)\geqq 0 D(p,q)=0p(x)q(x)D(p,q)=0\Leftrightarrow p(x)\equiv q(x) の二つが言えます。 なお、途中の不等号評価には「 logxx1\log x \leqq x-1x=1x=1 のとき等号成立)」を利用しています。

KL情報量の意味

まず情報量についての話をします。 確率 p(x)p(x) で起こる事象 EE が実際に起こったときの情報量 I(E)I(E)

I(E)=logp(x)I(E)=-\log p(x)

で定義します。

これは「よく起こることより稀に起こることの方が実際に観測されたときの情報価値が高い」という考えに基づいていて、確率 p(x)p(x) が0に近い方が I(E)I(E) の値は大きくなります。

さて、情報量という視点からKL情報量を見てみます。

D(p,q)=p(x)logp(x)q(x)dx=p(x)(logp(x)logq(x))dx=p(x)(Iq(x)Ip(x))dx\begin{align*} D(p,q)&=\int p(x)\log \frac{p(x)}{q(x)}dx\\ &=\int p(x)(\log p(x)-\log q(x))dx\\ &=\int p(x)(I_q(x)-I_p(x))dx\\ \end{align*}

Iq(x)Ip(x)I_q(x)-I_p(x)xx が起こったときの情報量の差を表しています。 つまり、KL情報量とは、「二つの確率分布の情報量の差の(一方から見た)期待値」ということになります。

(情報量の話についてはもう少し詳しく勉強した際に追記するかもしれません)

KL情報量と最尤推定

ある未知分布 p0(x)p_0(x) に従う NN 個の独立な観測値 xN=(x1,x2,,xN)x^N=(x_1,x_2,\cdots,x_N) が得られたとき、パラメータ θ\theta で指定される確率分布 p(x;θ)p(x;\theta)p0(x)p_0(x) を近似することを考えます。

KL情報量の観点から θ\theta の推定値を求めていきます。 p0(x)p_0(x)p(x;θ)p(x;\theta) の間のKL情報量は

D(p0,p)=p0(x)logp0(x)p(x;θ)dx=p0(x)logp0(x)dxp0(x)logp(x;θ)dx\begin{align*} D(p_0,p)&=\int p_0(x)\log \frac{p_0(x)}{p(x;\theta)}dx\\ &=\int p_0(x)\log p_0(x)dx- \int p_0(x) \log p(x;\theta)dx\\ \end{align*}

第1項は θ\theta に依存しないため、第2項を最大化するような θ\theta のときKL情報量が最小となり、よく近似されることになります。

とはいえ、 p0(x)p_0(x) は未知分布なのでこのような θ\theta を直接求めることはできません。 そこで第2項 p0(x)logp(x;θ)dx\displaystyle\int p_0(x) \log p(x;\theta)dx

1Ni=1Nlogp(xi;θ)\frac{1}{N}\sum_{i=1}^N \log p(x_i;\theta)

によって近似します。(これは NN\rightarrow\infty のとき、大数の法則により p0(x)logp(x;θ)dx\displaystyle\int p_0(x) \log p(x;\theta)dx の値に収束します。)

つまり、 θ\theta の推定量として 1Ni=1Nlogp(xi;θ)\dfrac{1}{N}\displaystyle\sum_{i=1}^N \log p(x_i;\theta) を最大化するような値を採用することになりますが、これは最尤推定値 θ^(xN)\hat{\theta}(x^N) に他なりません。

今回のまとめ

  • NN\rightarrow\infty のとき、最尤推定値はKullback-Leibler情報量を最小化する(最尤推定とKullback-Leibler情報量の最小化が同値な問題と言える)。

参考
東京大学工学教程「確率・統計Ⅲ」, 駒木文保 清智也
KL情報量を概念的に理解する:https://www.yasukelab.com/entry/2016/06/07/145455

BACK