2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

PRML 演習問題2.34を対称性を使わずに解く方法

Last updated at Posted at 2020-08-03

PRML 演習問題2.34の問題文には共分散行列$\mathbf{\Sigma}$が対称行列であること($\mathbf{\Sigma}^{-1}=({\mathbf{\Sigma}^{-1}})^{\mathrm{T}}$)の制約を無視して〜と書いてあるのに、公式解答集ではその対称性を利用した解答例になっているので真面目に解いている人が???となってしまう。ここでは対称性を利用しなくても答えを出すことはできることをメモしておく。(間違っていたらごめんなさい)

演習2.34 問題文(引用)

多変量ガウス分布の共分散行列の最尤推定解を求めるには,共分散行列が対称で正定値である制約の下で$\mathbf{\Sigma}$について対数尤度関数

\ln p(\mathbf{x} \mid \boldsymbol{\mu}, \mathbf{\Sigma})=-\frac{N D}{2} \ln (2 \pi)-\frac{N}{2} \ln |\mathbf{\Sigma}|-\frac{1}{2} \sum_{n=1}^{N}\left(\mathbf{x}_{n}-\boldsymbol{\mu}\right)^{\mathrm{T}} \mathbf{\Sigma}^{-1}\left(\mathbf{x}_{n}-\boldsymbol{\mu}\right) \tag{2.118}

を最大化しなくてはならない.ここでは,こうした制約を無視して,ただ最大化することにする.付録Cの(C.21), (C.26) ,および (C.28)の結果を用いて,対数尤度関数$(2.118)$を最大化する共分散行列$\mathbf{\Sigma}$が,サンプル共分散

\mathbf{\Sigma}_{\mathbf{ML}}=\frac{1}{N} \sum_{n=1}^{N}\left(\mathbf{x}_{n}-\boldsymbol{\mu}_{\mathbf{ML}}\right)\left(\mathbf{x}_{n}-\boldsymbol{\mu}_{\mathbf{ML}}\right)^{\mathrm{T}} \tag{2.122}

となることを示せ.なお,(サンプル共分散が非特異なら)最終結果は対称かつ,正定値である必要がある.

(ここまで引用)

解答例

\begin{aligned}
\frac{\partial}{\partial \mathbf{\Sigma}} \ln p(\mathbf{X} | \boldsymbol{\mu}, \mathbf{\Sigma}) &=-\frac{N}{2} \frac{\partial}{\partial \mathbf{\Sigma}} \ln |\mathbf{\Sigma}|-\frac{1}{2} \frac{\partial}{\partial \mathbf{\Sigma}}\left\{\sum_{n=1}^{N}\left(\mathbf{x}_n-\boldsymbol{\mu}\right)^{\mathrm{T}} \Sigma^{-1} \left(\mathbf{x}_n-\boldsymbol{\mu} \right)\right\} \\
&=-\frac{N}{2}\left(\mathbf{\Sigma}^{-1}\right)^{\mathrm{T}}-\frac{1}{2} \frac{\partial}{\partial \mathbf{\Sigma}}\left\{\sum_{n=1}^{N} \operatorname{Tr}\left(\mathbf{\Sigma}^{-1}\left(\mathbf{x}_n-\boldsymbol{\mu}\right)\left(\mathbf{x}_n-\boldsymbol{\mu} \right)^{\mathrm{T}}\right)\right\} \\
&=-\frac{N}{2}\left(\mathbf{\Sigma}^{-1}\right)^{\mathrm{T}} - \frac{1}{2} \frac{\partial}{\partial \mathbf{\Sigma}} \operatorname{Tr}\left( \mathbf{\Sigma}^{-1} \sum_{n=1}^{N}\left(\mathbf{x}_n-\boldsymbol{\mu}\right)\left(\mathbf{x}_n-\boldsymbol{\mu} \right)^{\mathrm{T}}\right)
\end{aligned}

ここで第2項について、$\mathbf{A}=\mathbf{\Sigma}$, $\mathbf{B}=\sum_{n=1}^{N}\left(\mathbf{x}_n-\boldsymbol{\mu}\right)\left(\mathbf{x}_n-\boldsymbol{\mu} \right)^{\mathrm{T}}$とすると、求めるべきは$\displaystyle \frac{\partial}{\partial \mathbf{A}}{\mathrm{Tr}}(\mathbf{A}^{-1}\mathbf{B})$である。

