シューア補行列に基づく逆行列の公式を用いた多次元正規分布の精度行列の導出

多次元正規分布に対して共分散行列の逆行列である精度行列(precision matrix)を考えることで、条件付き確率分布、周辺分布、ベイズの定理などの導出が可能になり、線形回帰に同様の考え方を用いることでパラメータの事後確率や予測分布の導出なども可能です。
シューア補行列に基づく精度行列の導出の計算は複雑なので、当記事では一連の導出に関して取り扱いました。作成にあたっては「パターン認識と機械学習」の$2.3.1$節を主に参考にしました。

精度行列の定義

多次元正規分布の式の確認

多次元正規分布の確率密度関数を$f(\mathbf{x})$とおくと、$f(\mathbf{x})$は下記のように表される。
$$
\begin{align}
N(\mathbf{x}|\mathbf{\mu}, \mathbf{\Sigma}) = \frac{1}{(2 \pi)^{D/2}} \frac{1}{|\Sigma|^{1/2}} \exp \left( -\frac{1}{2}(\mathbf{x}-\mathbf{\mu})^{\mathrm{T}} \mathbf{\Sigma}^{-1}(\mathbf{x}-\mathbf{\mu}) \right) \quad (1)
\end{align}
$$

上記において、$\mathbf{\mu}$は平均ベクトル、$\mathbf{\Sigma}$は分散共分散行列を表す。

・参考
多次元正規分布の直感的理解

精度行列の定義

前項で取り扱った、多次元正規分布の式を取り扱うにあたって、$\mathbf{\Sigma}^{-1}$があることで具体的な計算を行うのが難しい場合がある。この取り扱いにあたって、分散共分散行列$\mathbf{\Sigma}$の逆行列の$\mathbf{\Lambda}$を下記のように定義する。
$$
\begin{align}
\mathbf{\Lambda} \equiv \mathbf{\Sigma}^{-1}
\end{align}
$$

上記のように定義した$\mathbf{\Lambda}$を精度行列(precision matrix)という。精度行列を定義することで、$(1)$式の指数関数の中身は下記のように書き直すことができる。
$$
\begin{align}
-\frac{1}{2}(\mathbf{x}-\mathbf{\mu})^{\mathrm{T}} \mathbf{\Sigma}^{-1}(\mathbf{x}-\mathbf{\mu})
= -\frac{1}{2}(\mathbf{x}-\mathbf{\mu})^{\mathrm{T}} \mathbf{\Lambda}(\mathbf{x}-\mathbf{\mu}) \quad (1)’
\end{align}
$$

シューア補行列

部分行列とシューア補行列

$$
\large
\begin{align}
\left(\begin{array}{cc} A & B \\ C & D \end{array} \right)
\end{align}
$$

上記のように行列を$4$つの部分に分解することを考える。ここで$A$が$m \times m$行列、$D$が$n \times n$行列であるとき、$B$は$m \times n$行列、$C$は$n \times m$行列である。

上記のように行列を表すとき、下記のように逆行列を考えることができる。
$$
\large
\begin{align}
\left(\begin{array}{cc} A & B \\ C & D \end{array} \right)^{-1} &= \left(\begin{array}{cc} M & -MBD^{-1} \\ -D^{-1}CM & D^{-1}+D^{-1}CMBD \end{array} \right) \quad (2) \\
M &= (A-BD^{-1}C)^{-1}
\end{align}
$$

ここで上記で$M = (A-BD^{-1}C)^{-1}$のように定義される行列をシューア補行列(Schur complement of the matrix)という。次項で$(2)$式が成立することを示す。

シューア補行列に基づく逆行列の公式が成立することの確認

$$
\large
\begin{align}
\left(\begin{array}{cc} M & -MBD^{-1} \\ -D^{-1}CM & D^{-1}+D^{-1}CMBD \end{array} \right) & \left(\begin{array}{cc} A & B \\ C & D \end{array} \right) = \left(\begin{array}{cc} I_m & O \\ O^{\mathrm{T}} & I_n \end{array} \right) \quad (3) \\
M &= (A-BD^{-1}C)^{-1}
\end{align}
$$

$A,D$の次元がそれぞれ$m$次元、$n$次元であると考えるとき、$(3)$式が成立することを示す。また、上記では$m \times n$の零行列を$O$とおいた。

$$
\large
\begin{align}
& \left(\begin{array}{cc} M & -MBD^{-1} \\ -D^{-1}CM & D^{-1}+D^{-1}CMBD \end{array} \right) \left(\begin{array}{cc} A & B \\ C & D \end{array} \right) \\
&= \left(\begin{array}{cc} MA-MBD^{-1}C & MB-MB \\ -D^{-1}CMA+D^{-1}C+D^{-1}CMD^{-1}C & -D^{-1}CMB+I_n+D^{-1}CMB \end{array} \right) \\
&= \left(\begin{array}{cc} (A-BD^{-1}C)^{-1}(A-BD^{-1}C) & O \\ D^{-1}C(-MA + I_m +MBD^{-1}C) & I_n \end{array} \right) \\
&= \left(\begin{array}{cc} M(A-BD^{-1}C) & O \\ D^{-1}C(I_m-(A-BD^{-1}C)^{-1}(A-BD^{-1}C)) & I_n \end{array} \right) \\
&= \left(\begin{array}{cc} I_m & O \\ D^{-1}C(I_m-I_m)) & I_n \end{array} \right) \\
&= \left(\begin{array}{cc} I_m & O \\ O^{\mathrm{T}} & I_n \end{array} \right)
\end{align}
$$

よって$(2.76)$式が成立する。

・参考
「パターン認識と機械学習」 第$2$章 演習

