はじめに
『パターン認識と機械学習』の独学時のまとめです。一連の記事は「数式の行間埋め」または「R・Pythonでのスクラッチ実装」からアルゴリズムの理解を補助することを目的としています。本とあわせて読んでください。
この記事は、2.3.1項の内容です。多変量正規分布から条件付き分布を導出します。
【実装編】
www.anarchive-beta.com
【前節の内容】
www.anarchive-beta.com
【他の節一覧】
www.anarchive-beta.com
【この節の内容】
2.3.1 条件付きガウス分布
2つの変数$\mathbf{x}_a, \mathbf{x}_b$の同時分布$p(\mathbf{x}_a, \mathbf{x}_b)$がガウス分布の場合、一方の変数が与えられたときの条件付き分布$p(\mathbf{x}_a | \mathbf{x}_b)$もガウス分布になることを確認します。
$D$次元ベクトル$\mathbf{x} = (x_1, \cdots, x_D)^{\top}$の分布を、平均$\boldsymbol{\mu}$・分散共分散行列$\boldsymbol{\Sigma}$の$D$次元ガウス分布とします。
$$
p(\mathbf{x})
= p(x_1, x_2, \cdots, x_D)
= \mathcal{N}(\mathbf{x} | \boldsymbol{\mu}, \boldsymbol{\Sigma})
$$
この分布は次の式で定義されます。
$$
\begin{align}
\mathcal{N}(\mathbf{x} | \boldsymbol{\mu}, \boldsymbol{\Sigma})
&= \frac{1}{(2 \pi)^{\frac{D}{2}}}
\frac{1}{|\boldsymbol{\Sigma}|^{\frac{1}{2}}}
\exp \left\{
- \frac{1}{2}
(\mathbf{x} - \boldsymbol{\mu})^{\top}
\boldsymbol{\Sigma}^{-1}
(\mathbf{x} - \boldsymbol{\mu})
\right\}
\tag{2.43}\\
&= \frac{
|\boldsymbol{\Lambda}|^{\frac{1}{2}}
}{
(2 \pi)^{\frac{D}{2}}
}
\exp \left\{
- \frac{1}{2}
(\mathbf{x} - \boldsymbol{\mu})^{\top}
\boldsymbol{\Lambda}
(\mathbf{x} - \boldsymbol{\mu})
\right\}
= \mathcal{N}(\mathbf{x} | \boldsymbol{\mu}, \boldsymbol{\Lambda}^{-1})
\end{align}
$$
ここで、$\boldsymbol{\Lambda}$は精度行列で、分散共分散行列の逆行列で定義されます。
$$
\boldsymbol{\Lambda}
\equiv
\boldsymbol{\Sigma^{-1}}
\tag{2.68}
$$
・パラメータの分割
ガウス分布に従う変数$\mathbf{x}$を2つの変数$\mathbf{x}_a, \mathbf{x}_b$に分割し、対応するパラメータも分割します。
$\mathbf{x}$の始めの$M$個の要素を$\mathbf{x}_a$、残りの$D - M$個の要素を$\mathbf{x}_b$として分割します。
$$
\mathbf{x}
= \begin{pmatrix}
x_1 \\ x_2 \\ \vdots \\ x_D
\end{pmatrix}
= \begin{pmatrix}
\begin{pmatrix}
x_1 \\ \vdots \\ x_M
\end{pmatrix} \\
\begin{pmatrix}
x_{M+1} \\ \vdots \\ x_D
\end{pmatrix}
\end{pmatrix}
= \begin{pmatrix}
\mathbf{x}_a \\ \mathbf{x}_b
\end{pmatrix}
\tag{2.65}
$$
つまり、$M$次元ベクトル$\mathbf{x}_a$と$D - M$次元ベクトル$\mathbf{x}_b$を
$$
\mathbf{x}_a
= \begin{pmatrix}
x_1 \\ x_2 \\ \vdots \\ x_M
\end{pmatrix}
,\
\mathbf{x}_b
= \begin{pmatrix}
x_{M+1} \\ x_{M+2} \\ \vdots \\ x_D
\end{pmatrix}
$$
とします。
対応するように、平均パラメータを分割します。
$$
\boldsymbol{\mu}
= \begin{pmatrix}
\mu_1 \\ \mu_2 \\ \vdots \\ \mu_D
\end{pmatrix}
= \begin{pmatrix}
\begin{pmatrix}
\mu_1 \\ \vdots \\ \mu_M
\end{pmatrix} \\
\begin{pmatrix}
\mu_{M+1} \\ \vdots \\ \mu_D
\end{pmatrix}
\end{pmatrix}
= \begin{pmatrix}
\boldsymbol{\mu}_a \\ \boldsymbol{\mu}_b
\end{pmatrix}
\tag{2.66}
$$
分散共分散行列パラメータも分割します。
$$
\begin{align}
\boldsymbol{\Sigma}
&= \begin{pmatrix}
\sigma_{1,1}^2 & \sigma_{1,2}^2 & \cdots & \sigma_{1,D}^2 \\
\sigma_{2,1}^2 & \sigma_{2,2}^2 & \cdots & \sigma_{2,D}^2 \\
\vdots & \vdots & \ddots & \vdots \\
\sigma_{D,1}^2 & \sigma_{D,2}^2 & \cdots & \sigma_{D,D}^2
\end{pmatrix}
\\
&= \begin{pmatrix}
\begin{pmatrix}
\sigma_{1,1}^2 & \cdots & \sigma_{1,M}^2 \\
\vdots & \ddots & \vdots \\
\sigma_{M,1}^2 & \cdots & \sigma_{M,M}^2
\end{pmatrix} &
\begin{pmatrix}
\sigma_{1,M+1}^2 & \cdots & \sigma_{1,D}^2 \\
\vdots & \ddots & \vdots \\
\sigma_{M,M+1}^2 & \cdots & \sigma_{M,D}^2
\end{pmatrix} \\
\begin{pmatrix}
\sigma_{M+1,1}^2 & \cdots & \sigma_{M+1,M}^2 \\
\vdots & \ddots & \vdots \\
\sigma_{D,1}^2 & \cdots & \sigma_{D,M}^2
\end{pmatrix} &
\begin{pmatrix}
\sigma_{M+1,M+1}^2 & \cdots & \sigma_{M+1,D}^2 \\
\vdots & \ddots & \vdots \\
\sigma_{D,M+1}^2 & \cdots & \sigma_{D,D}^2
\end{pmatrix} &
\end{pmatrix}
= \begin{pmatrix}
\boldsymbol{\Sigma}_{a,a} & \boldsymbol{\Sigma}_{a,b} \\
\boldsymbol{\Sigma}_{b,a} & \boldsymbol{\Sigma}_{b,b}
\end{pmatrix}
\tag{2.67}
\end{align}
$$
共分散行列は対称行列なので、$\boldsymbol{\Sigma}^{\top} = \boldsymbol{\Sigma}$です。また、$\boldsymbol{\Sigma}_{a,a}^{\top} = \boldsymbol{\Sigma}_{a,a}$、$\boldsymbol{\Sigma}_{b,b}^{\top} = \boldsymbol{\Sigma}_{b,b}$であり、$\boldsymbol{\Sigma}_{a,b}^{\top} = \boldsymbol{\Sigma}_{b,a}$です。
精度行列パラメータも同様に分割します。
$$
\begin{align}
\boldsymbol{\Lambda}
&= \begin{pmatrix}
\Lambda_{1,1} & \Lambda_{1,2} & \cdots & \Lambda_{1,D} \\
\Lambda_{2,1} & \Lambda_{2,2} & \cdots & \Lambda_{2,D} \\
\vdots & \vdots & \ddots & \vdots \\
\Lambda_{D,1} & \Lambda_{D,2} & \cdots & \Lambda_{D,D}
\end{pmatrix}
\\
&= \begin{pmatrix}
\begin{pmatrix}
\Lambda_{1,1} & \cdots & \Lambda_{1,M} \\
\vdots & \ddots & \vdots \\
\Lambda_{M,1} & \cdots & \Lambda_{M,M}
\end{pmatrix} &
\begin{pmatrix}
\Lambda_{1,M+1} & \cdots & \Lambda_{1,D} \\
\vdots & \ddots & \vdots \\
\Lambda_{M,M+1} & \cdots & \Lambda_{M,D}
\end{pmatrix} \\
\begin{pmatrix}
\Lambda_{M+1,1} & \cdots & \Lambda_{M+1,M} \\
\vdots & \ddots & \vdots \\
\Lambda_{D,1} & \cdots & \Lambda_{D,M}
\end{pmatrix} &
\begin{pmatrix}
\Lambda_{M+1,M+1} & \cdots & \Lambda_{M+1,D} \\
\vdots & \ddots & \vdots \\
\Lambda_{D,M+1} & \cdots & \Lambda_{D,D}
\end{pmatrix} &
\end{pmatrix}
= \begin{pmatrix}
\boldsymbol{\Lambda}_{a,a} & \boldsymbol{\Lambda}_{a,b} \\
\boldsymbol{\Lambda}_{b,a} & \boldsymbol{\Lambda}_{b,b}
\end{pmatrix}
\tag{2.69}
\end{align}
$$
精度行列も対称行列なので、$\boldsymbol{\Lambda}^{\top} = \boldsymbol{\Lambda}$です。また、$\boldsymbol{\Lambda}_{a,a}^{\top} = \boldsymbol{\Lambda}_{a,a}$、$\boldsymbol{\Lambda}_{b,b}^{\top} = \boldsymbol{\Lambda}_{b,b}$であり、$\boldsymbol{\Lambda}_{a,b}^{\top} = \boldsymbol{\Lambda}_{b,a}$です。
これらの分割した変数とパラメータを用いて、$\mathbf{x}_a$の条件付き分布を導出します。
・二次形式の展開
ここでは、$\mathbf{x}_b$が与えられた下での$\mathbf{x}_a$の分布を考えます。そのため、$\mathbf{x}_a$の影響を見る必要があります。そこで、$\mathbf{x}$の分布(2.43)を$\mathbf{x}_a$について整理します。
多変量ガウス分布の定義式(2.43)に関して、分割した変数とパラメータ(2.65),(2.66),(2.69)を用いて、指数部分の二次形式を展開します。これは、正則化係数には$\mathbf{x}_a$を含まないので、$\mathbf{x}_a$を含む二次形式に注目すればいいためです。
$$
\begin{align}
- \frac{1}{2}
(\mathbf{x} - \boldsymbol{\mu})^{\top}
\boldsymbol{\Sigma}^{-1}
(\mathbf{x} - \boldsymbol{\mu})
&= - \frac{1}{2}
\left(
\begin{pmatrix}
\mathbf{x}_a \\ \mathbf{x}_b
\end{pmatrix}
- \begin{pmatrix}
\boldsymbol{\mu}_a \\ \boldsymbol{\mu}_b
\end{pmatrix}
\right)^{\top}
\begin{pmatrix}
\boldsymbol{\Sigma}_{a,a} & \boldsymbol{\Sigma}_{a,b} \\
\boldsymbol{\Sigma}_{b,a} & \boldsymbol{\Sigma}_{b,b}
\end{pmatrix}^{-1}
\left(
\begin{pmatrix}
\mathbf{x}_a \\ \mathbf{x}_b
\end{pmatrix}
- \begin{pmatrix}
\boldsymbol{\mu}_a \\ \boldsymbol{\mu}_b
\end{pmatrix}
\right)
\\
&= - \frac{1}{2}
\begin{pmatrix}
(\mathbf{x}_a - \boldsymbol{\mu}_a)^{\top} &
(\mathbf{x}_b - \boldsymbol{\mu}_b)^{\top}
\end{pmatrix}
\begin{pmatrix}
\boldsymbol{\Lambda}_{a,a} & \boldsymbol{\Lambda}_{a,b} \\
\boldsymbol{\Lambda}_{b,a} & \boldsymbol{\Lambda}_{b,b}
\end{pmatrix}
\begin{pmatrix}
\mathbf{x}_a - \boldsymbol{\mu}_a \\
\mathbf{x}_b - \boldsymbol{\mu}_b
\end{pmatrix}
\\
&= - \frac{1}{2}
\begin{pmatrix}
(\mathbf{x}_a - \boldsymbol{\mu}_a)^{\top} \boldsymbol{\Lambda}_{a,a}
+ (\mathbf{x}_b - \boldsymbol{\mu}_b)^{\top} \boldsymbol{\Lambda}_{b,a} &
(\mathbf{x}_a - \boldsymbol{\mu}_a)^{\top} \boldsymbol{\Lambda}_{a,b}
+ (\mathbf{x}_b - \boldsymbol{\mu}_b)^{\top} \boldsymbol{\Lambda}_{b,b}
\end{pmatrix}
\begin{pmatrix}
\mathbf{x}_a - \boldsymbol{\mu}_a \\
\mathbf{x}_b - \boldsymbol{\mu}_b
\end{pmatrix}
\\
&= - \frac{1}{2} \Bigl\{
(\mathbf{x}_a - \boldsymbol{\mu}_a)^{\top} \boldsymbol{\Lambda}_{a,a} (\mathbf{x}_a - \boldsymbol{\mu}_a)
+ (\mathbf{x}_b - \boldsymbol{\mu}_b)^{\top} \boldsymbol{\Lambda}_{b,a} (\mathbf{x}_a - \boldsymbol{\mu}_a)
\Bigr. \\
&\qquad \Bigl.
+ (\mathbf{x}_a - \boldsymbol{\mu}_a)^{\top} \boldsymbol{\Lambda}_{a,b} (\mathbf{x}_b - \boldsymbol{\mu}_b)
+ (\mathbf{x}_b - \boldsymbol{\mu}_b)^{\top} \boldsymbol{\Lambda}_{b,b} (\mathbf{x}_b - \boldsymbol{\mu}_b)
\Bigr\}
\\
&= - \frac{1}{2}
(\mathbf{x}_a - \boldsymbol{\mu}_a)^{\top} \boldsymbol{\Lambda}_{a,a} (\mathbf{x}_a - \boldsymbol{\mu}_a)
- \frac{1}{2}
(\mathbf{x}_b - \boldsymbol{\mu}_b)^{\top} \boldsymbol{\Lambda}_{b,a} (\mathbf{x}_a - \boldsymbol{\mu}_a)
\Bigr. \\
&\quad \Bigl.
- \frac{1}{2}
(\mathbf{x}_a - \boldsymbol{\mu}_a)^{\top} \boldsymbol{\Lambda}_{a,b} (\mathbf{x}_b - \boldsymbol{\mu}_b)
- \frac{1}{2}
(\mathbf{x}_b - \boldsymbol{\mu}_b)^{\top} \boldsymbol{\Lambda}_{b,b} (\mathbf{x}_b - \boldsymbol{\mu}_b)
\tag{2.70}
\end{align}
$$
分割した変数とパラメータの二次形式の和になりました。
(練習として)二次形式をそのまま展開して、$\mathbf{x}$について整理すると
$$
\begin{align}
- \frac{1}{2}
(\mathbf{x} - \boldsymbol{\mu})^{\top}
\boldsymbol{\Sigma}^{-1}
(\mathbf{x} - \boldsymbol{\mu})
&= - \frac{1}{2} \Bigl(
\mathbf{x}^{\top} \boldsymbol{\Sigma}^{-1} \mathbf{x}
- \mathbf{x}^{\top} \boldsymbol{\Sigma}^{-1} \boldsymbol{\mu}
- \boldsymbol{\mu}^{\top} \boldsymbol{\Sigma}^{-1} \mathbf{x}
+ \boldsymbol{\mu}^{\top} \boldsymbol{\Sigma}^{-1} \boldsymbol{\mu}
\Bigr)
\\
&= - \frac{1}{2}
\mathbf{x}^{\top} \boldsymbol{\Sigma}^{-1} \mathbf{x}
- \mathbf{x}^{\top} \boldsymbol{\Sigma}^{-1} \boldsymbol{\mu}
- \frac{1}{2}
\boldsymbol{\mu}^{\top} \boldsymbol{\Sigma}^{-1} \boldsymbol{\mu}
\\
&= - \frac{1}{2}
\mathbf{x}^{\top} \boldsymbol{\Sigma}^{-1} \mathbf{x}
- \mathbf{x}^{\top} \boldsymbol{\Sigma}^{-1} \boldsymbol{\mu}
+ \mathrm{const.}
\tag{2.71}
\end{align}
$$
となります。各項はスカラなので、$\mathbf{x}^{\top} \boldsymbol{\Sigma}^{-1} \boldsymbol{\mu} = (\mathbf{x}^{\top} \boldsymbol{\Sigma}^{-1} \boldsymbol{\mu})^{\top} = \boldsymbol{\mu}^{\top} (\boldsymbol{\Sigma}^{-1})^{\top} \mathbf{x}$と転置できます。共分散行列の逆行列は精度行列なので、$(\boldsymbol{\Sigma}^{-1})^{\top} = \boldsymbol{\Sigma}^{-1}$です。
$\mathbf{x}$と無関係な項を$\mathrm{const.}$とおきました。
(式(2.71)を参考にしつつ)式(2.70)を展開して、$\mathbf{x}_a$について整理します。
$$
\begin{align}
- \frac{1}{2}
(\mathbf{x} - \boldsymbol{\mu})^{\top}
\boldsymbol{\Sigma}^{-1}
(\mathbf{x} - \boldsymbol{\mu})
&= - \frac{1}{2} \Bigl(
\mathbf{x}_a^{\top} \boldsymbol{\Lambda}_{a,a} \mathbf{x}_a
- \mathbf{x}_a^{\top} \boldsymbol{\Lambda}_{a,a} \boldsymbol{\mu}_a
- \boldsymbol{\mu}_a^{\top} \boldsymbol{\Lambda}_{a,a} \mathbf{x}_a
\Bigr) \\
&\quad
- \frac{1}{2} \Bigl(
\mathbf{x}_b^{\top} \boldsymbol{\Lambda}_{b,a} \mathbf{x}_a
- \boldsymbol{\mu}_b^{\top} \boldsymbol{\Lambda}_{b,a} \mathbf{x}_a
\Bigr) \\
&\quad
- \frac{1}{2} \Bigl(
\mathbf{x}_a^{\top} \boldsymbol{\Lambda}_{a,b} \mathbf{x}_b
- \mathbf{x}_a^{\top} \boldsymbol{\Lambda}_{a,b} \boldsymbol{\mu}_b
\Bigr)
+ \mathrm{const.}
\\
&= - \frac{1}{2}
\mathbf{x}_a^{\top} \boldsymbol{\Lambda}_{a,a} \mathbf{x}_a
+ \mathbf{x}_a^{\top} \boldsymbol{\Lambda}_{a,a} \boldsymbol{\mu}_a
- \mathbf{x}_a^{\top} \boldsymbol{\Lambda}_{a,b} \mathbf{x}_b
+ \mathbf{x}_a^{\top} \boldsymbol{\Lambda}_{a,b} \boldsymbol{\mu}_b
+ \mathrm{const.}
\\
&= - \frac{1}{2}
\mathbf{x}_a^{\top} \boldsymbol{\Lambda}_{a,a} \mathbf{x}_a
+ \mathbf{x}_a^{\top} \Bigl\{
\boldsymbol{\Lambda}_{a,a} \boldsymbol{\mu}_a
- \boldsymbol{\Lambda}_{a,b}
(\mathbf{x}_b - \boldsymbol{\mu}_b)
\Bigr\}
+ \mathrm{const.}
\tag{1}
\end{align}
$$
$\mathbf{x}_a$と無関係な項を$\mathrm{const.}$とおき、2次の項$\mathbf{x}_a^{\top} \mathbf{x}_a$と1次の項$\mathbf{x}_a^{\top}$にまとめました。
二次形式(2.70)を$\mathbf{x}_a$の関数(1)として見ると、正規化項のないガウス分布になるのが分かります。
つまり、平均と共分散行列を求めることで、正規化係数が分かる(正規化できる)ので$\mathbf{x}_a$の分布が得られます。
・条件付き分布のパラメータ
$\mathbf{x}_a$の条件付き分布$p(\mathbf{x}_a | \mathbf{x}_b)$のパラメータを求めます。
$\mathbf{x}_a$の条件付き分布を、平均$\boldsymbol{\mu}_{a|b}$・分散共分散行列$\boldsymbol{\Sigma}_{a|b}$の$M$次元ガウス分布とおきます。
$$
p(\mathbf{x}_a | \mathbf{x}_b)
= \frac{1}{(2 \pi)^{\frac{M}{2}}}
\frac{1}{|\boldsymbol{\Sigma}_{a|b}|^{\frac{1}{2}}}
\exp \left\{
- \frac{1}{2}
(\mathbf{x}_a - \boldsymbol{\mu}_{a|b})^{\top}
\boldsymbol{\Sigma}_{a|b}^{-1}
(\mathbf{x}_a - \boldsymbol{\mu}_{a|b})
\right\}
= \mathcal{N}(\mathbf{x}_a | \boldsymbol{\mu}_{a|b}, \boldsymbol{\Sigma}_{a|b})
$$
この式の指数部分の二次形式を展開して、(式(2.71)と同様にして)$\mathbf{x}_a$について整理します。
$$
- \frac{1}{2}
(\mathbf{x}_a - \boldsymbol{\mu}_{a|b})^{\top}
\boldsymbol{\Sigma}_{a|b}^{-1}
(\mathbf{x} - \boldsymbol{\mu}_{a|b})
= - \frac{1}{2}
\mathbf{x}_a^{\top} \boldsymbol{\Sigma}_{a|b}^{-1} \mathbf{x}_a
- \mathbf{x}_a^{\top} \boldsymbol{\Sigma}_{a|b}^{-1} \boldsymbol{\mu}_{a|b}
+ \mathrm{const.}
\tag{2}
$$
式(1)と式(2)を比較すると同じ形をしています。そこで、$\mathbf{x}_a$の2次の項に注目すると、共分散行列が
$$
\begin{align}
\boldsymbol{\Sigma}_{a|b}^{-1}
&= \boldsymbol{\Lambda}_{a,a}
\\
\Rightarrow
\boldsymbol{\Sigma}_{a|b}
&= \boldsymbol{\Lambda}_{a,a}^{-1}
\tag{2.73}
\end{align}
$$
であるのが分かります。
また、$\mathbf{x}_a$の1次の項に注目すると
$$
\boldsymbol{\Sigma}_{a|b}^{-1} \boldsymbol{\mu}_{a|b}
= \boldsymbol{\Lambda}_{a,a} \boldsymbol{\mu}_a
- \boldsymbol{\Lambda}_{a,b}
(\mathbf{x}_b - \boldsymbol{\mu}_b)
$$
なので、両辺に左から$\boldsymbol{\Sigma}_{a|b} = \boldsymbol{\Lambda}_{a,a}^{-1}$を掛けると、平均が
$$
\begin{align}
\Rightarrow
\boldsymbol{\mu}_{a|b}
&= \boldsymbol{\Lambda}_{a,a}^{-1} \Bigl\{
\boldsymbol{\Lambda}_{a,a} \boldsymbol{\mu}_a
- \boldsymbol{\Lambda}_{a,b}
(\mathbf{x}_b - \boldsymbol{\mu}_b)
\Bigr\}
\\
&= \boldsymbol{\mu}_a
- \boldsymbol{\Lambda}_{a,a}^{-1} \boldsymbol{\Lambda}_{a,b}
(\mathbf{x}_b - \boldsymbol{\mu}_b)
\tag{2.75}
\end{align}
$$
であるのが分かります。
$\mathbf{x}_a$の条件付き分布のパラメータが得られました。
・共分散行列と精度行列の関係
$\mathbf{x}_a$の条件付き分布のパラメータを、精度行列を使った式として求められました。続いて、共分散行列を使った式を求めます。
分割された行列の逆行列には、次の公式が成り立ちます。
$$
\begin{pmatrix}
\mathbf{A} & \mathbf{B} \\
\mathbf{C} & \mathbf{D}
\end{pmatrix}^{-1}
= \begin{pmatrix}
\mathbf{M} & - \mathbf{M} \mathbf{B} \mathbf{D}^{-1} \\
- \mathbf{D}^{-1} \mathbf{C} \mathbf{M} & \mathbf{D}^{-1} + \mathbf{D}^{-1} \mathbf{C} \mathbf{M} \mathbf{B} \mathbf{D}^{-1}
\end{pmatrix}
\tag{2.76}
$$
ただし
$$
\mathbf{M}
= (\mathbf{A} - \mathbf{B} \mathbf{D}^{-1} \mathbf{C})^{-1}
\tag{2.77}
$$
です。
この公式を、分割した共分散行列と精度行列の定義式に当てはめると
$$
\begin{pmatrix}
\boldsymbol{\Sigma}_{a,a} & \boldsymbol{\Sigma}_{a,b} \\
\boldsymbol{\Sigma}_{b,a} & \boldsymbol{\Sigma}_{b,b}
\end{pmatrix}^{-1}
= \begin{pmatrix}
\mathbf{M} & - \mathbf{M} \boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1} \\
- \boldsymbol{\Sigma}_{b,b}^{-1} \boldsymbol{\Sigma}_{b,a} \mathbf{M} & \boldsymbol{\Sigma}_{b,b}^{-1} + \boldsymbol{\Sigma}_{b,b}^{-1} \boldsymbol{\Sigma}_{b,a} \mathbf{M} \boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1}
\end{pmatrix}
= \begin{pmatrix}
\boldsymbol{\Lambda}_{a,a} & \boldsymbol{\Lambda}_{a,b} \\
\boldsymbol{\Lambda}_{b,a} & \boldsymbol{\Lambda}_{b,b}
\end{pmatrix}
\tag{2.78}
$$
が成り立ちます。ただし
$$
\mathbf{M}
= (\boldsymbol{\Sigma}_{a,a} - \boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1} \boldsymbol{\Sigma}_{b,a})^{-1}
$$
です。
よって、対応する要素を比較すると
$$
\begin{align}
\boldsymbol{\Lambda}_{a,a}
&= (
\boldsymbol{\Sigma}_{a,a}
- \boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1} \boldsymbol{\Sigma}_{b,a}
)^{-1}
\tag{2.79}\\
\boldsymbol{\Lambda}_{a,b}
&= - (
\boldsymbol{\Sigma}_{a,a}
- \boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1} \boldsymbol{\Sigma}_{b,a}
)^{-1}
\boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1}
\tag{2.80}
\end{align}
$$
となります。
式(2.79),(2.80)を式(2.75)に代入すると、平均は
$$
\begin{align}
\boldsymbol{\mu}_{a|b}
&= \boldsymbol{\mu}_a
- \boldsymbol{\Lambda}_{a,a}^{-1} \boldsymbol{\Lambda}_{a,b}
(\mathbf{x}_b - \boldsymbol{\mu}_b)
\tag{2.75}\\
&= \boldsymbol{\mu}_a
+ (
\boldsymbol{\Sigma}_{a,a}
- \boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1} \boldsymbol{\Sigma}_{b,a}
)
(
\boldsymbol{\Sigma}_{a,a}
- \boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1} \boldsymbol{\Sigma}_{b,a}
)^{-1}
\boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1}
(\mathbf{x}_b - \boldsymbol{\mu}_b)
\\
&= \boldsymbol{\mu}_a
+ \boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1}
(\mathbf{x}_b - \boldsymbol{\mu}_b)
\tag{2.81}
\end{align}
$$
でも計算できるのが分かります。
また、式(2.79)を式(2.73)に代入すると、共分散行列は
$$
\begin{align}
\boldsymbol{\Sigma}_{a|b}
&= \boldsymbol{\Lambda}_{a,a}^{-1}
\tag{2.73}\\
&= \boldsymbol{\Sigma}_{a,a}
- \boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1} \boldsymbol{\Sigma}_{b,a}
\tag{2.82}
\end{align}
$$
でも計算できるのが分かります。
・まとめ
以上で、$\mathbf{x}_a$の条件付き分布は、平均$\boldsymbol{\mu}_{a|b}$・分散共分散行列$\boldsymbol{\Sigma}_{a|b}$の$M$次元ガウス分布
$$
p(\mathbf{x}_a | \mathbf{x}_b)
= \mathcal{N}(\mathbf{x}_a | \boldsymbol{\mu}_{a|b}, \boldsymbol{\Sigma}_{a|b})
$$
となることが分かりました。平均・分散共分散行列パラメータは
$$
\begin{aligned}
\boldsymbol{\mu}_{a|b}
&= \boldsymbol{\mu}_a
+ \boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1}
(\mathbf{x}_b - \boldsymbol{\mu}_b)
= \boldsymbol{\mu}_a
- \boldsymbol{\Lambda}_{a,a}^{-1} \boldsymbol{\Lambda}_{a,b}
(\mathbf{x}_b - \boldsymbol{\mu}_b)
\\
\boldsymbol{\Sigma}_{a|b}
&= \boldsymbol{\Sigma}_{a,a}
- \boldsymbol{\Sigma}_{a,b} \boldsymbol{\Sigma}_{b,b}^{-1} \boldsymbol{\Sigma}_{b,a}
= \boldsymbol{\Lambda}_{a,a}^{-1}
\end{aligned}
$$
で計算できます。
参考文献
- C.M.ビショップ著,元田 浩・他訳『パターン認識と機械学習 上下』,丸善出版,2012年.
おわりに
ベイズロジスティック回帰のついでにやりました。
【次節の内容】
www.anarchive-beta.com