\begin{aligned}
\frac{\partial}{\partial A_{ij}}{\mathrm{Tr}}(\mathbf{A}^{-1}\mathbf{B}) =& \operatorname{Tr}\left(\left(\frac{\partial}{\partial A_{i j}} \mathbf{A}^{-1} \right) \mathbf{B}\right) \\
=&- \operatorname{Tr}\left(\mathbf{A}^{-1}\left(\frac{\partial}{\partial A_{ij}} \mathbf{A}\right) \mathbf{A}^{-1} \mathbf{B}\right)\hspace{1em}(\because 付録(C.21))\\
=&-\operatorname{Tr}\left(\left(\frac{\partial}{\partial A_{ij}} \mathbf{A}\right) \mathbf{A}^{-1} \mathbf{B} \mathbf{A}^{-1}\right)\hspace{1em}(\because \operatorname{Tr}(\mathbf{ABCD}) = \operatorname{Tr}(\mathbf{BCDA}))
\end{aligned}

なので、$\mathbf{C}=\mathbf{A^{-1}BA^{-1}}$とすると

\begin{aligned} \operatorname{Tr}\left(\left(\frac{\partial}{\partial A_{ij}} \mathbf{A}\right) \mathbf{C}\right) &=\sum_{s}\left(\left(\frac{\partial}{\partial A_{ij}} \mathbf{A}\right) \mathbf{C}\right)_{ss} \\
&= \sum_{s}\left(\sum_{t}\left(\frac{\partial}{\partial A_{ij}} \mathbf{A}\right)_{s t} c_{ts}\right) \\
&=\sum_{s, t} \delta_{is} \delta_{jt} c_{ts}=c_{ji}
\end{aligned}

最後は$s=i$かつ$t=j$のときのみクロネッカーのデルタ$\delta_{is}\delta_{jt}$が$1$になり、その他は$0$となることを表している。
ここについては、付録(C.23)に書かれてある定理に則って

\begin{aligned} \operatorname{Tr}\left(\left(\frac{\partial}{\partial A_{ij}} \mathbf{A}\right) \mathbf{C}\right)
&=\frac{\partial}{\partial A_{ij}} \operatorname{Tr}\left(\mathbf{AC} \right) \\
&=c_{ji}
\end{aligned}

としても良い。

(※ 一般に正方行列$\mathbf{F}$の行列の$ij$成分$f_{ij}$について$\operatorname{Tr}(\mathbf{F})=\sum_{i=1}f_{ii}$より、

\frac{\partial}{\partial f_{ij}}\operatorname{Tr}(\mathbf{F}) = \frac{\partial f_{11}}{\partial f_{ij}}+\frac{\partial f_{22}}{\partial f_{ij}}+\cdots= \operatorname{Tr}\left(\frac{\partial}{\partial f_{ij}} \mathbf{F}\right)

が成立する)

これより、$\displaystyle \frac{\partial}{\partial A_{ij}}{\mathrm{Tr}}(\mathbf{A}^{-1}\mathbf{B})=-c_{ji}$となるので、付録(C.24)のように

\begin{aligned}
\frac{\partial}{\partial \mathbf{A}}{\mathrm{Tr}}(\mathbf{A}^{-1}\mathbf{B}) &= -\mathbf{C}^{\mathrm T} \\
&=-(\mathbf{A^{-1}BA^{-1}})^{\mathrm T} \\
&=-(\mathbf{\Sigma^{-1}B\Sigma^{-1}})^{\mathrm T}
\end{aligned}

よって、最大値を求めるために$\frac{\partial}{\partial \mathbf{\Sigma}} \ln p(\mathbf{X} | \boldsymbol{\mu}, \mathbf{\Sigma}) = 0$とすると

\begin{aligned}
-\frac{N}{2}\left(\mathbf{\Sigma}^{-1}\right)^{\mathrm{T}} - \frac{1}{2} \frac{\partial}{\partial \mathbf{\Sigma}} \operatorname{Tr}\left( \mathbf{\Sigma}^{-1} \sum_{n=1}^{N}\left(\mathbf{x}_n-\boldsymbol{\mu}\right)\left(\mathbf{x}_n-\boldsymbol{\mu} \right)^{\mathrm{T}}\right)
=0 \\
\frac{N}{2}\left(\mathbf{\Sigma}^{-1}\right)^{\mathrm{T}} = \frac{1}{2} \left( \mathbf{\Sigma^{-1}} \sum_{n=1}^{N}\left(\mathbf{x}_n-\boldsymbol{\mu}\right)\left(\mathbf{x}_n-\boldsymbol{\mu} \right)^{\mathrm{T}} \mathbf{\Sigma^{-1}}  \right) ^{\mathrm T}
\end{aligned}

互いの転置をとって移項すると、

\mathbf{\Sigma} = \frac{1}{N}\sum_{n=1}^{N}\left(\mathbf{x}_n-\boldsymbol{\mu}\right)\left(\mathbf{x}_n-\boldsymbol{\mu} \right)^{\mathrm{T}}

となり、これは式$(2.122)$となる。また、これによって$\mathbf{\Sigma}$についての対称性を仮定せずに$\mathbf{\Sigma}$が対称行列になることが示された。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?