機械学習基礎理論独習

誤りがあればご指摘いただけると幸いです。数式が整うまで少し時間かかります。リンクフリーです。

勉強ログです。リンクフリーです
目次へ戻る

PRML演習問題 3.6(基本) www

問題

ガウス分布に従う複数の目標変数 {\bf t} を持つ次の形の線形基底関数モデルを考える。

\begin{eqnarray}
p({\bf t}|{\bf W}, {\bf\Sigma})={\mathcal N}({\bf t}|{\bf y}({\bf x},{\bf W}),{\bf\Sigma})\tag{3.107}
\end{eqnarray}

ただし、

\begin{eqnarray}
{\bf y}({\bf x},{\bf W})={\bf W}^\top{\boldsymbol\phi}({\bf x})\tag{3.108}
\end{eqnarray}

である 入力基底ベクトル {\boldsymbol\phi}({\bf x})(n=1,\ldots,N) とそれに対応する目標ベクトル {\bf t}_n が訓練データ集合として与えられるとき、
パラメータ行列 \bf W最尤推定{\bf W}_{\rm ML} のそれぞれの列が、等方性のノイズ分布に対する解の (3.15) の形の式で与えられることを示せ。
これは共分散行列 \bf\Sigma にはよらないことに注意せよ。
さらに \bf\Sigma最尤推定解が

\begin{eqnarray}
{\bf\Sigma}=\frac{1}{N}\sum_{n=1}^N\left({\bf t}_n-{\bf W}_{\rm ML}^\top{\boldsymbol\phi}({\bf x}_n)\right)\left({\bf t}_n-{\bf W}_{\rm ML}^\top{\boldsymbol\phi}({\bf x}_n)\right)^\top\tag{3.109}
\end{eqnarray}

で与えられることを示せ。

参照

\begin{eqnarray}
{\bf w}_{\rm ML}=\left({\boldsymbol\Phi}^\top{\boldsymbol\Phi}\right)^{-1}{\boldsymbol\Phi}^\top{\bf t}\tag{3.15}
\end{eqnarray}

解答

{\bf T}=\begin{pmatrix}{\bf t}_1,\cdots,{\bf t}_N\end{pmatrix}^\top とおきます。

対数尤度関数 \ln p({\bf T}|{\bf X},{\bf W},{\bf\Sigma}) は以下のようになります。

\begin{eqnarray}
\ln p({\bf T}|{\bf X},{\bf W},{\bf\Sigma})&=&\sum_{n=1}^N\ln{\mathcal N}({\bf t}_n|{\bf y}({\bf x}_n,{\bf W}),{\bf\Sigma})\\
&=&\sum_{n=1}^N\ln{\mathcal N}({\bf t}_n|{\bf W}^\top{\boldsymbol\phi}_n,{\bf\Sigma})\\
&=&\sum_{n=1}^N\ln\left(\frac{1}{(2\pi)^{K/2}}\frac{1}{|{\bf\Sigma}|^{1/2}}\exp\left(-\frac{1}{2}({\bf t}_n-{\bf W}^\top{\boldsymbol\phi}_n)^\top{\bf\Sigma}^{-1}({\bf t}_n-{\bf W}^\top{\boldsymbol\phi}_n)\right)\right)\\
&=&-\frac{NK}{2}\ln(2\pi)-\frac{N}{2}\ln|{\bf\Sigma}|-\frac{1}{2}\sum_{n=1}^N({\bf t}_n-{\bf W}^\top{\boldsymbol\phi}_n)^\top{\bf\Sigma}^{-1}({\bf t}_n-{\bf W}^\top{\boldsymbol\phi}_n)\tag{1}
\end{eqnarray}

(1)\bf W微分して、={\bf O} とおきます。

