Markovsche Modelle auf Bäumen
D. Schlesinger – TUD/INF/KI/IS
– Markovsche Modelle auf Bäumen – Dynamische Programmierung für Bäume – Lernen
– Dynamische Programmierung für allgemeine Graphen
D. Schlesinger () SMBV: Bäume 1 / 10
Markovsche Modelle auf Bäumen
Die „ gewöhnliche“ Parametrisierung (Ketten-ähnlich):
Die diskreten Variablenyi∈Ksind durchnummeriert,
jede Variable (außer einer – Wurzel) hat einen „Vorgänger“j(i)<i
Wahrscheinlichkeit einer Zustandskonfigurationy= (y1,y2. . .yn) ist
p(y) =p(y1)·
n
Y
i=2
p(yi|yj(i))
Parametrisierung durch marginale Wahrscheinlichkeiten (auch Ketten-ähnlich):
p(y) =p(y1)·
n
Y
i=2
p(yi|yj(i)) =p(y1)·
n
Y
i=2
p(yi,yj(i)) p(yj(i)) =
Q
i,j(i)
p(yi,yj(i))
Q
i
p(yi)n(i)−1
n(i) ist die Anzahl der „zuyi benachbarten“ Variablen (Vorgänger oder Nachfolger).
Es gibt keine Wurzel mehr, die Variablen müssen nicht explizit nummeriert werden.
Gegeben sei ein zyklenfreier GraphV= (R,E) mit
– der MengeRder Knoten (r∈Rbezeichnet einen Knoten) – der MengeE={{r,r0}}der Kanten
yr ist die Zufallsvariable, die dem Knotenrentspricht.
p(y) =
Q
{r,r0}∈E
p(yr,yr0)
Q
r∈R
p(yr)n(r)−1 =
Y
{r,r0}∈E
p(yr,yr0)·
Y
r∈R
p(yr)1−n(r)
D. Schlesinger () SMBV: Bäume 3 / 10
Markovsche Modelle auf Bäumen
Und noch etwas allgemeiner:
p(y) = 1 Z
Y
{r,r0}∈E
grr0(yr,yr0)·
Y
r∈R
qr(yr) mit der Partition FunktionZ.
Zusätzliche Anmerkungen zu Parametrisierungen:
– Ausgangspunkt istp(y).
– Für eine beliebigep(y)existierenallep(yr),p(yr,yr0),p(yr|yr0) etc. (selbst wenn die entsprechende Kante nicht existiert).
– Für Bäume ergeben sich daraus verschiedene Parametrisierungen. Sie definierenein und dieselbeWahrscheinlichkeitsverteilungp(y). Sie sind aber von einandernicht unabhängig, z.B.p(yr|yr0) in einer Parametrisierung sollp(yr,yr0) undp(yr0) in der anderen entsprechen.
– Vielmehr, ineinerParametrisierung sind die Parameter von einander nicht unbedingt unabhängig, z.B.
P
k0p(yr=k,yr0=k0) =p(yr=k) muss gelten (marginal constraints).
– Für einen beliebigen Satz vonqundgexistiert genaueinep(y), für einep(y) existierenmehrereParametrisierungen mitqundg.
– Entsprechenqundgirgendwelchen Wahrscheinlichkeitsverteilungen, so sind diese nicht unbedingt die marginalen von der daraus entstehendenp(y). Wenn aber dabei die marginal constraints erfüllt sind, dann doch (aber nur für Bäume).
In zwei Worten – es ist dasselbe, wie bei Ketten.
Variablen werden nach einander eliminiert (durch Bellmansche Funktionen ersetzt).
Dies funktioniert sowohl für SumProd Probleme (Partition Funktion, marginale Wahrscheinlichkeiten), als auch für die Suche nach der a-posteriori wahrscheinlichsten Zustandskonfiguration (MinSum Problem).
D. Schlesinger () SMBV: Bäume 5 / 10
Lernen
Zusätzlich zum „ gewöhnlichen“ Lernen wird nach derBaumstrukturauch gesucht.
Gegeben sei eine Lernstichprobe der ZustandskonfigurationenL= (y1,y2. . .yl) Gesucht wird:
– der Graph, d.h. die (zyklenfreie) Menge der KantenE, – die numerischen Parameterfür diesen Graphen, d.h.
- qr(k) =p(yr=k) für aller∈Rund
- grr0(k,k) =p(yr=k,yr0=k0) für alle{r,r0} ∈E
Die Menge der zu optimierenden Parameter hängt vom Graphen ab.
Maximum Likelihood:
lnp(L;E,q,g) =
X
l
lnp(xl;E,q,g) =
=
X
l
"
X
r∈R
1−n(r)
lnqr(ylr) +
X
rr0∈E
lngrr0(ylr,ylr0)
#
→max
E,q,g
s.t.
X
k
qr(k) = 1,
X
kk0
grr0(k,k0) = 1,
X
k0
grr0(k,k0) =qr(k)
„Verschachtelte“ Optimierung:
Zunächst betrachte man, die Aufgabe auf einem fixierten Baum,
dann setzt man die gefundene Lösung in die Optimierung bezüglich der Struktur ein.
Sei der Baum gegeben:
X
l
"
X
r∈R
1−n(r)
lnqr(ylr) +
X
rr0∈E
lngrr0(yrl,yrl0)
#
=
X
r∈R
1−n(r)
X
k
p∗r(k) lnqr(k) +
X
rr0∈E
X
kk0
p∗rr0(k,k0) lngrr0(k,k0)→max
q,g
s.t. ...
X
k0
grr0(k,k0) =qr(k)
mit den aus der Lernstichprobe berechneten Statistikenp∗r(k) undp∗rr0(k,k0).
Wegen den Nebenbedingungen ist es nicht möglich, die Summanden von einander getrennt zu optimieren. Ausweg:
– Gehe zu der Parametrisierung mit den bedingten Wahrscheinlichkeitsverteilungen.
Sie sind mit einander nicht gekoppelt.
– Beweisep(yr|yr0) =p∗(yr|yr0) (durch das Schennonsche Lemma).
– Daraus ergibt sich automatischgrr0(k,k0) =p∗rr0(k,k0) undqr(k) =p∗r(k).
D. Schlesinger () SMBV: Bäume 7 / 10
Lernen
Man setzegrr0(k,k0) =p∗rr0(k,k0) undqr(k) =p∗r(k) in die Zielfunktion ein:
X
r∈R
1−n(r)
X
k
p∗r(k) lnp∗r(k) +
X
rr0∈E
X
kk0
p∗rr0(k,k0) lnp∗rr0(k,k0) =
=
X
r∈R
X
k
p∗r(k) lnpr∗(k) +
+
X
rr0∈E
"
X
kk0
p∗rr0(k,k0) lnprr∗0(k,k0)−
X
k
p∗r(k) lnp∗r(k)−
X
k
pr∗0(k) lnpr∗0(k)
#
Das ist die Qualität (log-Likelihood) des optimalen Parametersatzes für einen fixierten Baum. Dies soll jetzt bezüglich der Baumstruktur optimiert werden.
Die erste Summe
P
r∈Rhängt von der Baumstruktur nicht ab. Man bezeichne crr0=
X
kk0
p∗rr0(k,k0) lnp∗rr0(k,k0)−
X
k
p∗r(k) lnpr∗(k)−
X
k
pr∗0(k) lnpr∗0(k)
Man erhält die Aufgabe der Suche nach dem maximalen aufspannenden Baum:
X
rr0∈E
crr0 →max
E
Man betrachte den folgenden Prozess der Erzeugung eines Graphen:
Die Knoten werden nach und nach in den Graphen eingefügt (ein Knoten am Anfang).
Der neu eingefügte Knoten wird mit einem vollverbundenen Teilgraphen durch die Kanten verbunden. Dieser vollverbundene Teilgraph besteht aus maximalwKnoten.
Nachdem alle Knoten eingefügt sind, werden manche Kanten entfernt.
Gegeben sei ein Graph. SeineBreite (treewidth) ist die kleinste Zahl w so, dass der Graph durch den wie oben beschriebenen Prozess erzeugt werden kann – partieller w-Baum.
Beispiele:
Ketten, Bäume:w= 1 Zyklen, Simple Netze:w= 2 Gitter:n×m:w= min(n,m)
Bei einem fixiertenwkann in polynomieller Zeit beantwortet werden, ob ein gegebener Graph die Breitewhat – polynomiell inn, allerdings exponentiell inw
→die Aufgabe der Bestimmung vonwist NP-vollständig.
D. Schlesinger () SMBV: Bäume 9 / 10
Dynamische Programmierung für allgemeine Graphen
Die Idee der Dynamischen Programmierung: wenn die Reihenfolge der Knoten Bekannt ist, kann man die Knoten in der umgekehrten Reihenfolge eliminieren. Die Bellmansche Funktionen haben dabei die Ordnung maximalw, d.h.B:Kw→R.
Die Dynamische Programmierung hat die ZeitkomplexitätO(nKw+1) Beispiele:
Kette: eliminiert wird der „erste“ Knoten,w= 1,B:K→R,O(nK2) Baum: eliminiert wird immer ein Blatt, alles andere – dasselbe
Zyklus: eliminiert wird ein beliebiger Knoten,w= 2,B:K×K→R,O(nK3) Das obige Beispiel:w= 3,B:K3→R,O(nK4)