Expectation-Maximization-Algorithmus

Expectation-Maximization-Algorithmus

Der Expectation-Maximization-Algorithmus (kurz EM-Algorithmus, selten auch Estimation-Maximization-Algorithmus) ist ein Algorithmus der mathematischen Statistik.

Der EM-Algorithmus wird vorrangig zur Ballungsanalyse verwendet (Siehe hierzu den Abschnitt „EM-Algorithmus“ im Artikel Clusteranalyse).

Inhaltsverzeichnis

Funktionsweise

Es liegen Objekte mit einer gewissen Anzahl von Eigenschaften vor. Die Eigenschaften nehmen zufällige Werte an. Einige Eigenschaften können gemessen werden, andere jedoch nicht. Formal gesehen sind die Objekte Instanzen einer mehrdimensionalen Zufallsvariablen X, die einer unbekannten Wahrscheinlichkeitsverteilung p(x) unterliegt; einige Dimensionen sind „beobachtbar“, andere sind „versteckt“. Ziel ist es, die unbekannte Wahrscheinlichkeitsverteilung zu bestimmen.

Zunächst nimmt man an, p(x) sei bis auf einige Parameter bekannt. Meist wählt man p als Mischverteilung, also als gewichtete Summe von so vielen Standardverteilungen, wie beobachtbare Eigenschaften vorliegen. Wählt man beispielsweise als Standardverteilung die Normalverteilung, so sind die unbekannten Parameter jeweils der Mittelwert μ und die Varianz σ2. Ziel ist es nun, die Parameter Θ der vermuteten Wahrscheinlichkeitsverteilung zu bestimmen. Wählt man eine Mischverteilung, so enthält Θ auch die Gewichtungsfaktoren der Summe.

Für gewöhnlich geht man ein solches Problem mit der Maximum-Likelihood-Methode an. Dies ist hier jedoch nicht möglich, da die gesuchten Parameter von den versteckten Eigenschaften abhängen – und diese sind unbekannt. Um trotzdem zum Ziel zu kommen, wird also eine Methode benötigt, die gleichzeitig mit den gesuchten Endparametern die versteckten Parameter schätzt. Diese Aufgabe erfüllt der EM-Algorithmus.

Der EM-Algorithmus arbeitet iterativ und führt in jedem Durchgang zwei Schritte aus:

  1. Versteckte Parameter Y schätzen. Zunächst werden die versteckten Parameter aus den im vorherigen Durchgang bestimmten Endparametern Θ und den beobachteten Daten X geschätzt. Dazu wird die sogenannte Q-Funktion verwendet, die einen vorläufigen Erwartungswert der gesuchten Verteilung berechnet.
  2. Endparameter Θ bestimmen. Jetzt, wo die versteckten Parameter abgeschätzt sind, wird die Maximum-Likelihood-Methode angewandt, um die eigentlich gesuchten Parameter zu bestimmen.

Der Algorithmus endet, wenn sich die bestimmten Parameter nicht mehr wesentlich ändern.

Bewiesenermaßen konvergiert die Folge der bestimmten Θ, d. h. der Algorithmus terminiert auf jeden Fall. Zudem bilden die bestimmten Parameter Θ ein lokales Optimum; das bedeutet, sie sind im Allgemeinen gut, es könnte jedoch unter Umständen (viel) bessere geben.

Formulierung als Zufallsexperiment

Rein formal wird beim EM-Algorithmus angenommen, dass die Werte der beobachteten stochastischen Größe auf folgende Art und Weise zustandekommen: Wähle zuerst eine der eingehenden Zufallsvariablen aus und übernimm deren Wert als Endergebnis. Das bedeutet, dass genau ein Gewicht den Wert eins annimmt und alle anderen null sind. Bei der Approximation der Gewichte durch den EM-Algorithmus ist dies normalerweise aber nicht mehr der Fall. Die Wahrscheinlichkeitsdichte eines Zielwertes lässt sich bei Normalverteilungsannahme und konstanter Varianz der einzelnen Zufallsvariablen darstellen als: p(y_i|h)= \frac{1}{\sqrt{2\pi^2}\sigma} e^{- \frac{1}{2\sigma^2} \sum_{j=1}^{n} w_{ij}(y_i-\mu_j)^2}

