はじめに
正規分布の条件付分布は機械学習の予測においてほぼ確実に登場する重要人物です。逆に言えば機械学習の予測式はほぼ正規分布の条件付分布をもとにしており、この条件付分布さえ覚えてしまえば機械学習の式なんて覚える必要がなくなります。
さて、その正規分布の条件付分布について、その平均と分散はそれぞれ次のように書くことができます。
E[\mathbf{y_1}|\mathbf{y_2}]=\boldsymbol{\mu_1}+\mathbf{V_{12}V_{22}^{-1}}(\boldsymbol{y_2-\mu_2})
Var[\mathbf{y_1}|\mathbf{y_2}]=\mathbf{V_{11}-V_{12}V_{22}^{-1}V_{21}}
ここで、$y=ax+b$の傾き$a$の推定値が$\hat{a}=\frac{Cov(x,y)}{Var(x)}$となることを知っている方は、期待値の式における$\mathbf{V_{12}V_{22}^{-1}}$が$\mathbf{y_1}$を$\mathbf{y_2}$で回帰した傾きであり、その回帰式を$(\boldsymbol{\mu_1,\mu_2})$を通るように移動させたものでしかないことが直感的にわかるかと思います。
一方、分散の式の方は「条件づけることにより$\boldsymbol{V_{11}}$よりも分散がやや小さくなる」こと程度しか読み取れず、特に後半の$\mathbf{V_{12}V_{22}^{-1}V_{21}}$が何を表すのか直感的なイメージを持てずにいました。
今回はこの後半部分が何を意味しているのかについて、説明していこうと思います。これを読み切るころには、$\mathbf{V_{11}-V_{12}V_{22}^{-1}V_{21}}$を覚える必要はなくなっていると思います。お楽しみに。
期待値の期待値
さて、ここでは前準備として、$E[\mathbf{y_1}|\mathbf{y_2}]$の期待値を考えます。この期待値は$\mathbf{y_1}$に対する期待値ですので、$\mathbf{y_1}$依存性はなくなっていますが、また$\mathbf{y_2}$依存性は残っています。したがって$E[\mathbf{y_1}|\mathbf{y_2}]$を$\mathbf{y_2}$依存する確率変数として見なすことができます。この$\mathbf{y_2}$に対して期待値を取ると
E[E[\mathbf{y_1}|\mathbf{y_2}]]=\boldsymbol{\mu_1}+\mathbf{V_{12}V_{22}^{-1}}(E[\boldsymbol{y_2}]-\boldsymbol{\mu_2})
ここで$E[\boldsymbol{y_2}]=\boldsymbol{\mu_2}$なので、
E[E[\mathbf{y_1}|\mathbf{y_2}]]=\boldsymbol{\mu_1}
ということで$E[\mathbf{y_1}|\mathbf{y_2}]$の期待値は$\boldsymbol{\mu_1}$となることが分かりました。
分散の直観的理解
それでは上記の結果を使いながら$\mathbf{V_{11}-V_{12}V_{22}^{-1}V_{21}}$を解釈していこうと思います。
まず、与式を次のように変形します。
\mathbf{V_{11}-V_{12}V_{22}^{-1}V_{21}}=\mathbf{V_{11}-V_{12}V_{22}^{-1}V_{22}V_{22}^{-1}V_{21}}
さて、やや天下り的ですが、ここで$\boldsymbol{V_{22}}=E[(\boldsymbol{y_2}-\boldsymbol{\mu_2})(\boldsymbol{y_2}-\boldsymbol{\mu_2})^T]$を真ん中に代入します。
\mathbf{V_{11}-V_{12}V_{22}^{-1}E[(\boldsymbol{y_2}-\boldsymbol{\mu_2})(\boldsymbol{y_2}-\boldsymbol{\mu_2})^T]V_{22}^{-1}V_{21}}
期待値を拡張すると
\mathbf{V_{11}}-E[\mathbf{V_{12}V_{22}^{-1}(\boldsymbol{y_2}-\boldsymbol{\mu_2})(\boldsymbol{y_2}-\boldsymbol{\mu_2})^T V_{22}^{-1}V_{21}}]
さらに$\boldsymbol{V_{21}}^T=\boldsymbol{V_{12}}$となることを活用して、
\mathbf{V_{11}}-E[(\boldsymbol{V_{12}V_{22}^{-1}}(\boldsymbol{y_2}-\boldsymbol{\mu_2}))(\boldsymbol{V_{12}V_{22}^{-1}}(\boldsymbol{y_2}-\boldsymbol{\mu_2}))^T]
よって
\mathbf{V_{11}-V_{12}V_{22}^{-1}V_{21}}=\mathbf{V_{11}}-E[(\boldsymbol{V_{12}V_{22}^{-1}}(\boldsymbol{y_2}-\boldsymbol{\mu_2}))^2]
さて、ここで期待値の中身$\boldsymbol{V_{12}V_{22}^{-1}}(\boldsymbol{y_2}-\boldsymbol{\mu_2})$が$E[\mathbf{y_1}|\mathbf{y_2}]$の第二項であることを思い出すと、以下が成り立つことがわかります。
Var[E[\mathbf{y_1}|\mathbf{y_2}]]=E[(E[\mathbf{y_1}|\mathbf{y_2}]-\boldsymbol{\mu_1})^2]=E[(\boldsymbol{V_{12}V_{22}^{-1}}(\boldsymbol{y_2}-\boldsymbol{\mu_2}))^2]
よって与式は
\mathbf{V_{11}-V_{12}V_{22}^{-1}V_{21}}=\mathbf{V_{11}}-Var[E[\mathbf{y_1}|\mathbf{y_2}]]
結局、可読性が低かった$\mathbf{V_{12}V_{22}^{-1}V_{21}}$は、$\mathbf{y_1}$を$\mathbf{y_2}$で回帰した回帰直線で説明される分散のサイズを表していたことが分かります。
分散の分解としての理解
これまで、ちまちま説明をしていましたが次に示す分散の公式を使えば一瞬で説明がつきます。
一般的な分散の公式より以下が成り立ちます。
Var[\mathbf{y_1}]=E[Var[\mathbf{y_1}|\mathbf{y_2}]]+Var[E[\mathbf{y_1}|\mathbf{y_2}]]
これを変形すると
E[Var[\mathbf{y_1}|\mathbf{y_2}]]=Var[\mathbf{y_1}]-Var[E[\mathbf{y_1}|\mathbf{y_2}]]
ここで$Var[\boldsymbol{y_1}]=V_{11}$、$Var[E[\mathbf{y_1}|\mathbf{y_2}]]=\boldsymbol{V_{12}V_{22}^{-1}V_{21}}$であるので、
E[Var[\mathbf{y_1}|\mathbf{y_2}]]=V_{11}-\boldsymbol{V_{12}V_{22}^{-1}V_{21}}
応用編
最後に、かなり雑にですが、この条件付分布の形が実際に出てくる場面についていくつかご紹介しておきます。
カーネル法
パターン認識と機械学習(prml)の第6章p3にはカーネル法による線形回帰の予測式が次のように書かれています。
y(\mathbf{x})=\mathbf{k}(\mathbf{x})^T(\mathbf{K}+\lambda\mathbf{I})^{-1}\mathbf{t}
ここで$\mathbf{t}$は$y$の観察値、$\mathbf{k}(\mathbf{x})$は$k_n(\mathbf{x})=k(\mathbf{x}_n,\mathbf{x})$を要素に持つベクトル、$\mathbf{K}$は$n$行$m$列の要素を$k(\mathbf{x}_n,\mathbf{x}_m)$とする行列を表しています。また、少し飛躍はありますが、$\lambda$を誤差分散とすると、$(\mathbf{K}+\lambda\mathbf{I})$は$y$の全分散であり、$\mathbf{k}(\mathbf{x})$は$\mathbf{t}$と$y$の共分散であると考えることができます。さらに$\mathbf{t},y$の平均値が$0$であるとするならば、この予測式は線形回帰の式と全く同じ形をしていることが分かります。
カルマンフィルタ
時系列データ解析の方法として有名はカルマンフィルタに出てくる予測式もこの形をしています。時系列データ解析は私の専門ではないので、詳しく式については次のサイトに譲ります。
線形カルマンフィルタってなんでこんな式なの?
推定可能関数の予測式
ここでは詳しく書きませんが、佐々木義之さんの「変量効果の推定とBLUP法」に出てくる推定可能関数$\mathbf{a}^T\mathbf{y}$の予測式もよくよく見ると、(従属変数と独立変数の共分散)/(独立変数の分散)が出てきており、線形回帰式と全く同じであることが分かります。詳しい説明はこちらに譲り、ここでは結果の予測式のみを載せておきます。気になる方は記事をご覧ください。
{\begin{align}
\mathbf{a}^T\mathbf{y}&=\mathbf{k}^T(X^TV^{-1}X)^{-1}X^TV^{-1}\mathbf{y}+C^TV^{-1}(\mathbf{y}-X(X^TV^{-1}X)^{-1}X^TV^{-1}\mathbf{y})
\end{align}\\
}