PRML Implementierte den EM-Algorithmus für die gemischte Gaußsche Verteilung in Kapitel 9. Link zum Jupyter-Notizbuch
Ergebnis
Clustering Old Faithful Intermittent Spring Data mit K-Mitteln und EM-Algorithmus für gemischte Gaußsche Verteilung tat.
Erwägung
Der EM-Algorithmus für die gemischte Gaußsche Verteilung kann auf verschiedene Probleme angewendet werden, wobei andere Modelle als die gemischte Gaußsche Verteilung berücksichtigt werden.
EM-Algorithmus für gemischte Gaußsche Verteilung
Mischungen von Gaußschen
Die gemischte Gaußsche Verteilung wird durch eine Überlagerung von K Gaußschen Verteilungen dargestellt.$p(\mathbf{x}) = \Sigma_{k=1}^{K} \pi_{k} \mathcal{N}(\mathbf{x}|\mathbf{\mu_{\rm{k}}}, \mathbf{\Sigma_{\rm{k}}})Jede Gaußsche Verteilung\mathcal{N}(\mathbf{x}|\mathbf{\mu_{\rm{k}}}, \mathbf{\Sigma_{\rm{k}}})Ist__Mischungskomponente__Genannt, jeder einzeln durchschnittlich\mathbf{\mu_{\rm{k}}}, Mitverteilt\mathbf{\Sigma_{\rm{k}}}$Hat die Parameter von.
Der Parameter $ \ pi_ {k} $ heißt __Mischungskoeffizient __. $ \ Sigma_ {k = 1} ^ {K} \ pi_ {k} = 1 $ $ 0 \ leqslant \ pi_ {k} \ leqslant 1 $.
Latente Variablen eingeführt
K-dimensionale binäre Wahrscheinlichkeitsvariable\mathbf{z}Vorstellen.\mathbf{z}Ist\mathbf{x}Stellt dar, von welchem gemischten Element 1-of-Nehmen Sie die K-Codierungsmethode (eine beliebige)z_{k}だけが1で、他Ist0)。\mathbf{x}Wann\mathbf{z}Gleichzeitige Verteilung vonp(\mathbf{x}, \mathbf{z})Wird wie folgt ausgedrückt.$p(\mathbf{x}, \mathbf{z})=p(\mathbf{z})p(\mathbf{x}|\mathbf{z})$p(\mathbf{z})Ist混合係数\pi_{k}Es wird wie folgt entschieden.$p(z_{k}=1)=\pi_{k}1-of-Da die K-Codierung verwendet wird, kann sie auch wie folgt geschrieben werden.p(\mathbf{z})=\Pi_{k=1}^{K}\pi_{k}^{z_k}$\mathbf{z}の値が与えられたもWannでの\mathbf{x}の条件付き分布Ist次のガウス分布である。$p(\mathbf{x}|z_{k}=1)=\mathcal{N}(\mathbf{x}|\mathbf{\mu_{\rm{k}}}, \mathbf{\Sigma_{\rm{k}}})これIstp(\mathbf{x}|\mathbf{z})=\Pi_{k=1}^{K} \mathcal{N}(\mathbf{x}|\mathbf{\mu_{\rm{k}}}, \mathbf{\Sigma_{\rm{k}}})^{z_{k}}Wannいう形にも書ける。p(\mathbf{x}, \mathbf{z})Peripherie zum vorherigenp(\mathbf{x})Bekommen.p(\mathbf{x})=\Sigma_{\mathbf{z}}p(\mathbf{z})p(\mathbf{x}|\mathbf{z})=\Sigma_{k=1}^{K} \pi_{k} \mathcal{N}(\mathbf{x}|\mathbf{\mu_{\rm{k}}}, \mathbf{\Sigma_{\rm{k}}})$\mathbf{z}Die Einführung scheint sinnlos zu sein, ist jedoch für die Ableitung des EM-Algorithmus erforderlich.
Belastung (Verantwortung)
Die bedingte Wahrscheinlichkeit von $ \ mathbf {z} $ bei $ \ mathbf {x} $ wird durch $ \ gamma (z_ {k}) $ dargestellt.
\begin{align}
\gamma(z_{k})\equiv p(z_{k}=1|\mathbf{x})&=\frac{p(z_{k}=1)p(\mathbf{x}|z_{k}=1)}{\Sigma_{j=1}^{K}p(z_{j}=1)p(\mathbf{x}|z_{j}=1}\\
&=\frac{\pi_{k}\mathcal{N}(\mathbf{x}|\mathbf{\mu_{\rm{k}}}, \mathbf{\Sigma_{\rm{k}}})}{\Sigma_{j=1}^{K}\pi_{j}\mathcal{N}(\mathbf{x}|\mathbf{\mu_{\rm{j}}}, \mathbf{\Sigma_{\rm{j}}})}
\end{align}
Korrespondenz, wenn $ \ pi_ {k} $ $ z_ {k} = 1 $ Ereignis __ vorherige Wahrscheinlichkeit __ ist, $ \ gamma (z_ {k}) $ ist $ \ mathbf {x} $ Es wird als _post-Wahrscheinlichkeit __ angesehen. $ \ Gamma (z {k}) $ kann auch als verantwortung interpretiert werden, die den Grad darstellt, in dem das gemischte Element k die Beobachtung von $ \ mathbf {x} $ "erklärt".
EM-Algorithmus für gemischte Gaußsche Verteilung
- Initialisieren Sie den Durchschnitt $ \ mathbf {\ mu_ {\ rm {k}}} $, die Varianz $ \ Sigma_ {k} $ und den Mischungskoeffizienten $ \ pi_ {k} $ und berechnen Sie den Anfangswert der logarithmischen Wahrscheinlichkeit. ..
- \mathbf{E}Schritt: Berechnen Sie den Belastungsfaktor anhand der aktuellen Parameterwerte.$\gamma(z_{nk})=\frac{\pi_{k}\mathcal{N}(\mathbf{x_{\rm{n}}}|\mathbf{\mu_{\rm{k}}}, \mathbf{\Sigma_{\rm{k}}})}{\Sigma_{j=1}^{K}\pi_{j}\mathcal{N}(\mathbf{x_{\rm{n}}}|\mathbf{\mu_{\rm{j}}}, \mathbf{\Sigma_{\rm{j}}})}$\mathbf{x_{\rm{n}}}Ist der n-te Datenpunkt.z_{nk}Ist die latente Variable für den n-ten Datenpunkt.
- $ \ mathbf {M} $ Schritt: Berechnen Sie den Parameterwert mit der folgenden Formel unter Verwendung der aktuellen Belastungsrate neu.
\begin{align}
\mathbf{\mu_{\rm{k}}^{\rm{new}}}&=\frac{1}{N_{k}}\Sigma_{n=1}^{N}\gamma(z_{nk})\mathbf{x_{\rm{n}}}\\
\Sigma_{k}^{new}&=\frac{1}{N_{k}}\Sigma_{n=1}^{N}\gamma(z_{nk})(\mathbf{x_{\rm{n}}}-\mathbf{\mu_{\rm{k}}^{\rm{new}}})(\mathbf{x_{\rm{n}}}-\mathbf{\mu_{\rm{k}}^{\rm{new}}})^{T}\\
\pi_{k}^{new}&=\frac{N_{k}}{N}
\end{align}
N_ {k} = \ Sigma_ {n = 1} ^ {N} \ gamma (z_ {nk})
4.Log-Wahrscheinlichkeit$\ln(p(\mathbf{X}|\mathbf{\mu}, \mathbf{\Sigma}, \mathbf{\pi})=\Sigma_{n=1}^{N}\ln\\{\Sigma_{k=1}^{K}\pi_{k}\mathcal{N}(\mathbf{x_{\rm{n}}}|\mathbf{\mu_{\rm{k}}}, \mathbf{\Sigma_{\rm{k}}})\\}$Wird berechnet und die Konvergenz durch Beobachtung der Änderung des Parameterwerts oder der Änderung der logarithmischen Wahrscheinlichkeit bestätigt.
Referenz
Geschrieben von C. M. Bishop, übersetzt von Hiroshi Motoda, Takio Kurita, Tomoyuki Higuchi, Yuji Matsumoto, Noboru Murata, Mustererkennung und maschinelles Lernen, Kapitel 9, Maruzen Publishing