※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。


この項の問題点

この項は未完成であり重大な間違いを含んでいる可能性があります。
数学的な厳密さはありません。式変形の途中で確率分布や確率密度関数がきちんと定義されているのか疑わしいです。また全体的に説明不足です。

概要


問題設定

各記号についてはEMアルゴリズムの項を参照してください。

導出

全ての確率パラメータ\thetaに事前分布p(\theta)が与えられた、完全なベイズモデルを考えます。ここでの目的は周辺尤度p(y)と事後分布p(x,\theta \mid y)を求めることです。対数周辺尤度{\rm L}(y)=\log p(y)を変形していきます。


\begin{eqnarray}
{\rm L}(y) &=& \log p(y)\\
&=& \log \int \sum_{x} p(x,y,\theta) d\theta \\
&=& \log \int \sum_{x} q(x,\theta) \frac{p(x,y,\theta)}{q(x,\theta)} d\theta \\
&\geq& \int \sum_{x} q(x,\theta) \log \frac{p(x,y,\theta)}{q(x,\theta)} d\theta \\
&=& \int \sum_{x} q(x,\theta) \log p(x,y,\theta) d\theta - \int \sum_{x} q(x,\theta) \log q(x,\theta) d\theta \\
&=& E_{q}[\log p(x,y,\theta)] + H[q] \\
&=& F[q]
\end{eqnarray}

上の式の途中でJensenの不等式を用いています。{\rm H}[q]はエントロピーです。差はq(x,\theta)p(x,\theta \mid y)のKullback–Leiblerダイバージェンスとなります。


\begin{eqnarray}
{\rm L}(y) - {\rm F}[q] = {\rm KL}(q \parallel p)
\end{eqnarray}

現在の目的は、対数周辺尤度\log p(y)と事後分布p(x,\theta \mid y)の二つを求めることです。上の式を見るとF[q]の最大化とKullback–Leiblerダイバージェンスの最小化は等価(if and only if)です。またその時、F[q]は対数周辺尤度\log p(y)に近づき、Kullback–Leiblerダイバージェンスを小さくするという意味で、テスト分布q(x,\theta)は事後分布p(x,\theta \mid y)に近づきます。つまり、周辺尤度p(y)と事後分布p(x,\theta \mid y)を求めるという二つの目的を達成するには、F[q]の最大化(もしくはKullback–Leiblerダイバージェンスの最小化)を行えばよいのです。(詳しい説明が必要)

以下ではF[q]を最大化していくことにします。しかしながら、単純にq(x,\theta)を事後分布p(x,\theta \mid y)とすることは困難です。そこでq(x,\theta)の分布系に制約を設け、その制約の中でF[q]を最大化することにします。ここではq(x,\theta) = q(x)q(\theta)を満たすという制約を考えます。これによりq(x)q(\theta)は独立なので、それぞれにおいて最大化を行います。(詳しい説明が必要)

簡単化のため、q_x = q(x)q_\theta = q(\theta)とします。


\begin{eqnarray}
F[q] &=& F[q_x , q_\theta]\\
&=& \int \sum_{x} q(x)q(\theta) \log p(x,y,\theta) d\theta - \int \sum_{x} q(x)q(\theta) \log q(x)q(\theta) d\theta \\
&=& \int \sum_{x} q(x)q(\theta) \log p(x,y \mid \theta) d\theta + \int \sum_{x} q(x)q(\theta) \log p(\theta) d\theta - \int \sum_{x} q(x)q(\theta) \log q(x) d\theta - \int \sum_{x} q(x)q(\theta) \log q(\theta) d\theta \\
&=& \int \sum_{x} q(x)q(\theta) \log p(x,y \mid \theta) d\theta + \int q(\theta) \log p(\theta) d\theta - \sum_{x} q(x) \log q(x) - \int q(\theta) \log q(\theta) d\theta \\
&=& E_{q_x q_\theta}[\log p(x,y \mid \theta)] + E_{q_\theta}[\log p(\theta)] + H[q_x] + H[q_\theta]
\end{eqnarray}

F[q]の中でq(x)q(\theta)の最大化に寄与する項を取り出すと以下のようになります。


\begin{eqnarray}
F_{q_\theta}[q_x] &=& E_{q_x q_\theta}[\log p(x,y \mid \theta)] + H[q_x] + const \\
F_{q_x}[q_\theta] &=& E_{q_x q_\theta}[\log p(x,y \mid \theta)] + E_{q_\theta}[\log p(\theta)] + H[q_\theta] + const
\end{eqnarray}

Euler–Lagrange方程式を用いて最大化します。この場合は微分項を含まないので、Lagrange multiplierを用いたような単純な形になります。制約条件は\sum_{x} q(x) = 1および\int q(\theta) d\theta = 1です。(詳しい説明が必要)

q_\thetaにおいて最大化。


\begin{eqnarray}
J_{q_x}[q_\theta] &=& F_{q_x}[q_\theta] + \lambda(\int q(\theta) d\theta - 1) \\
&=& E_{q_x q_\theta}[\log p(x,y \mid \theta)] + E_{q_\theta}[\log p(\theta)] + H[q_\theta] + \lambda(\int q(\theta) d\theta - 1) + const\\
\end{eqnarray}


\begin{eqnarray}
\frac{\partial J_{q_x}[q_\theta]}{\partial q_\theta} = E_{q_x}[\log p(x,y \mid \theta)] + \log p(\theta) - \log q(\theta) - 1 + \lambda = 0\\
\end{eqnarray}


\begin{eqnarray}
q(\theta) \propto p(\theta) \exp \{ E_{q_x}[\log p(x,y \mid \theta)] \}\\
\end{eqnarray}

q_xにおいて最大化。


\begin{eqnarray}
J_{q_\theta}[q_x] &=& F_{q_\theta}[q_x] + \lambda(\sum_{x} q(x) - 1)\\
&=& E_{q_x q_\theta}[\log p(x,y \mid \theta)] + H[q_x] + \lambda(\sum_{x} q(x) - 1) + const\\
\end{eqnarray}


\begin{eqnarray}
\frac{\partial J_{q_\theta}[q_x]}{\partial q_x} = E_{q_\theta}[\log p(x,y \mid \theta)] - \log q(x) - 1 + \lambda = 0\\
\end{eqnarray}


\begin{eqnarray}
q(x) \propto \exp \{ E_{q_\theta}[\log p(x,y \mid \theta)] \}\\
\end{eqnarray}

まとめると以下のようになります。(右辺と左辺がイコールでないのは正規化が必要であることを表しています)


\begin{eqnarray}
q(\theta) &\propto& p(\theta) \exp \{ \sum_{x} q(x) \log p(x,y \mid \theta) \} \\
q(x) &\propto& \exp \{ \int q(\theta) \log p(x,y \mid \theta) d\theta \} \\
\end{eqnarray}

上の式を見てもらえれば分かるように、この二つの式は互いに依存しあっており完全な解析解にはなっていません。つまりq(\theta)を求めるためにはq(x)が必要であり、q(x)を求めるためにはq(\theta)が必要です。EMアルゴリズムと同様に初期値を与え、繰り返しによりF[q]を増加させていきます。(詳しい説明が必要)


|