Strukturelle Modelle in der Bildverarbeitung Expectation Maximization für MRF-s
D. Schlesinger – TUD/INF/KI/IS
Gegeben sei ein Modellp(x,y;θ) mit:
beobachteten Variablenx, verborgenen Variableny und einem Parameterθ Gegeben sei eine unvollständige LernstichprobeL= (x1,x2. . .x|L|).
Maximum Likelihood Prinzip:
lnp(L;θ) =
X
l
ln
X
y
p(xl,y;θ)→max
θ
Expectation Maximization Algorithmus:
E: Berechne
α(t)l (y) =p(y|xl;θ(t)) für alle Musterlund alle Werte vony.
M: Maximiere
θ(t+1)= arg max
θ
X
l
X
y
α(t)l (y)·lnp(xl,y;θ)
EM für MRF-s
ysind Labellings,θ≡g,qseien gegeben (müssen nicht gelernt werden) p(x,y;g) = 1
Zexp
−E(x,y;g)
, E(x,y;g) =
X
r
qr(xr,yr) +
X
rr0
grr0(yr,yr0)
E-Schritt ist dasselbe, wie im allgemeinen Fall, d.h. man definiereα(t)l (y) =p(y|xl;g(t)).
Man berücksichtige aber, dass es jetzt nicht möglich ist, alle Zahlen α explizit zu halten (es sind zu viel). Diese Zahlen sind nur ein „Hilfskonstrukt“, der es erlaubt, die Optimierungsaufgabe für den M-Schritt abzuleiten.
M-Schritt – das Modell einsetzen:
F=
X
l
X
y
α(t)l (y)·lnp(xl,y;g) =
X
l
X
y
α(t)l (y)·
−E(xl,y;g)−lnZ
=
−
X
l
X
y
α(t)l (y)·E(xl,y;g)−
X
l
X
y
α(t)l (y)·lnZ→max
g
Derzweite Termist
X
l
X
y
α(t)l (y)·lnZ=
X
l
h
lnZ·
X
y
α(t)l (y)
i
=
X
l
lnZ=|L| ·lnZ
und die Ableitung davon nach einemgrr0(k,k0) ist
|L| · ∂lnZ
∂grr0(k,k0)=−|L| ·p(yr=k,yr0=k0) (siehe vorige Vorlesung).
Dererste Termist
(Achtung!!! Bei der Vorlesung war die Ableitung an der Tafel etwas ungenau):
F0=
X
l
X
y
α(t)l (y)·E(xl,y;g) =
X
l
X
y
α(t)l (y)·
hX
r
qr(xrl,yr) +
X
rr0
grr0(yr,yr0)
i
und die Ableitung davon nach einemgrr0(k,k0) ist
∂F0
∂grr0(k,k0) =
X
l
X
y
α(t)l (y)·∂E(xl,y;g)
∂grr0(k,k0) =
X
l
X
y
α(t)l (y)·1I(yr=k,yr0=k0)
EM für MRF-s
Man erinnere daran, dassα-s a-posteriori Wahrscheinlichkeiten sind, d.h.
X
l
X
y
α(t)l (y)·1I(yr=k,yr0=k0) =
=
X
l
X
y
p(y|xl;g(t))·1I(yr=k,yr0=k0) =
X
l
p(yr=k,yr0=k0|xl;g(t))
Folglich ist es gar nicht notwendig alle α-s (a-posteriori Wahrscheinlichkeiten für jedes Labelling) explizit zu halten, weil im M-Schritt nur die marginalen Wahrscheinlichkeits- werte benötigt sind.
Alles zusammen
– der Gradient der Optimierungsaufgabe für den M-Schritt (normiert auf|L|):
∂F
∂grr0(k,k0)=− 1
|L|
X
l
p(yr=k,yr0=k0|xl;g(t)) +p(yr=k,yr0=k0)
Diese Formel sieht zehr ähnlich dem Gradienten des Likelihoods aus (siehe vorige Vorle- sung). Der Hauptunterschied besteht darin, dass sich jetzt der erste Term des Gradienten wehrend des M-Schrittes nicht ändert. Beim Gradienten Verfahren wird dieser Term in jedem Gradienten-Schritt neu berechnet.
Gradienten Verfahren:
1) Berechne die a-posteriorip(. . .|xl) 2) Berechne die a-priorip(. . .) 3) Berechne den Gradienten
„p(. . .)−p(. . .|xl)“
4) Gehe in Richtung Gradienten Iteriere 1)-4) bis Konvergenz
EM-Algorithmus:
E: Berechne die a-posteriorip(. . .|xl) M: 2) Berechne die a-priorip(. . .)
3) Berechne den Gradienten
„p(. . .)−p(. . .|xl)“
4) Gehe in Richtung Gradienten Iteriere 2)-4) bis Konvergenz Iteriere E-M bis Konvergenz
– Führt man im M-Schritt (2-4 rechts) nur einen Gradienten Schritt durch, so entspricht das exakt dem Gradienten Verfahren
– Gradienten Verfahren ist etwas schneller
– EM-Algorithmus ist etwas stabiler (erinnere an das „Krater“-Beispiel)