Dabei besitzen die verwendeten Bezeichnungen folgende Bedeutungen:

  • wij: Gewicht der j-ten Zufallsvariable für den i-ten Wert der Zielgröße
  • n: Anzahl der Gewichte
  • yi: Wert der i-ten Zielgröße
  • h: Stichprobe
  • μj: Erwartungswert der j-ten Zufallsvariable
  • σ2: Varianz

Lösungsverfahren

Der EM-Algorithmus besteht aus mehreren Iterationen der Schritte Expectation und Maximization.

  • Im ersten Schritt muss das μ frei gewählt werden. Nehme dazu an, dass genau eine beliebige Zufallsvariable (genau eine beliebige Trainingsinstanz yk) diesem Erwartungswert μ entspricht, d.h. setze μ1,appr = yk. Die beiden folgenden Schritte nähern sich dann iterativ dem tatsächlichen μ an.
  • Im Expectation-Schritt werden die Erwartungswerte der Gewichte berechnet unter der Annahme, dass die Erwartungswerte der eingehenden Zufallsvariablen den in Schritt zwei berechneten entsprechen. Dies ist allerdings nur möglich, falls es sich nicht um die erste Iteration handelt.

Die Erwartungswerte lassen sich darstellen als E[w_{ij}]=p(X_j=y_i |\mu _j = \mu _{j,\mathrm{appr}})/ \sum _{k=1}^n p(X_k=y_i|\mu_k = \mu_{k,\mathrm{appr}})

  • Im Maximization-Schritt werden die Erwartungswerte der Wahrscheinlichkeitsverteilungen der einzelnen Zufallsvariablen bestimmt, bei denen die Wahrscheinlichkeit für das Eintreffen des Stichprobenergebnisses maximiert wird. Dies geschieht unter der Annahme, dass die exakten Werte der Gewichte jeweils ihren Erwartungswerten entsprechen. (Maximum-Likelihood-Algorithmus). Die auf diese Weise geschätzten Erwartungswerte ergeben sich bei Normalverteilungsannahme durch \mu_{j,\mathrm{appr}}=\frac{1}{n} \sum_{i=1}^n E[w_{ij}] y_i

Vorteile

  • Kann mit unvollständigen Beobachtungen umgehen

Instanzen des EM-Algorithmus

Beweis für den Maximization-Schritt bei Normalverteilungsannahme

Bewiesen werden soll: \mathrm{maxarg}_{\mu_k}\prod_{i=1}^m P\left( y|h \right) 
=^? \frac{1}{m} \sum_{i=1}^{m} \frac{1}{2\sigma ^2} E[w_{ik}] y_i

Anstatt P(y | h) zu maximieren, kann auch lnP(y | h) maximiert werden, da der Logarithmus eine streng monoton steigende Funktion ist.

\mathrm{maxarg}_{\mu} \ln \prod_{i=1}^m P(y|h) 
= \mathrm{maxarg}_{\mu} \left( \sum_{i=1}^m
\left( \ln \frac{1}{\sqrt{2\pi^2}} 
- \sum_{j=1}^n \frac{1}{2\sigma ^2} E[w_{ij}] (y_i-\mu_j)^2 \right) \right)

= \mathrm{maxarg}_{\mu} \left( m \ln \frac{1}{\sqrt{2\pi^2}} 
- \frac{1}{2\sigma^2} \sum_{i=1}^m \sum_{j=1}^n E[w_{ij}] (y_i-\mu_j)^2 \right)

Der Minuend ist eine Konstante, deswegen ist es ausreichend, den Subtrahend zu minimieren:

\mathrm{minarg}_{\mu} \left( \frac{1}{2\sigma^2} \sum_{i=1}^m \sum_{j=1}^n E \left[w_{ij} \right] \left(y_i-\mu_j \right)^2 \right)= \mathrm{minarg}_{\mu} \left(\sum_{i=1}^m \sum_{j=1}^n E[w_{ij}] (y_i-\mu_j)^2 \right)