$2 \times 2$正方行列の逆行列の公式との対応

$$
\large
\begin{align}
\left(\begin{array}{cc} a & b \\ c & d \end{array} \right)^{-1} = \frac{1}{ad-bc}\left(\begin{array}{cc} d & -b \\ -c & a \end{array} \right)
\end{align}
$$

まず$M=(A-BD^{-1}C)^{-1}$の$A,B,C,D$を$a,b,c,d$で置き換えると下記が得られる。
$$
\large
\begin{align}
M &= (a-bd^{-1}c)^{-1} = \left( a – \frac{bc}{d} \right)^{-1} \\
&= \left( \frac{ad-bc}{d} \right)^{-1} \\
&= \frac{d}{ad-bc}
\end{align}
$$

また、上記を$a$に関して解くと下記が得られる。
$$
\large
\begin{align}
M &= \frac{d}{ad-bc} \\
(ad-bc)M &= d \\
adM &= d + bcM \\
a &= \frac{d + bcM}{dM} \\
&= M^{-1} + d^{-1}cb
\end{align}
$$

以下、$2 \times 2$正方行列の逆行列の公式の$a,b,c,d$を$M,B,C,D$で置き換えることを考える。
$$
\large
\begin{align}
\left(\begin{array}{cc} a & b \\ c & d \end{array} \right)^{-1} &= \frac{1}{ad-bc}\left(\begin{array}{cc} d & -b \\ -c & a \end{array} \right) \\
&= \frac{d}{ad-bc}\left(\begin{array}{cc} 1 & -bd^{-1} \\ -d^{-1}c & ad^{-1} \end{array} \right) \\
&= M\left(\begin{array}{cc} 1 & -bd^{-1} \\ -d^{-1}c & (M^{-1} + d^{-1}cb)d^{-1} \end{array} \right) \\
&= \left(\begin{array}{cc} M & -Mbd^{-1} \\ -Md^{-1}c & d^{-1} + d^{-1}cMbd^{-1} \end{array} \right) \\
&= \left(\begin{array}{cc} M & -MBD^{-1} \\ -D^{-1}CM & D^{-1}+D^{-1}CMBD \end{array} \right)
\end{align}
$$

ここまでの式変形により、$2 \times 2$正方行列の逆行列の公式と部分行列の逆行列の公式の対応が確認できる。

多次元正規分布の精度行列の導出

共分散行列の部分行列

共分散行列$\mathbf{\Sigma}$の部分行列を下記のように表すことを考える。
$$
\large
\begin{align}
\mathbf{\Sigma} = \left(\begin{array}{cc} \Sigma_{aa} & \Sigma_{ab} \\ \Sigma_{ba} & \Sigma_{bb} \end{array} \right)
\end{align}
$$

また、精度行列$\mathbf{\Lambda}$を下記のように定義する。
$$
\large
\begin{align}
\mathbf{\Lambda} = \left(\begin{array}{cc} \Lambda_{aa} & \Lambda_{ab} \\ \Lambda_{ba} & \Lambda_{bb} \end{array} \right)
\end{align}
$$

次項で$\Lambda_{aa}, \Lambda_{ab}, \Lambda_{bb}$を$\Sigma_{aa}, \Sigma_{ab}, \Sigma_{bb}$で表すことを考える。なお、$\mathbf{\Sigma}$と$\mathbf{\Lambda}$はどちらも対称行列であるので$\Lambda_{ba}, \Sigma_{ba}$に関しては考える必要がないと考えられる。

精度行列の導出

$$
\large
\begin{align}
\left(\begin{array}{cc} A & B \\ C & D \end{array} \right)^{-1} &= \left(\begin{array}{cc} M & -MBD^{-1} \\ -D^{-1}CM & D^{-1}+D^{-1}CMBD \end{array} \right) \quad (2) \\
M &= (A-BD^{-1}C)^{-1} \quad (4) \\
\left(\begin{array}{cc} \Sigma_{aa} & \Sigma_{ab} \\ \Sigma_{ba} & \Sigma_{bb} \end{array} \right)^{-1} &= \left(\begin{array}{cc} \Lambda_{aa} & \Lambda_{ab} \\ \Lambda_{ba} & \Lambda_{bb} \end{array} \right) \quad (5)
\end{align}
$$

$(2)$、$(4)$式と$(5)$式の対応により、$\Lambda_{aa}, \Lambda_{ab}, \Lambda_{bb}$を$\Sigma_{aa}, \Sigma_{ab}, \Sigma_{bb}$で表すことができる。下記にそれぞれ導出を行なった。
$$
\large
\begin{align}
M &= (A – B D^{-1} C)^{-1} \\
&= (\Sigma_{aa} – \Sigma_{ab} \Sigma_{bb}^{-1} \Sigma_{ba})^{-1} \\
\Lambda_{aa} &= M = (\Sigma_{aa} – \Sigma_{ab} \Sigma_{bb}^{-1} \Sigma_{ba})^{-1} \\
\Lambda_{ab} &= -MBD \\
&= (\Sigma_{aa} – \Sigma_{ab} \Sigma_{bb}^{-1} \Sigma_{ba})^{-1} \Sigma_{ab} \Sigma_{bb} \\
\Lambda_{bb} &= D^{-1}+D^{-1}CMBD \\
&= \Sigma_{bb}^{-1} + \Sigma_{bb}^{-1}(\Sigma_{aa} – \Sigma_{ab} \Sigma_{bb}^{-1} \Sigma_{ba})^{-1} \Sigma_{ab} \Sigma_{bb}
\end{align}
$$

「シューア補行列に基づく逆行列の公式を用いた多次元正規分布の精度行列の導出」への1件の返信

コメントは受け付けていません。