標準正規分布から多変量正規分布へ

 以前の記事では、標準正規分布の確率密度関数から正規分布の確率密度関数を導出しました。

今回は、上記の記事とほぼ同じ手順で、多変量正規分布の確率密度関数を導出していきます。

標準正規分布

 標準正規分布は、正規分布\(N(\mu, \sigma^2)\)において、平均\(\mu=0\)、分散\(\sigma^2=1\)の場合の分布です。確率密度関数は、

\(
N(x) = N(x|\mu=0, \sigma^2=1) = \frac{1}{\sqrt{2\pi}}\exp \left (-\frac{x^2}{2}\right )
\)

であり、グラフは図1に示した通りです。

図1 標準正規分布

多変量正規分布

 多変量正規分布は、以下の式で表される確率密度関数を持つ分布であり、ベクトル \(\boldsymbol{x} = (x_1, x_2, \cdots, x_d)^T\) が生起する確率を計算することができます。

\(N(\boldsymbol{x}|\boldsymbol{\mu}, \boldsymbol{\Sigma}) = \frac{1}{(2\pi)^\frac{d}{2}\sqrt{det(\Sigma)}}\exp\left (-\frac{1}{2}( \boldsymbol{x} – \boldsymbol{\mu})^T\Sigma^{-1} ( \boldsymbol{x} – \boldsymbol{\mu})\right )\)

ここで、\(\boldsymbol{\mu}, \boldsymbol{\Sigma}\)はパラメータなので、引数として渡す必要があります。3変量正規分布より大きい分布については概形を示せないため、2次元正規分布を多変量正規分布の例として示します。

図2 二変量正規分布

標準正規分布の確率密度関数から多変量正規分布の確率密度関数を導出する

 標準正規分布から多変量正規分布を導出するにあたり、\(\boldsymbol{x} = (x_1, x_2, \cdots, x_d)^T\)の各成分は独立で、それぞれ標準正規分布に従って生起することを前提として考えます。これにより、 \(  \boldsymbol{x}\) が生起する確率は、以下のような同時確率で表現できます。

\(\begin{eqnarray}
Pr(\boldsymbol{x}) &=& \prod_{i=1}^d\frac{1}{\sqrt{2\pi}}\exp\left (-\frac{x_i^2}{2}\right )\\
&=& \frac{1}{(2\pi)^\frac{d}{2}}\exp\left\{-\frac{1}{2}(x_1^2 + x_2^2 + \cdots + x_d^2)\right\}\\
&=& \frac{1}{(2\pi)^\frac{d}{2}}\exp\left (-\frac{1}{2}  \boldsymbol{x}^T  \boldsymbol{x}\right )
\end{eqnarray}\)

これが、多変量正規分布バージョンの標準正規分布です。(標準多変量正規分布と呼んだりするんでしょうか…? 当ブログでは標準多変量正規分布と呼ぶことにします。)
期待値および分散は、

\(E[\boldsymbol{x}] = \boldsymbol{0}, V[\boldsymbol{x}] = \boldsymbol{I}\) ただし\(\boldsymbol{I}\)は単位行列

です。証明は下のセクション『追加』に示しました。これにアフィン変換を施し、多変量正規分布の確率密度関数を導出していきます。以前の記事

では、最も簡単なアフィン変換\(x’ = ax + b\)を使用しました。今回は、この考え方を拡張し、

\(\boldsymbol{x’} = \boldsymbol{Ax} + \boldsymbol{b}\)

のように式を仮定します。

※\(\boldsymbol{x}\)の各成分同士は独立(無相関なので共分散が0)ですが、 \(\boldsymbol{x’}\)の成分は\(\boldsymbol{x}\)の各成分の線形結合で表されるため、独立とは限りません(独立な場合、分散共分散行列が対角行列)。

多変量正規分布では以下の条件

\(E[\boldsymbol{x’}] = \boldsymbol{\mu}, V[\boldsymbol{x’}] = \boldsymbol{\Sigma}\)

を満たすため、以下の式変形の後に上式と比較することで、係数を決定させます。

\(\begin{eqnarray} E[\boldsymbol{x’}] &=& E[\boldsymbol{Ax} + \boldsymbol{b}] \\ &=& \boldsymbol{A}E[\boldsymbol{x}] + \boldsymbol{b}\\ &=& \boldsymbol{b}\end{eqnarray}\)

\(\begin{eqnarray}
V[\boldsymbol{x’}] &=& V[\boldsymbol{Ax} + \boldsymbol{b}]\\
&=& V[\boldsymbol{Ax}]\\
&=& E[\boldsymbol{Ax}(\boldsymbol{Ax})^T]\\
&=& E[\boldsymbol{Axx}^T\boldsymbol{A}^T]\\
&=& \boldsymbol{A}E[\boldsymbol{xx}^T]\boldsymbol{A}^T\\
&=& \boldsymbol{AA}^T
\end{eqnarray}\)

