Strukturelle Modelle in der Bildverarbeitung
Markovsche Ketten, Lernen nach dem Maximum Likelihood Prinzip
D. Schlesinger – TUD/INF/KI/IS
– Maximum Likelihood Prinzip (allgemein) – ML für Markovsche Ketten (überwacht) – Unüberwachtes Lernen, EM Algorithmus – EM für Markovsche Ketten
D. Schlesinger () SMBV: Markovsche Ketten, ML 1 / 15
Lernen
Das übergeordnete Thema – Lernen
Gegeben sei eine parametrisierte Klasse (Familie) der Wahrscheinlichkeitsverteilungen, d.h.P(x; Θ)∈ P.
Beispiel – die Menge aller Gaussiane imRn p(x;µ, σ) = 1
(√
2πσ)nexp
h
−kx−µk2 2σ2
i
,
parametrisiert mit dem Mittelwertµ∈Rnundσ∈R, d.h. Θ = (µ, σ)
Eine Lernstichprobe steht zur Verfügung: z.B.L= (x1,x2, . . . ,x|L|) mitxl∈Rn. Man entscheide sich für eine Wahrscheinlichkeitsverteilung aus der vorgegebenen Familie, d.h. für einen Parametersatz (z.B. Θ∗= (µ∗, σ∗) für den Gaussian).
D. Schlesinger () SMBV: Markovsche Ketten, ML 2 / 15
Maximum Likelihood Prinzip
Die Lernstichprobe ist eine Realisierung der unbekannten Wahrscheinlichkeitsverteilung, sie ist entsprechend der Wahrscheinlichkeitsverteilung gewürfelt.
⇓
Das, was beobachtet wird, hat hohe Wahrscheinlichkeit
⇓
Maximiere die Wahrscheinlichkeit der Lernstichprobe bezüglich der Parameter:
p(L; Θ)→max
Θ
D. Schlesinger () SMBV: Markovsche Ketten, ML 3 / 15
Diskrete Wahrscheinlichkeitsverteilungen
Allgemeine diskrete Wahrscheinlichkeitsverteilung fürk∈K, d.h. Θ =p(k)∈R|K|,p(k)≥0,
P
kp(k) = 1.
LernstichprobeL= (k1,k2, . . . ,k|L|),kl∈K.
Annahme (sehr oft):
Die Elemente der Lernstichprobe werden unabhängig von einander generiert.
ML:
p(L; Θ) =
Y
l
p(kl) =
Y
k
Y
l:kl=k
p(k) =
Y
k
p(k)n(k)
mit den Häufigkeitenn(k) der Wertekin der Lernstichprobe.
lnp(L; Θ) =
X
k
n(k) lnp(k)→max
p
oder (bei einer unendlichen Lernstichprobe) lnp(L; Θ) =
X
k
p∗(k) lnp(k)→max
p
D. Schlesinger () SMBV: Markovsche Ketten, ML 4 / 15
Das Schannonsche Lemma
X
i
ailnxi→max
x , s.t. xi≥0 ∀i,
X
i
xi= 1 mit ai≥0
Methode der Lagrange Koeffizienten:
F=
X
i
ailnxi+λ
X
i
xi−1
→min
λ max
x
dF dxi
=ai
xi
+λ= 0 dF
λ =
X
i
xi−1 = 0 xi=c·ai
X
i
c·ai−1 = 0 xi= ai
P
i0ai0
Die optimale Wahrscheinlichkeitsverteilung für das Beispiel 1:
Zähle, wieviel mal jedeskin der Lernstichprobe vorhanden ist und normiere auf 1.
D. Schlesinger () SMBV: Markovsche Ketten, ML 5 / 15
Wahrscheinlichketsdichten
Zum Beispiel Gaussian, d.h. eine parametrisierte Wahrscheinlichketsdichte p(x;µ, σ) = 1
(√
2πσ)nexp
h
−kx−µk2 2σ2
i
,
d.h. Θ = (µ, σ), mitµ∈Rn,σ∈R.
LernstichprobeL= (x1,x2, . . . ,x|L|) – jeder Wert vonxist nur ein Mal (?) vorhanden.
ML:
lnp(L;µ, σ) =
X
l
h
−nlnσ−kxl−µk2 2σ2
i
=
=−|L| ·n·lnσ− 1 2σ2
X
l
kxl−µk2→max
µ,σ
dlnp(L;µ, σ)
dµ = 0 ⇒ µ= 1
|L|
X
l
xl dlnp(L;µ, σ)
dσ = 0 ⇒ σ= 1
n· |L|
X
l
kxl−µk2
D. Schlesinger () SMBV: Markovsche Ketten, ML 6 / 15
ML für Markovsche Ketten
Das Modell:
p(x,y; Θ) =p(y1)·
n
Y
i=2
p(yi|yi−1)·
n
Y
i=1
p(xi|yi) Unbekannte Parameter: Θ = (q1,gi,qi) mit
– Startwahrscheinlichkeitsverteilungq1(k) (entsprichtp(y1)),
– Übergangswahrscheinlichkeitsverteilungengi(k,k0) (entsprechenp(yi|yi−1)), – Bedingte Wahrscheinlichkeitsverteilungenqi(c,k) (entsprechenp(xi|yi)).
Lernstichprobe:L= (x1,y1),(x2,y2). . .(xl,yl)
Likelihood:
lnp(L,Θ) =
X
l
lnp(xl,yl; Θ) =
X
l
"
lnq1(y1l) +
n
X
i=2
lngi(yli,yi−1l ) +
n
X
i=1
lnqi(xil,yli)
#
X
l
lnq1(y1l) +
n
X
i=2
X
l
lngi(yli,yi−1l ) +
n
X
i=1
X
l
lnqi(xil,yil)→max
Θ
Jeder Summand kann unabhängig von anderen optimiert werden!!!
D. Schlesinger () SMBV: Markovsche Ketten, ML 7 / 15
ML für Markovsche Ketten
X
l
lnq1(y1l) =
X
k
X
l:yl1=k
lnq1(y1l) =
X
k
X
l:yl1=k
lnq1(k) =
X
k
n1(k) lnq1(k)→max
q1
mit relativen Häufigkeitenn1(k) (in der Lernstichprobe) der Zustände im ersten Zeitpunkt.
Nach dem Schannonschen Lemma (daq1(k)≥0 und
P
kq1(k) = 1) q1(k)∼n1(k)
(Fast) Analog für alle Übergangsmatrizengi(k,k0):
X
l
lngi(yil,yli−1) =
X
k
X
k0
X
l:yli=k,yi−1=k0
lngi(k,k0) =
X
k
X
k0
ni(k,k0) lngi(k,k0)→max
gi
X
k
ni(k,k0) lngi(k,k0)→max
gi
∀k0
⇒gi(k,k0)∼ni(k,k0)
Setze die Parameter des Modells auf die aus der Lernstichprobe entnommenen Statistiken.
D. Schlesinger () SMBV: Markovsche Ketten, ML 8 / 15
Unüberwachtes Lernen, EM (Idee)
(Allgemein): Das Modell ist eine Wahrscheinlichkeitsverteilungp(x,k; Θ) für Paarex(Beobachtung) undk(Klasse)
In der Lernstichprobe ist die Information unvollständig – die Klasse wird nicht beobachtet, d.h.L= (x1,x2. . .xl)
Die Aufgabe nach dem Maximum Likelihood Prinzip: lnp(L; Θ)→max
Θ
Die Idee – ein iteratives Verfahren:
1. „Erkennung“ (Vervollständigung der Daten): (x1,x2. . .xl), Θ⇒„Klassen“
2. Überwachtes Lernen: „Klassen“, (x1,x2. . .xl)⇒Θ
Achtung!!! Bayessche Erkennung ist nicht möglich, denn es gibt keine Kostenfunktion.
D. Schlesinger () SMBV: Markovsche Ketten, ML 9 / 15
Unüberwachtes Lernen, EM (Ableitung)
lnp(L; Θ) =
X
l
lnp(xl) =
X
l
ln
X
k
p(xl,k; Θ)→max
Θ
Expectation-Maximization Algorithmus:
Man führt eine „Nahrhafte Eins“ wie folgt ein:
X
l
"
X
k
αl(k) lnp(k,xl; Θ)−
X
k
αl(k) ln p(k,xl; Θ)
P
k0p(k0,xl; Θ)
#
mitαl(k)≥0,
P
kαl(k) = 1 für allel.
Dann ist dieser Ausdruck dem oberen äquivalent (Beweis nur für einen Musterxl):
X
k
αl(k) lnp(k,xl; Θ)−
X
k
αl(k) ln p(k,xl; Θ)
P
k0p(k0,xl; Θ) =
X
k
h
αl(k) lnp(k,xl; Θ)−
αl(k) lnp(k,xl; Θ)−αl(k) ln
X
k0
p(k0,xl; Θ)
i
=
X
k
αl(k) ln
X
k0
p(k0,xl; Θ) = ln
X
k0
p(k0,xl; Θ)·
X
k
αl(k) = ln
X
k0
p(k0,xl; Θ)
D. Schlesinger () SMBV: Markovsche Ketten, ML 10 / 15
Unüberwachtes Lernen, EM-Algorithmus
lnp(L; Θ) =F(Θ, α)−G(Θ, α), mit F(Θ, α) =
X
l
X
k
αl(k) lnp(k,xl; Θ)
G(Θ, α) =
X
l
X
k
αl(k) ln p(k,xl; Θ)
P
k0p(k0,xl; Θ) =
X
l
X
k
αl(k) lnp(k|xl; Θ)
Man starte mit einem beliebigen Parametersatz Θ(0)und wiederhole:
ExpectationSchritt – „die Fehlenden Daten vervollständigen“:
Man wähleα(t)so, dass das Maximum vonGbezüglich Θ genau an der Stelle Θ(t)eintritt.
Laut Schannonsches Lemma:
α(t)l (k) =p(k|xl; Θ(t))
Achtung!!! Das ist keine Optimierung, das ist eine Abschätzung der oberen Schranke fürG.
MaximizationSchritt – „überwachtes Lernen“:
Man maximiereFbezüglich Θ:
Θ(t+1)= arg max
Θ
F(Θ, α(t))
D. Schlesinger () SMBV: Markovsche Ketten, ML 11 / 15
Zusätzliche Bemerkungen
Der Maximum-Likelihood Schätzer istkonsistent,
d.h. er liefert die tatsächlichen Parameter bei unendlichen Lernstichproben.
Der Maximum-Likelihood Schätzer ist nicht immererwartungswerttreu,
d.h. bei endlichen Lernstichproben stimmt der Mittelwert des geschätzten Parameters nicht unbedingt mit dem tatsächlichen überein.
Beispiele: ML fürµist erwartungswerttreu, ML fürσ– nicht.
Expectation-Maximization Algorithmus konvergiert immer, aber nur zum lokalen Optimum (nicht global).
Ersetzt man im Expectation Schritt die Berechnung der a-posteriori Wahrscheinlichkeiten durch Erkennung, so erhält man etwas, was dem K-Means Algorithmus ähnlich ist. Oft nennt man das (fälschlicherweise) „EM-like Scheme“. Das istkeinML! Allerdings ist dies sehr populär, denn es ist unter Umständen viel einfacher anstatt der benötigten marginalen Verteilungen zum Beispiel MAP-Entscheidung zu berechnen.
D. Schlesinger () SMBV: Markovsche Ketten, ML 12 / 15
EM für Markovsche Ketten
Das Modell:
p(x,y; Θ) =p(y1)·
n
Y
i=2
p(yi|yi−1)·
n
Y
i=1
p(xi|yi) Unbekannte Parameter: Θ = (q1,gi,qi) mit
– Startwahrscheinlichkeitsverteilungq1(k) (entsprichtp(y1)),
– Übergangswahrscheinlichkeitsverteilungengi(k,k0) (entsprechenp(yi|yi−1)), – Bedingte Wahrscheinlichkeitsverteilungenqi(c,k) (entsprechenp(xi|yi)).
Lernstichprobe: (jetzt anders!!!)L= (x1,x2. . .xl)
Die nicht beobachtbaren Folgenyentsprechen den „Klassen“kim allgemeinen Fall – das, worüber summiert wird.
Likelihood:
lnp(L,Θ) =
X
l
lnp(xl; Θ) =
X
l
ln
X
y
p(xl,y; Θ)→max
Θ
Man führeαl(y)≥0 mit
P
yαl(y) = 1 für allel ein.
InExpectationSchritt setzt manαl(y) =p(y|xl; Θ).
Dies ist technisch nicht möglich – nur Hilfskonstrukt.
D. Schlesinger () SMBV: Markovsche Ketten, ML 13 / 15
EM für Markovsche Ketten
MaximizationSchritt:
X
l
X
y
αl(y) lnp(xl,y; Θ) =
X
l
X
y
αl(y)·
"
lnq1(y1) +
n
X
i=2
lngi(yi,yi−1) +
n
X
i=1
lnqi(xil,yi)
#
=
X
k
α1(k) lnq1(k) +
n
X
i=2
X
kk0
αi(k,k0) lngi(k,k0) +
n
X
i=1
αi(c,k) lnqi(c,k)→max
Θ
mit
α1(k) =
X
l
X
y:y1=k
αl(y) =
X
l
X
y:y1=k
p(y|xl; Θ) =
X
l
p(y1=k|xl; Θ)
αi(k,k0) =
X
l
X
y:yi=k,yi−1=k0
αl(y) =
X
l
p(yi=k,yi−1=k0|xl; Θ)
αi(c,k) =
X
l
X
y:yi=k,xi=c
αl(y) =
X
l
p(yi=k,xi=c|xl; Θ)
Dieαl(y) werden nicht explizit benötigt, sondern nur die „marginalen“α-s.
Diese lassen sich effizient mit dem SumProd Algorithmus berechnen.
D. Schlesinger () SMBV: Markovsche Ketten, ML 14 / 15
EM für Markovsche Ketten
Zusammenfassend:
Initialisiere die Parameterq1(0),g(0)i undq(0)i Wiederhole
1. Expectation: berechne
α1(k) =
X
l
p(y1=k|xl;q(t)1 ,g(t)i ,qi(t))
αi(k,k0) =
X
l
p(yi=k,yi−1=k0|xl;q(t)1 ,gi(t),qi(t))
αi(c,k) =
X
l
p(yi=k,xi=c|xl;q1(t),gi(t),qi(t))
mit dem SumProd Algorithmus.
2. Maximization: setze
q1(t+1)(k)∼α1(k) normiert so, dass
X
k
q1(t+1)(k) = 1
g(t+1)i (k,k0)∼αi(k,k0) normiert so, dass
X
k
g(t+1)i (k,k0) = 1 ∀k0
qi(t+1)(c,k)∼αi(c,k) normiert so, dass
X
c
qi(t+1)(c,k) = 1 ∀k
D. Schlesinger () SMBV: Markovsche Ketten, ML 15 / 15