Eine quadratische Summe ergibt stets einen nichtnegativen Wert. Daher ist das absolute Minimum durch 0 beschränkt und somit auch ein lokales Minimum. Man setze die 1. Ableitung für diesen Term t nach jedem μk auf 0:

\frac{\mathrm{d}t}{\mathrm{d}\mu_k} = -2\sum_{i=1}^m E \left[w_{ik} \right] \left(y_i-\mu_k \right) = 0,

denn die Ableitung aller Summanden der Summe über j sind 0, außer für j=k. Folglich:

\sum_{i=1}^m E[w_{ik}] y_i= m\mu_k \quad \Rightarrow \quad
\mu_k=\frac{1}{m} \sum_{i=1}^m E\left[w_{ik} \right] y_i

q.e.d.

Literatur

  • Dempster, A.P., Laird. N.M., Rubin, D.B.: Maximum-Likelihood from incomplete data via the EM algorithm. Journal of the Royal Statistical Society, 1977
  • Mitchell, Tom M.: Machine Learning. The Mc-Graw-Hill Companies, Inc., 1997
  • Duda et al.: Pattern Classification. John Wiley & Sons, Inc.

Wikimedia Foundation.

Игры ⚽ Поможем решить контрольную работу

Schlagen Sie auch in anderen Wörterbüchern nach:

  • EM-Algorithmus — Der Expectation Maximization Algorithmus (kurz EM Algorithmus, selten auch Estimation Maximization Algorithmus) ist ein Algorithmus der mathematischen Statistik. Inhaltsverzeichnis 1 Kernidee 2 Mathematische Formulierung 2.1 Funktionsweise …   Deutsch Wikipedia

  • SLAM-Algorithmus — Das SLAM Problem (Simultaneous Localization and Mapping, engl.: Simultane Lokalisierung und Kartenerstellung ) ist ein Problem, bei dem ein mobiler Roboter gleichzeitig eine Karte seiner Umgebung erstellen und seine Pose innerhalb dieser Karte… …   Deutsch Wikipedia

  • k-Means-Algorithmus — Ein k Means Algorithmus ist ein Verfahren zur Clusteranalyse. Dabei wird aus einer Menge von ähnlichen Objekten eine vorher bekannte Anzahl von k Gruppen gebildet. Der Algorithmus ist eine der am häufigsten verwendeten Techniken zur Gruppierung… …   Deutsch Wikipedia

  • Bayes'sches Netz — Dieser Artikel wurde auf der Qualitätssicherungsseite des Portals Mathematik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Mathematik auf ein akzeptables Niveau zu bringen. Dabei werden Artikel gelöscht, die nicht… …   Deutsch Wikipedia

  • Bayes'sches Netzwerk — Dieser Artikel wurde auf der Qualitätssicherungsseite des Portals Mathematik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Mathematik auf ein akzeptables Niveau zu bringen. Dabei werden Artikel gelöscht, die nicht… …   Deutsch Wikipedia

  • Bayes-Netz — Dieser Artikel wurde auf der Qualitätssicherungsseite des Portals Mathematik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Mathematik auf ein akzeptables Niveau zu bringen. Dabei werden Artikel gelöscht, die nicht… …   Deutsch Wikipedia

  • Bayesianisches Netz — Dieser Artikel wurde auf der Qualitätssicherungsseite des Portals Mathematik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Mathematik auf ein akzeptables Niveau zu bringen. Dabei werden Artikel gelöscht, die nicht… …   Deutsch Wikipedia

  • Bayesnetz — Dieser Artikel wurde auf der Qualitätssicherungsseite des Portals Mathematik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Mathematik auf ein akzeptables Niveau zu bringen. Dabei werden Artikel gelöscht, die nicht… …   Deutsch Wikipedia

  • Bayessches Netzwerk — Dieser Artikel wurde auf der Qualitätssicherungsseite des Portals Mathematik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Mathematik auf ein akzeptables Niveau zu bringen. Dabei werden Artikel gelöscht, die nicht… …   Deutsch Wikipedia

  • Kausales Netz — Dieser Artikel wurde auf der Qualitätssicherungsseite des Portals Mathematik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Mathematik auf ein akzeptables Niveau zu bringen. Dabei werden Artikel gelöscht, die nicht… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”