これより、\(\boldsymbol{b} = \boldsymbol{\mu}, \boldsymbol{AA}^T = \boldsymbol{\Sigma}\)となることが分かりました。これを念頭にし、\( \boldsymbol{x’} = \boldsymbol{Ax} + \boldsymbol{b}\)を\( \boldsymbol{x}\)について解き、標準多変量正規分布に代入し、\( \boldsymbol{x’}\)についての式に変換します。まず、\( \boldsymbol{x} \)について解くと、

\( \boldsymbol{x} = \boldsymbol{A}^{-1}( \boldsymbol{x’} – \boldsymbol{b} ) \)

です。つぎに、標準多変量正規分布に代入していきます。便宜上、以下の式を\(f( \boldsymbol{x} )\)と置きました。

\(\begin{eqnarray}
f(\boldsymbol{x}) &\equiv& \frac{1}{(2\pi)^\frac{d}{2}}\exp\left (-\frac{1}{2}  \boldsymbol{x}^T  \boldsymbol{x}\right )\\
&=& \frac{1}{(2\pi)^\frac{d}{2}}\exp\left (-\frac{1}{2}  \boldsymbol{(x’ – b)^T(A^{-1})^T}  \boldsymbol{A^{-1}(x’ – b)}\right ) \\
&=& \frac{1}{(2\pi)^\frac{d}{2}}\exp\left (-\frac{1}{2}  \boldsymbol{(x’ – b)}^T \boldsymbol{(AA^T)^{-1}}  \boldsymbol{(x’ – b)}\right ) \\
&=& \frac{1}{(2\pi)^\frac{d}{2}}\exp\left (-\frac{1}{2}  \boldsymbol{(x’ – b)}^T \boldsymbol{\Sigma^{-1}}  \boldsymbol{(x’ – b)}\right )
\end{eqnarray}\)

標準正規分布から正規分布を求めたとき(前回の記事)と同様に、これでは確率密度関数の性質である積分結果が1であることを満たしていないので、\(\int f(x)dx\)で正規化します。計算は省略しますが(いつか計算します)、積分結果は\(\sqrt{\det (\Sigma)}\)になるので、\(\sqrt{\det (\Sigma)}\) で正規化すると、以下のようになります。

\(\begin{eqnarray}
Pr(\boldsymbol{x’}) &=& \frac{1}{\int f(x)dx}f(x)\\
&=& \frac{1}{(2\pi)^\frac{d}{2} \sqrt{\det (\Sigma)} }\exp\left (-\frac{1}{2}  \boldsymbol{(x’ – \mu)}^T \boldsymbol{\Sigma^{-1}}  \boldsymbol{(x’ – \mu)}\right )
\end{eqnarray}\)

ここで、\(\boldsymbol{x’}\)から、 \(\boldsymbol{x}\) に置き換えれば、多変量正規分布の確率密度関数

\(N(\boldsymbol{x}|\boldsymbol{\mu}, \boldsymbol{\Sigma}) = \frac{1}{(2\pi)^\frac{d}{2}\sqrt{det(\Sigma)}}\exp\left (-\frac{1}{2}( \boldsymbol{x} – \boldsymbol{\mu})^T\Sigma^{-1} ( \boldsymbol{x} – \boldsymbol{\mu})\right )\)

が求まります。

追加

\(E[\boldsymbol{x}] = \boldsymbol{0}の証明\)

\(
E[\boldsymbol{x}] = E\left [\begin{pmatrix} x_1 \\ x_2 \\ ・ \\ ・ \\ ・ \\ x_d \end{pmatrix}\right ] = \boldsymbol{0}
\)

\(V[\boldsymbol{x}] = \boldsymbol{I}の証明\)

\(\begin{eqnarray}
V[\boldsymbol{x}] &=& E[(\boldsymbol{x} – E[\boldsymbol{x}]) (\boldsymbol{x} – E[\boldsymbol{x}])^T]\\
&=& E[\boldsymbol{x}\boldsymbol{x}^T]\\
&=& E\left [\begin{pmatrix}
x_1^2 & x_1x_2 & \cdots & x_1x_d\\
x_2x_1 & x_2^2 & \cdots & \vdots\\
\vdots & \vdots & \ddots & \vdots\\
x_dx_1 &\cdots &\cdots & x_d^2
\end{pmatrix}\right ] \\
&=& \boldsymbol{I}
\end{eqnarray}\)

ここで任意の\(x_ix_j(i\neq j)\)のとき、二つは独立なので

\(E[x_ix_j] = E[x_i]E[x_j] = 0\)

が成立し、非対角成分はすべて0になることを使用しています。これについては以下の記事で詳しく説明しているので、ぜひ読んでみてください。

Follow me!

コメントを残す