\begin{eqnarray}
&&\frac{\partial}{\partial{\bf W}}\ln p({\bf T}|{\bf X},{\bf W},{\bf\Sigma})={\bf O}\\
&&\Leftrightarrow\sum_{n=1}^N\frac{\partial}{\partial{\bf W}}({\bf t}_n-{\bf W}^\top{\boldsymbol\phi}_n)^\top{\bf\Sigma}^{-1}({\bf t}_n-{\bf W}^\top{\boldsymbol\phi}_n)={\bf O}\\
&&\Leftrightarrow\sum_{n=1}^N\frac{\partial}{\partial{\bf W}}\left({\bf t}_n^\top{\bf\Sigma}^{-1}{\bf t}_n-2{\boldsymbol\phi}_n^\top{\bf W}{\bf\Sigma}^{-1}{\bf t}_n+{\boldsymbol\phi}_n^\top{\bf W}{\bf\Sigma}^{-1}{\bf W}^\top{\boldsymbol\phi}_n\right)={\bf O}\\
&&\Leftrightarrow\sum_{n=1}^N\left(-2\frac{\partial}{\partial{\bf W}}\left({\boldsymbol\phi}_n^\top{\bf W}{\bf\Sigma}^{-1}{\bf t}_n\right)+\frac{\partial}{\partial{\bf W}}\left({\boldsymbol\phi}_n^\top{\bf W}{\bf\Sigma}^{-1}{\bf W}^\top{\boldsymbol\phi}_n\right)\right)={\bf O}\\
&&\Leftrightarrow\sum_{n=1}^N\left(-2\frac{\partial}{\partial{\bf W}}{\rm Tr}\left({\boldsymbol\phi}_n^\top{\bf W}{\bf\Sigma}^{-1}{\bf t}_n\right)+\frac{\partial}{\partial{\bf W}}{\rm Tr}\left({\boldsymbol\phi}_n^\top{\bf W}{\bf\Sigma}^{-1}{\bf W}^\top{\boldsymbol\phi}_n\right)\right)={\bf O}\\
&&\Leftrightarrow\sum_{n=1}^N\left(-2\frac{\partial}{\partial{\bf W}}{\rm Tr}\left({\bf W}{\bf\Sigma}^{-1}{\bf t}_n{\boldsymbol\phi}_n^\top\right)+\frac{\partial}{\partial{\bf W}}{\rm Tr}\left({\bf W}{\bf\Sigma}^{-1}{\bf W}^\top{\boldsymbol\phi}_n{\boldsymbol\phi}_n^\top\right)\right)={\bf O}\\
&&\Leftrightarrow\sum_{n=1}^N\Bigg(-2\underbrace{\left({\bf\Sigma}^{-1}{\bf t}_n{\boldsymbol\phi}_n^\top\right)^\top}_{\frac{\partial}{\partial{\bf A}}{\rm Tr}({\bf AB})={\bf B}^\top}+\underbrace{\left({\boldsymbol\phi}_n{\boldsymbol\phi}_n^\top\right)^\top{\bf W}\left({\bf\Sigma}^{-1}\right)^\top+{\boldsymbol\phi}_n{\boldsymbol\phi}_n^\top{\bf W}{\bf\Sigma}^{-1}}_{\frac{\partial}{\partial{\bf A}}{\rm Tr}({\bf A}{\bf B}{\bf A}^\top{\bf C})={\bf C}^\top{\bf A}{\bf B}^\top+{\bf C}{\bf A}{\bf B}}\Bigg)={\bf O}\\
&&\Leftrightarrow\sum_{n=1}^N\left(-2{\boldsymbol\phi}_n{\bf t}_n^\top{\bf\Sigma}^{-1}+{\boldsymbol\phi}_n{\boldsymbol\phi}_n^\top{\bf W}{\bf\Sigma}^{-1}+{\boldsymbol\phi}_n{\boldsymbol\phi}_n^\top{\bf W}{\bf\Sigma}^{-1}\right)={\bf O}\\
&&\Leftrightarrow\sum_{n=1}^N\left(-{\boldsymbol\phi}_n{\bf t}_n^\top{\bf\Sigma}^{-1}+{\boldsymbol\phi}_n{\boldsymbol\phi}_n^\top{\bf W}{\bf\Sigma}^{-1}\right)={\bf O}\\
&&\Leftrightarrow\sum_{n=1}^N{\boldsymbol\phi}_n{\boldsymbol\phi}_n^\top{\bf W}{\bf\Sigma}^{-1}=\sum_{n=1}^N{\boldsymbol\phi}_n{\bf t}_n^\top{\bf\Sigma}^{-1}\\
&&\Leftrightarrow\sum_{n=1}^N{\boldsymbol\phi}_n{\boldsymbol\phi}_n^\top{\bf W}=\sum_{n=1}^N{\boldsymbol\phi}_n{\bf t}_n^\top\\
&&\Leftrightarrow\sum_{n=1}^N{\bf W}{\boldsymbol\phi}_n{\boldsymbol\phi}_n^\top=\sum_{n=1}^N{\bf t}_n{\boldsymbol\phi}_n^\top\\
&&\Leftrightarrow\sum_{n=1}^N{\bf W}^\top{\boldsymbol\phi}_n{\boldsymbol\phi}_n^\top=\sum_{n=1}^N{\bf t}_n{\boldsymbol\phi}_n^\top\\
&&\Leftrightarrow{\bf W}^\top\left(\sum_{n=1}^N{\boldsymbol\phi}_n{\boldsymbol\phi}_n^\top\right)=\sum_{n=1}^N{\bf t}_n{\boldsymbol\phi}_n^\top\\
&&\Leftrightarrow{\bf W}^\top{\boldsymbol\Phi}^\top{\boldsymbol\Phi}={\bf T}^\top{\boldsymbol\Phi}\\
&&\Leftrightarrow{\bf W}^\top{\boldsymbol\Phi}^\top{\boldsymbol\Phi}={\bf T}^\top{\boldsymbol\Phi}\\
&&\Leftrightarrow{\boldsymbol\Phi}^\top{\boldsymbol\Phi}{\bf W}={\boldsymbol\Phi}^\top{\bf T}\\
&&\Leftrightarrow{\bf W}=\left({\boldsymbol\Phi}^\top{\boldsymbol\Phi}\right)^{-1}{\boldsymbol\Phi}^\top{\bf T}\tag{2}
\end{eqnarray}

(2) より、 \bf W最尤推定{\bf W}_{\rm ML} のそれぞれの列が、 (3.15) の形の式で与えられることが示せました。

\bf \Sigma については、PRML演習問題 2.34(標準) www と同じであるため、省略します。

補足

\dfrac{\partial}{\partial{\bf A}}{\rm Tr}({\bf AB})={\bf B}^\top\dfrac{\partial}{\partial{\bf A}}{\rm Tr}({\bf A}{\bf B}{\bf A}^\top{\bf C})={\bf C}^\top{\bf A}{\bf B}^\top+{\bf C}{\bf A}{\bf B} の証明については、
ベクトルと行列に関する微分の公式導出をご覧ください。

目次へ戻る