はじめに
多変量正規分布は、統計学や機械学習において非常に重要な確率分布です。しかし、その確率密度関数の複雑な見た目に、とっつきにくさを感じる方もいるかもしれません🤧
そこで本記事では、多変量正規分布の確率密度関数が一見複雑そうに見えて、実は互いに独立な複数の1次元正規分布の積として表現できることを、固有値展開を用いて数式ベースで丁寧に解説します。この理解は、主成分分析(PCA)など、多くの多変量解析手法の基盤となります。
対象読者: 多変量正規分布に関して苦手意識がある方、和解したい方
1. 多変量正規分布の確率密度関数
$d$ 次元ベクトル $\mathbf{x}$ が平均ベクトル $\mu$ と共分散行列 $\Sigma$ を持つ多変量正規分布に従う場合、その確率密度関数 $p(\mathbf{x})$ は次のように定義されます。
多変量正規分布の確率密度関数
$$p(\mathbf{x}) = \frac{1}{(2\pi)^{d/2} \sqrt{\det \Sigma}} \exp \left( -\frac{1}{2} (\mathbf{x} - \mu)^T \Sigma^{-1} (\mathbf{x} - \mu) \right)$$
この式は煩雑に見えますね🤧 ただ$d=1$として整理するとお馴染みの1次元正規分布が得られますね。
ここでこの式を捉える上で特に重要なのは、指数部の二次形式 $(\mathbf{x} - \mu)^T \Sigma^{-1} (\mathbf{x} - \mu)$ と、分母の $\sqrt{\det \Sigma}$ です。これらを固有値展開によってシンプルな形に変形していくことが、独立化の鍵となります。
2. 共分散行列の固有値分解
共分散行列 $\Sigma$ は、実対称行列であるという重要な性質を持っています。この性質により、$\Sigma$ は必ず直交行列 $U$ と対角行列 $\Lambda$ を用いて固有値分解することができます。
$$\Sigma = U \Lambda U^T$$
ここで、$U = (\mathbf{u}_1, \mathbf{u}_2, \dots, \mathbf{u}_d)$ は、$d$ 個の正規直交固有ベクトル $\mathbf{u}_i$ を列ベクトルに持つ直交行列です。直交行列の定義から $U^T U = UU^T = I$ (単位行列)が成り立ちます。
また$\Lambda$は、
\Lambda = \begin{pmatrix} \lambda_1 & & \\ & \ddots & \\ & & \lambda_d \end{pmatrix}
のように対角成分に $\Sigma$ の固有値 $\lambda_i$ を持つ対角行列です。各 $\lambda_i$ は正の値を取ります(共分散行列の正定値性による)。
3. 共分散行列の逆行列
固有値分解を利用することで、$\Sigma$ の逆行列 $\Sigma^{-1}$ を容易に求めることができます。
$$\Sigma^{-1} = (U \Lambda U^T)^{-1}$$
行列積の逆行列の性質 $(ABC)^{-1} = C^{-1}B^{-1}A^{-1}$ と、直交行列の逆行列が転置行列に等しい($U^{-1} = U^T$)という性質を用いると、
$$\Sigma^{-1} = (U^T)^{-1} \Lambda^{-1} U^{-1} = U \Lambda^{-1} U^T$$
ここで、対角行列の逆行列は各対角成分の逆数を取ることで求められます。
\Lambda^{-1} = \begin{pmatrix} 1/\lambda_1 & & \\ & \ddots & \\ & & 1/\lambda_d \end{pmatrix}
4. 確率密度関数の指数部の変形
いよいよ、確率密度関数の指数部である二次形式を変形します。簡単のため、まず $\mathbf{y} = \mathbf{x} - \mu$ とおきます。
$$(\mathbf{x} - \mu)^T \Sigma^{-1} (\mathbf{x} - \mu) = \mathbf{y}^T \Sigma^{-1} \mathbf{y}$$
ここに、先ほど求めた $\Sigma^{-1} = U \Lambda^{-1} U^T$ を代入します。
$$\mathbf{y}^T (U \Lambda^{-1} U^T) \mathbf{y}$$
ここで、新しい変数 $\mathbf{z}$ を次のように定義します。
$$\mathbf{z} \triangleq U^T \mathbf{y} = U^T (\mathbf{x} - \mu)$$
すると、指数部は $\mathbf{z}^T \Lambda^{-1} \mathbf{z}$ となります。
$$\mathbf{y}^T U \Lambda^{-1} U^T \mathbf{y} = (U^T \mathbf{y})^T \Lambda^{-1} (U^T \mathbf{y}) = \mathbf{z}^T \Lambda^{-1} \mathbf{z}$$
$\mathbf{z}$ の各成分を $z_i$ とすると、$ \mathbf{z}^T \Lambda^{-1} \mathbf{z} $ は以下のように展開できます。
\mathbf{z}^T \Lambda^{-1} \mathbf{z} = \begin{pmatrix} z_1 & \dots & z_d \end{pmatrix} \begin{pmatrix} 1/\lambda_1 & & \\ & \ddots & \\ & & 1/\lambda_d \end{pmatrix} \begin{pmatrix} z_1 \\ \vdots \\ z_d \end{pmatrix} = \sum_{i=1}^d \frac{z_i^2}{\lambda_i}
ここで、$z_i$ は $\mathbf{z} = U^T (\mathbf{x} - \mu)$ の第 $i$ 成分であり、これは $U^T$ の第 $i$ 行ベクトル(つまり固有ベクトル $\mathbf{u}_i$ の転置 $\mathbf{u}_i^T$)と $(\mathbf{x} - \mu)$ の内積です。
$$z_i = \mathbf{u}_i^T (\mathbf{x} - \mu)$$
したがって、指数部の最終的な形は以下のようになります。
$$-\frac{1}{2} (\mathbf{x} - \mu)^T \Sigma^{-1} (\mathbf{x} - \mu) = -\frac{1}{2} \sum_{i=1}^d \frac{(\mathbf{u}_i^T (\mathbf{x} - \mu))^2}{\lambda_i}$$
5. 確率密度関数の決定項の変形
次に、確率密度関数の分母にある $\sqrt{\det \Sigma}$ を変形します。
$$\det \Sigma = \det (U \Lambda U^T)$$
行列式の性質 $\det(ABC) = \det(A)\det(B)\det(C)$ を利用すると、
$$\det \Sigma = (\det U) (\det \Lambda) (\det U^T)$$
直交行列 $U$ の行列式は $\det U = \pm 1$ であり、$\det U^T = \det U$ なので、$ (\det U)^2 = 1 $ となります。よって、
$$\det \Sigma = \det \Lambda$$
対角行列 $\Lambda$ の行列式は、対角成分の積に等しいため、
$$\det \Lambda = \prod_{i=1}^d \lambda_i$$
したがって、
$$\sqrt{\det \Sigma} = \sqrt{\prod_{i=1}^d \lambda_i} = \prod_{i=1}^d \sqrt{\lambda_i}$$
6. 多変量正規分布の再構築と独立化
これまでの変形結果を元の確率密度関数に代入します。
$$p(\mathbf{x}) = \frac{1}{(2\pi)^{d/2} \prod_{i=1}^d \sqrt{\lambda_i}} \exp \left( -\frac{1}{2} \sum_{i=1}^d \frac{(\mathbf{u}_i^T (\mathbf{x} - \mu))^2}{\lambda_i} \right)$$
ここで、$\sum$ と $\prod$ の関係、および指数関数の性質 $e^{A+B} = e^A e^B$ を利用して、積の形に分解します。
$$p(\mathbf{x}) = \prod_{i=1}^d \frac{1}{(2\pi)^{1/2} \sqrt{\lambda_i}} \exp \left( -\frac{1}{2} \frac{(\mathbf{u}_i^T (\mathbf{x} - \mu))^2}{\lambda_i} \right)$$
$$p(\mathbf{x}) = \prod_{i=1}^d \frac{1}{\sqrt{2\pi \lambda_i}} \exp \left( -\frac{(\mathbf{u}_i^T (\mathbf{x} - \mu))^2}{2\lambda_i} \right)$$
ここで、新しい変数 $X_i$ を次のように定義します。
$$X_i \triangleq \mathbf{u}_i^T (\mathbf{x} - \mu)$$
この $X_i$ は、元の変数 $\mathbf{x}$ を固有ベクトル $\mathbf{u}_i$ の方向に射影し、平均 $\mu$ からのずれを表す量です。
すると、確率密度関数は最終的に以下のように書けます。
$$p(\mathbf{x}) = \prod_{i=1}^d \left( \frac{1}{\sqrt{2\pi \lambda_i}} \exp \left( -\frac{X_i^2}{2\lambda_i} \right) \right)$$
7. 結論:独立な1次元正規分布の積
この最終形から、以下の重要な結論が導き出されます。
-
$X_i$ は互いに独立な確率変数である:
多変量確率密度関数が、個々の確率変数 $X_i$ の確率密度関数の積として表されている場合、それらの変数は互いに独立である、という確率論の重要な性質があります。したがって、変換された新しい変数 $X_1, X_2, \dots, X_d$ は互いに独立です。 -
$X_i$ は平均 0、分散 $\lambda_i$ の正規分布に従う:
括弧内の式は、まさに平均 0、分散 $\lambda_i$ の1次元正規分布の確率密度関数の形をしています。
このように、共分散行列 $\Sigma$ を固有値分解することで、相関を持つ元の多変量正規分布が、互いに独立な1次元正規分布の積として表現されることが明確になります。
これは、元のデータ空間を、共分散行列の固有ベクトルが張る新しい基底に変換することで、各軸方向の変動が互いに影響を与えない独立なものとなることを意味します。この「独立化」のプロセスは、データの本質的な構造を理解し、次元削減(例:主成分分析)やデータの可視化を行う上で非常に強力なツールとなります。
8. 演習:多変量ガウス分布のモーメント(平均と共分散行列)を導出せよ
これまでの議論で、多変量ガウス分布の確率密度関数が共分散行列の固有値展開によって独立な成分の積で表せることを確認しました。ここでは、その確率密度関数を用いて、ガウス分布の重要なパラメータである平均 $\mu$ と共分散行列 $\Sigma$ が、統計的な期待値としてどのように定義され、導出されるのかを見ていきます。
8.1 平均の導出
確率変数 $\mathbf{x}$ の期待値 $E[\mathbf{x}]$ は、その確率密度関数 $p(\mathbf{x})$ を用いて次のように定義されます。
E[\mathbf{x}] = \int \mathbf{x} p(\mathbf{x}) d\mathbf{x}
多変量ガウス分布の確率密度関数を代入すると、
E[\mathbf{x}] = \frac{1}{(2\pi)^{d/2} \sqrt{\det \Sigma}} \int \mathbf{x} \exp \left\{ -\frac{1}{2} (\mathbf{x} - \mu)^T \Sigma^{-1} (\mathbf{x} - \mu) \right\} d\mathbf{x}
ここで、変数変換として $\mathbf{z} = \mathbf{x} - \mu$ を導入します。すると $\mathbf{x} = \mathbf{z} + \mu$ となり、$d\mathbf{x} = d\mathbf{z}$ です(ただの平行移動でヤコビアンが1のため)。
これを代入すると、
\begin{aligned} E[\mathbf{x}] &= \frac{1}{(2\pi)^{d/2}\,\sqrt{\det\Sigma}} \int (\mathbf{z} + \mu)\, \exp\Bigl(-\tfrac12\,\mathbf{z}^T\Sigma^{-1}\mathbf{z}\Bigr)\,d\mathbf{z} \\[6pt] &= \frac{1}{(2\pi)^{d/2}\,\sqrt{\det\Sigma}} \Bigl( \int \mathbf{z}\, \exp\Bigl(-\tfrac12\,\mathbf{z}^T\Sigma^{-1}\mathbf{z}\Bigr)\,d\mathbf{z} + \int \mu\, \exp\Bigl(-\tfrac12\,\mathbf{z}^T\Sigma^{-1}\mathbf{z}\Bigr)\,d\mathbf{z} \Bigr) \end{aligned}
ここで、最初の積分項
\int \mathbf{z} \exp \left\{ -\frac{1}{2} \mathbf{z}^T \Sigma^{-1} \mathbf{z} \right\} d\mathbf{z}
は、被積分関数が $\mathbf{z}$ に関して奇関数であるため、$-\infty$ から $\infty$ までの積分は対称性から $\mathbf{0}$ になります。
次に、2番目の積分項
\int \mu \exp \left\{ -\frac{1}{2} \mathbf{z}^T \Sigma^{-1} \mathbf{z} \right\} d\mathbf{z}
については$\mu$ は定数ベクトルなので以下のように積分の外に出せます。
\mu \int \exp \left\{ -\frac{1}{2} \mathbf{z}^T \Sigma^{-1} \mathbf{z} \right\} d\mathbf{z}
この積分の部分は、多変量ガウス分布の確率密度関数の「正規化定数を除いた部分」の全空間での積分に相当します。ガウス分布は確率密度関数が全空間で1に積分されるように正規化されているため、この積分は確率密度関数の分母に当たる $\sqrt{\det \Sigma} (2\pi)^{d/2}$ に等しくなります。
したがって、全体の式は以下のようになります。
$$E[\mathbf{x}] = \frac{1}{(2\pi)^{d/2} \sqrt{\det \Sigma}} \left( \mathbf{0} + \mu \cdot \sqrt{\det \Sigma} (2\pi)^{d/2} \right)$$
$$E[\mathbf{x}] = \mu$$
この結果から、パラメータ $\mu$ が多変量ガウス分布の期待値を表していることがわかります。
8.2 共分散行列 の導出
次に、2次モーメント $E[\mathbf{x}\mathbf{x}^T]$ を考え、それを用いて共分散行列を導出します。$E[\mathbf{x}\mathbf{x}^T]$ はOuter Productで、ベクトル $\mathbf{x}$ の各要素 $x_i, x_j$ の積の期待値 $E[x_i x_j]$ を要素とする行列です。
\begin{aligned} E[\mathbf{x}\mathbf{x}^T] &= \int \mathbf{x}\mathbf{x}^T\,p(\mathbf{x})\,d\mathbf{x} \\[4pt] &= \frac{1}{(2\pi)^{d/2}\,\sqrt{\det\Sigma}} \int \mathbf{x}\mathbf{x}^T\, \exp\!\Bigl(-\tfrac12\,(\mathbf{x}-\mu)^T\Sigma^{-1}(\mathbf{x}-\mu)\Bigr) \,d\mathbf{x} \end{aligned}
再び変数変換 $\mathbf{z} = \mathbf{x} - \mu$ を用いると、$\mathbf{x} = \mathbf{z} + \mu$ となり、$\mathbf{x}\mathbf{x}^T = (\mathbf{z} + \mu)(\mathbf{z} + \mu)^T$ です。
\begin{aligned} E[\mathbf{x}\mathbf{x}^T] &= \frac{1}{(2\pi)^{d/2}\,\sqrt{\det\Sigma}} \int (\mathbf{z} + \mu)(\mathbf{z} + \mu)^T\, \exp\!\Bigl(-\tfrac12\,\mathbf{z}^T\Sigma^{-1}\mathbf{z}\Bigr) \,d\mathbf{z} \\[6pt] &= \frac{1}{(2\pi)^{d/2}\,\sqrt{\det\Sigma}} \int \bigl( \mathbf{z}\mathbf{z}^T + \mathbf{z}\,\mu^T + \mu\,\mathbf{z}^T + \mu\,\mu^T \bigr)\, \exp\!\Bigl(-\tfrac12\,\mathbf{z}^T\Sigma^{-1}\mathbf{z}\Bigr) \,d\mathbf{z} \end{aligned}
この積分を各項に分解して評価します。
-
クロス項 $E[\mathbf{z}\mu^T]$ と $E[\mu\mathbf{z}^T]$:
これらの項は、$\int \mathbf{z} \exp({\dots)} d\mathbf{z}$ の形を含むため、先ほどと同様に奇関数の積分となり、それぞれ $\mathbf{0}$ になります。 -
$\mu\mu^T$ 項:
$\mu\mu^T$ は定数行列なので積分の外に出せます。\frac{1}{(2\pi)^{d/2} \sqrt{\det \Sigma}} \mu\mu^T \int \exp \left\{ -\frac{1}{2} \mathbf{z}^T \Sigma^{-1} \mathbf{z} \right\} d\mathbf{z}積分の部分は、ガウス分布の正規化定数に対応するため、正規化定数を含めると $\mu\mu^T$ となります。
-
$\mathbf{z}\mathbf{z}^T$ 項 ($E[\mathbf{z}\mathbf{z}^T]$):
この項が共分散行列の導出において最も重要です。E[\mathbf{z}\mathbf{z}^T] = \frac{1}{(2\pi)^{d/2} \sqrt{\det \Sigma}} \int \mathbf{z}\mathbf{z}^T \exp \left\{ -\frac{1}{2} \mathbf{z}^T \Sigma^{-1} \mathbf{z} \right\} d\mathbf{z}ここで、$\Sigma^{-1}$ を固有値展開 $U \Lambda^{-1} U^T$ で置き換え、さらに新しい変数 $\mathbf{y} = U^T \mathbf{z}$ を導入します。すると $\mathbf{z} = U\mathbf{y}$ となり、$\mathbf{z}\mathbf{z}^T = U\mathbf{y}(U\mathbf{y})^T = U\mathbf{y}\mathbf{y}^T U^T$ となります。
また、指数部は $-\frac{1}{2} \mathbf{y}^T \Lambda^{-1} \mathbf{y} = -\frac{1}{2} \sum_{k=1}^d \frac{y_k^2}{\lambda_k}$ となります。
(またヤコビアンは1で $d\mathbf{z} = d\mathbf{y}$)E[\mathbf{z}\mathbf{z}^T] = \frac{1}{(2\pi)^{d/2} \sqrt{\det \Sigma}} \int U\mathbf{y}\mathbf{y}^T U^T \exp \left\{ -\frac{1}{2} \sum_{k=1}^d \frac{y_k^2}{\lambda_k} \right\} d\mathbf{y}$U$ と $U^T$ は定数行列なので積分の外に出せます。
E[\mathbf{z}\mathbf{z}^T] = U \left( \frac{1}{(2\pi)^{d/2} \sqrt{\det \Sigma}} \int \mathbf{y}\mathbf{y}^T \exp \left\{ -\frac{1}{2} \sum_{k=1}^d \frac{y_k^2}{\lambda_k} \right\} d\mathbf{y} \right) U^T括弧内の積分は $E[\mathbf{y}\mathbf{y}^T]$ を表しています。前述の「7. 結論:独立な1次元正規分布の積」で示したように、変換された変数 $y_k$ は互いに独立で、平均 0、分散 $\lambda_k$ の1次元正規分布に従います。
したがって、期待値 $E[y_j y_k]$ は $j \neq k$ のとき $E[y_j]E[y_k] = 0 \times 0 = 0$ となり、$j=k$ のとき $E[y_k^2] = \lambda_k$ となります。
よって、$E[\mathbf{y}\mathbf{y}^T]$ は対角行列 $\Lambda$ になります。E[\mathbf{y}\mathbf{y}^T] = \Lambda = \left( \begin{matrix} \lambda_1 & 0 & \cdots & 0 \\ 0 & \lambda_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \lambda_d \end{matrix} \right)この結果を代入すると、
$$E[\mathbf{z}\mathbf{z}^T] = U \Lambda U^T$$
そして共分散行列 $\Sigma$ の定義 $\Sigma = U \Lambda U^T$ から、
$$E[\mathbf{z}\mathbf{z}^T] = \Sigma$$
全ての項をまとめると、$E[\mathbf{x}\mathbf{x}^T]$ は以下のようになります。
$$E[\mathbf{x}\mathbf{x}^T] = \mu\mu^T + \Sigma$$
最後に、共分散 $\text{cov}[\mathbf{x}]$ の定義から
$$\text{cov}[\mathbf{x}] = E[(\mathbf{x} - E[\mathbf{x}])(\mathbf{x} - E[\mathbf{x}])^T]$$
ここで、$E[\mathbf{x}] = \mu$ を代入し、展開します。
\begin{aligned} \mathrm{cov}[\mathbf{x}] &= E\bigl[(\mathbf{x}-\mu)(\mathbf{x}-\mu)^T\bigr] \\[4pt] &= E\bigl[\mathbf{x}\mathbf{x}^T - \mathbf{x}\mu^T - \mu\mathbf{x}^T + \mu\mu^T\bigr] \\[4pt] &= E[\mathbf{x}\mathbf{x}^T] - E[\mathbf{x}\mu^T] - E[\mu\mathbf{x}^T] + E[\mu\mu^T]\\[4pt]&= E[\mathbf{x}\mathbf{x}^T] - \mu\mu^T - \mu\mu^T + \mu\mu^T\\[4pt]&=E[\mathbf{x}\mathbf{x}^T] - \mu\mu^T
\end{aligned}
ここに、先ほど導出した $E[\mathbf{x}\mathbf{x}^T] = \mu\mu^T + \Sigma$ を代入すると、
\begin{aligned} \text{cov}[\mathbf{x}] = (\mu\mu^T + \Sigma) - \mu\mu^T = \Sigma
\end{aligned}
この結果から、多変量ガウス分布のパラメータ $\Sigma$ が、まさに確率変数 $\mathbf{x}$ の共分散行列そのものであることが導出されました。
まとめ
- 多変量正規分布の確率密度関数は、共分散行列の固有値分解を用いることで、よりシンプルに理解できる。
- 共分散行列を $\Sigma = U \Lambda U^T$ と分解し、新しい変数 $X_i = \mathbf{u}_i^T (\mathbf{x} - \mu)$ を導入すると、確率密度関数は独立な1次元正規分布の積となる。
- 各 $X_i$ は平均 0、分散 $\lambda_i$ の正規分布に従い、互いに独立である。
- この独立化のプロセスは、多変量データの構造を理解し、解析を行う上での基礎となる。