x - Institut für Informatik

Werbung
Universität Potsdam
Institut für Informatik
Lehrstuhl Maschinelles Lernen
Graphische Modelle
Christoph Sawade/Niels Landwehr/Tobias Scheffer
Graphische Modelle: Inferenz

Sa
awade/Landwehr/Sccheffer, Maschinelle
es Lernen II

Wir haben eine Domäne durch gemeinsame Verteilung
aller Zufallsgrössen modelliert
Inferenz: Wahrscheinlichkeit dafür, dass Variablen
bestimmte Werte annehmen, gegeben Informationen
über andere Variablen?
2
Überblick
Gerichtete Graphische Modelle: Bayessche Netze

Graphische Modelle im Maschinellen Lernen

Inferenz in Graphischen Modellen


Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Exakte Inferenz: Message-Passing
Approximative Inferenz: Sampling
3
Exakte Inferenz: Message-Passing
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Message Passing Algorithmus auf linearer Kette
N
p(x)   i ,i 1 ( xi , xi 1 )
 ( x2 )  ( xa 1 )  ( xa )
 ( xa )
 ( xa 1 )  ( xN 1 )
i 1
xa
  ( xN )  1
Für k  N -1,..., a:  ( xk )    k ,k 1 ( xk , xk 1 ) ( xk 1 )
xk 1
 ( x1 )  1
Für k  2,...,
, , a:
 ( xk )    k 1,1 k ( xk 1 , xk ) ( xk 1 )
xk 1
p( xa )   ( xa )  ( xa )
Randverteilung über Anfragevariable xa:
Produkt der Nachrichten
4
Message-Passing mit Evidenz

Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Bisher Randverteilung p( xa ) ohne Evidenz bestimmt
Was ist wenn wir Evidenz haben?
Notation :{x1 ,..., xN }  { xa , xi1 ,..., xim , x j1 ,..., x jk }



 

AnfrageVariable

Evidenz-Variablen restliche Variablen
Bedingte Verteilung
p( xa | xi1 ,., xim ) 
p( xa , xi1 ,...., xim )
p( xi1 ,...., xim )
1
p( xa , xi1 ,...., xim )
Z
1
=  ... p( x j1 ,...., x jk , xa , xi1 ,...., xim )

 


Z x j1
x jk

Z einfach zu berechnen
(Normalisierer univariate Verteilung)
aussummieren
fest
5
Message-Passing mit Evidenz

Ziel: p( xa , xi1 ,..., xim )  ?
Leichte Modifikation des Message-Passing Algorithmus

Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Wir berechnen wie bisher Nachrichten
 ( xN 1 ),...,  ( xa )
 ( x2 ),...,  ( xa )

Falls xk+1 unbeobachtet ist, summieren wir diesen Knoten aus
k  1{i1 , ..., im }
  ( xk )    k ,k 1 ( xk , xk 1 ) ( xk 1 )
xk 1

Falls xk+1 beobachtet ist, verwenden wir nur den
entsprechenden Summanden
x k 1 beobachteter Wert (Evidenz)
k  1{i1 ,..., im }
  ( xk )   k ,k 1 ( xk , xk 1 )  ( xk 1 )
6
Message-Passing mit Evidenz
Ebenso für  ( xk )
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

  k 1,k ( xk 1 , xk ) ( xk 1 ) : k  1{i1 ,..., im } (Knoten nicht beobachtet)

 ( xk )   xk 1
 k 1,k ( xk 1 , xk )  ( xk 1 ) : k  1{i1 , ..., im }
(Knoten beobachtet)

Jetzt gilt
p( xa , xi1 ,..., xim )   ( xa )  ( xa )

Laufzeit für Inferenz mit Evidenz immer noch
O( NK 2 )
7
Beispiel: Markov Modelle
Beispiel für Inferenz auf linearer Kette: Markov Modelle

Markov
a o Modelle:
ode e e
einfache
ac e Modelle
ode e für
ü dy
dynamische
a sc e
probabilistische Prozesse




Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Prozess, der verschiede Zustände annehmen kann
Zufallsvariable Xt repräsentiert den Zustand zur Zeit t
Diskrete Zeitpunkte t=1,…,T
Beispiel: Wetter


Zufallsvariable Xt = Wetter am Tag t
Zwei mögliche Zustände, Regen und Sonne
8
Beispiel: Markov Modelle
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Modellierung:

Prozess wird in einem zufällig gewählten Zustand gestartet:
Verteilung über Startzustände p( x1 )

In jedem Schritt geht der Prozess in einen neuen Zustand über,
abhängig nur vom gegenwärtigen Zustand (vereinfachende
Annahme!)
Verteilung über nächsten Zustand p( xt 1 | xt )

Unabhängigkeitsannahme:
t : p( xt 1 | x1 ,..., xt )  p( xt 1 | xt )

"Markov"
Markov Eigenschaft
Übergangswahrscheinlichkeiten hängen nicht von t ab:
t : p( xt 1 | xt )  p( xt | xt 1 )
"Homogener" Prozess
9
Beispiel: Markov Modelle
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Gemeinsame Wahrscheinlichkeit über alle Zustände
T
p( x1 ,..., xT )   p( xt | x1 ,..., xt 1 )
t 1
T
 p( x1 ) p( xt | xt 1 )
t 2

„Zukunft ist unabhängig von der
Vergangenheit gegeben Gegenwart“
Darstellung als graphisches Modell:
10
Beispiel: Markov Modelle
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Gemeinsame Wahrscheinlichkeit über alle Zustände
T
p( x1 ,..., xT )   p( xt | x1 ,..., xt 1 )
t 1
T
 p( x1 ) p( xt | xt 1 )
t 2

„Zukunft ist unabhängig von der
Vergangenheit gegeben Gegenwart“
Darstellung als graphisches Modell:
x1
x2
x3
x4
…
11
Beispiel: Markov Modelle
Beispiel Markov Modell:


Zustand xt = Wetter am Tag t
Zwei mögliche Zustände, Regen und Sonne
x1

x2
x3
Verteilungen
p( x1  s)  0.5
05
p( xt  s | xt 1  s)  0.8
08
p( x1  r )  0.5
p( xt  r | xt 1  s)  0.2
x4
…
Wahrscheinlichkeit, dass morgen
die Sonne scheint, gegeben dass
es heute regnet.
g
p( xt  s | xt 1  r )  0.4
p( xt  r | xt 1  r )  0.6
06
12
Sa
awade/Landwehr/Sccheffer, Maschinelle
es Lernen II

Beispiel: Markov Modelle
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Markov Modelle entsprechen probabilistischen
endlichen Automaten
0.5
0.5
0.2
0.6
0.8
0.4

Beispiel Inferenzproblem:

Wie ist das Wetter übermorgen, gegeben dass es heute
regnet?
p( x3 | x1  r )  ?
x1
x2
x3
13
Beispiel: Markov Modelle
Berechnung mit Message-Passing
Message Passing Algorithmus
x1

x2
x3
Zu berechnende Nachrichten:  ( x1 ),  ( x2 ),  ( x3 );  ( x3 )
  k 1,k ( xk 1 , xk )  ( xk 1 ) : k  1{i1 ,..., im } (Knoten nicht beobachtet)

 ( xk )   xk 1
 k 1,k ( xk 1 , xk )  ( xk 1 ) : k  1{i1 , ..., im }
(Knoten beobachtet)
 1
Initialisierung:  ( x1 )   
 1
 ( x2  s)
 0.5  0.4   0.2 
x1 beob.
beob Knoten:  ( x2 )  p( x1 ) p( x2 | x1 )  ( x1 )  
 
0.5

0.6

  0.3 
x2 unbeob. Knoten:  ( x3 ) 
 ( x2  r )
 0.8  0.2  0.4  0.3   0.28 
p
(
x
|
x
)

(
x
)


3
2

2



0.2

0.2

0.6

0.3
x2 {s , r }

  0.22 
 ( x3  s)
 ( x3  r )
14
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Beispiel: Markov Modelle
Berechnung mit Message-Passing
Message Passing Algorithmus
x1

Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

x2
x3
Nachrichten:  ( x1 ),  ( x2 ),  ( x3 );  ( x3 )
 1
Initialisierung:  ( x3 )   
 1
p( x3 | x1  r ) 
0 28  1 1  00.28
28 
1
1  0.28
 ( x3 ) ( x3 )  


  


Z
Z  0.22  1 Z  0.22 
Z  0.28
0 28  0.22
0 22  0.5
05
p( x3  s | x1  r )  0.56
p( x3  r | x1  r )  0.44
0 44
15
Inferenz in Allgemeinen Graphen


Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Bisher nur Spezialfall: Inferenz auf linearer Kette
Die Grundidee des Message-Passing funktioniert auch
auf allgemeineren Graphen
Erweiterung: Exakte Inferenz auf Polytrees


Polytree: Gerichteter Graph, in dem es zwischen zwei
K t immer
Knoten
i
genau einen
i
ungerichteten
i ht t Pf
Pfad
d gibt
ibt
Etwas allgemeiner als gerichteter Baum
Gerichteter
Baum
Polytree
16
Inferenz in Allgemeinen Graphen
Grundidee Message
Message-Passing
Passing auf Polytrees:

Umwandlung in Faktor-Graph (ungerichteter Baum)
Ursprünglicher Graph
x1
x
Faktor-Graph
2
x4
x3
x5
Gemeinsame
G
i
Verteilung
V il
p( x1 , x2 , x3 , x4 , x5 ) 
p( x1 ) p( x2 ) p( x3 | x1 , x2 ) p( x4 ) p( x5 | x3 , x4 )

Faktor
Faktor Knoten
Faktor-Knoten
- Für jeden Faktor in der gemeinsamen
Verteilung gibt es einen Faktor-Knoten
- Ungerichtete Kanten von den Faktor-Knoten
zu den im Faktor auftauchenden Variablen
17
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Inferenz in Allgemeinen Graphen (Skizze)
Falls der ursprüngliche Graph ein Polytree war
war, ist der FaktorFaktor
Graph ein ungerichteter Baum (dh zykelfrei).
Spezialfall
p
lineare Kette
Blätter
xa



Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

xa
Betrachten Anfragevariable xa als Wurzel des Baumes
Nachrichten von den Blättern zur Wurzel schicken (immer
einde tiger Pfad,
eindeutiger
Pfad weil
eil Ba
Baum)
m)
Es gibt zwei Typen von Nachrichten: Faktor-Nachrichten und
Variablen-Nachrichten
18
Inferenz in Allgemeinen Graphen (Skizze)
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II
Blätter
xa




xa
Nachrichten werden „verschmolzen“, dabei müssen wir über
mehrere Variablen summieren
Grundidee dieselbe wie bei Inferenz auf der linearen Kette:
geschicktes Aussummieren
La f eit abhängig von
Laufzeit
on Graphstruktur,
Graphstr kt r exponentiell
e ponentiell im worstorst
case
Details im Bishop-Textbuch („Sum-Product“ Algorithmus)
19
Inferenz in Allgemeinen Graphen

Inferenz in Graphen
Graphen, die keine Polytrees sind?
Approximativer Ansatz: Iteratives Message-Passing Schema,
wegen Zyklen im Graph nicht exakt
x1
x2
x3
„Loopy Belief
P
Propagation“
ti “
x4
p(x)  p( x1 ) p( x2 | x1 ) p( x3 | x1 ) p( x4 | x2 , x3 )

Alternative für exakte Inferenz in allgemeinen Graphen:


Graph in einen äquivalenten azyklischen Graphen umwandeln
„Junction Tree“ Algorithmus, (i.A. exponentielle Laufzeit)
20
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Überblick
Gerichtete Graphische Modelle: Bayessche Netze

Graphische Modelle im Maschinellen Lernen

Inferenz in Graphischen Modellen


Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Exakte Inferenz: Message-Passing
Approximative Inferenz: Sampling
21
Approximative Inferenz
Exakte Inferenz NP-hart:
NP hart: In der Praxis spielen
approximative Inferenzverfahren wichtige Rolle

Wir betrachten Sampling-basierte Verfahren


Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Relativ einfach zu verstehen/implementieren
Anytime-Algorithmen (je länger die Laufzeit, desto
genauer)
22
Inferenz: Sampling-basiert
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Grundidee Sampling:



Wir interessieren uns für eine Verteilung p(z ) , z ist eine
Menge von Zufallsvariablen (z.B. bedingte Verteilung über
A f
Anfragevariablen
i bl iin graphischem
hi h
M
Modell)
d ll)
Es ist schwierig, p(z ) direkt auszurechnen
Stattdessen ziehen wir „Samples
Samples“ (Stichproben)
z ( k ) ~ p(z )
i.i.d., k  1,..., K ,
jedes Sample z ( k ) ist eine vollständige Belegung der
Zufallsvariablen in z

Die Samples z (1) , z (2) ,..., z ( K ) approximieren die
Verteilung p(z)
23
Inferenz: Sampling-basiert
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Beispiel:


Eindimensionale Verteilung, z  {z}
Diskrete Variable mit Zuständen {0,…,6}: Anzahl „Kopf“
bei 6 Münzwürfen
Sample-Histogramm
Anteil
Samples
Echte Verteilung (Binomial)
K 
mit Wert z
z
24
Sampling-Inferenz für Graphische Modelle
Gegeben graphisches Modell
Modell, repräsentiert Verteilung durch
N
p( x1,..., xN )   p( xi | pa( xi ))
i 1

Etwas allgemeinere Inferenz-Problemstellung: Menge von
Anfragevariablen
p(x I | x D )  ?

x I  x  {x1 ,..., xN }
Menge von Anfragevariablen
x D  x  {x1 ,,...,, xN }
Menge
g von Evidenzvariablen
Wir betrachten zunächst den Fall ohne Evidenz:
p(x I )  ?
x I  {xi1 ,..., xim }  {x1 ,..., xN }
25
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Sampling-Inferenz für Graphische Modelle
Ziel: Samples aus der Randverteilung p(x I )  p( xi1 ,..., xim )
x(Ik ) ~ p(x I )

k  1,..., K
Es genügt, Samples aus der Gesamtverteilung p(x)  p( x1 , ..., xN )
zu ziehen:
x( k )  ( x1( k ) ,..., xN( k ) ) ~ p( x1 ,..., xN )

Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

k  1,..
1 ., K
Samples
p
aus der Randverteilung
g p( xi1 ,..., xim ) erhalten wir
einfach durch Projektion der Samples auf die Menge {xi1 ,..., xim }
.
x( k )  ( x1( k ) ,,...,, xN( k ) ) ~ p( x1 ,...,
, , xN )
k  1,..
, ., K
Projektion
x(Ik )  ( xi(1k ) ,..., xi(mk ) ) ~ p( xi1 ,..., xim )
k  1, ..., K
26
Inferenz: Ancestral Sampling
Wie ziehen wir Samples

Einfach
ac bei
be gerichteten
ge c tete graphischen
g ap sc e Modellen:
ode e
„Ancestral Sampling“

Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II
x ( k ) ~ p ( x) ?

Nutze Faktorisierung der gemeinsamen Verteilung
x( k ) ~ p(x)  p( x1 ,..., xN )
N
  p( xn | ppa( xn ))
n 1


Annahme: pa( xn )  {x1 ,..., xn1}
(sonst umbenennen)
„Ziehen
Zi h entlang
tl
d
der K
Kanten“
t “
„Ziehen entlang der Kanten“
x1
x2
x3
x4
x5
27
Inferenz: Ancestral Sampling
Wir ziehen ein Sample ( x1( k ) ,..., xN( k ) ) , indem wir
nacheinander die einzelnen xi( k ) ziehen
x1( k ) ~ p( x1 )
(k )
2
x
x( k ) ~ p(x)  p( x1 ,., xN )
~ p( x2 | pa( x2 ))
N
  p( xn | p
pa( xn ))
Schon gezogene Werte
...
n 1
xN( k ) ~ p( xN | pa( xN ))

B
Beispiel
x1( k ) ~ p( x1 )
 x1  1
x2( k ) ~ p( x2 )
 x2  0
x3( k ) ~ p( x3 | x1  1, x2  0)
 x3  1
x4( k ) ~ p( x4 | x2  00))
 x4  0
(k )
5
x
~ p( x5 | x3  1)
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

 x5  1
x1
x2
A
x3
E
x4 R
N x5
28
Inferenz: Ancestral Sampling
Wir ziehen ein Sample ( x1 ,..., xN )( k ) , indem wir
nacheinander die einzelnen xi ziehen
x1( k ) ~ p( x1 )
(k )
2
x
x( k ) ~ p(x)  p( x1 ,., xN )
~ p( x2 | pa( x2 ))
N
  p( xn | p
pa( xn ))
Schon gezogene Werte
...
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

n 1
xN( k ) ~ p( xN | pa( xN ))
P(B=1)
0.1

B
Beispiel
x1( k ) ~ p( x1 )
 x1  1
x2( k ) ~ p( x2 )
 x2  0
x3( k ) ~ p( x3 | x1  1, x2  0)
 x3  1
x4( k ) ~ p( x4 | x2  00))
 x4  0
(k )
5
x
~ p( x5 | x3  1)
 x5  1
x1
x2
A
x3
E
x4 R
N x5
29
Inferenz: Ancestral Sampling
Wir ziehen ein Sample ( x1 ,..., xN )( k ) , indem wir
nacheinander die einzelnen xi ziehen
x1( k ) ~ p( x1 )
(k )
2
x
x( k ) ~ p(x)  p( x1 ,., xN )
~ p( x2 | pa( x2 ))
N
  p( xn | p
pa( xn ))
Schon gezogene Werte
...
n 1
xN( k ) ~ p( xN | pa( xN ))
P(E=1)
(
)

Beispiel
B
0.2
x1( k ) ~ p( x1 )
 x1  1
x2( k ) ~ p( x2 )
 x2  0
x3( k ) ~ p( x3 | x1  1, x2  0)
 x3  1
x4( k ) ~ p( x4 | x2  00))
 x4  0
(k )
5
x
~ p( x5 | x3  1)
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

 x5  1
x1
x2
A
x3
E
x4 R
N x5
30
Inferenz: Ancestral Sampling
Wir ziehen ein Sample ( x1 ,..., xN )( k ) , indem wir
nacheinander die einzelnen xi ziehen
x1( k ) ~ p( x1 )
(k )
2
x

x( k ) ~ p(x)  p( x1 ,., xN )
~ p( x2 | pa( x2 ))
N
B
E
P(A=1|B E)
P(A=1|B,E)
xN( k ) ~ p( xN | pa( xN )) 0
0
0.01
0
1
0.5
1
0
0.9
1
1
0.95
Beispiel
(k )
1
x
~ p( x1 )
 x2  0
x3( k ) ~ p( x3 | x1  1, x2  0)
 x3  1
x4( k ) ~ p( x4 | x2  00))
 x4  0
x
~ p( x5 | x3  1)
n 1
B
x1
x2
E
 x1  1
x2( k ) ~ p( x2 )
(k )
5
  p( xn | p
pa( xn ))
Schon gezogene Werte
...
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

 x5  1
A
x3
x4 R
N x5
31
Inferenz: Ancestral Sampling
Wir ziehen ein Sample ( x1 ,..., xN )( k ) , indem wir
nacheinander die einzelnen xi ziehen
x1( k ) ~ p( x1 )
(k )
2
x
x( k ) ~ p(x)  p( x1 ,., xN )
~ p( x2 | pa( x2 ))
N
  p( xn | p
pa( xn ))
Schon gezogene Werte
...
n 1
xN( k ) ~ p( xN | pa( xN ))

Beispiel
x1( k ) ~ p( x1 )
E
P(R=1|E)
0
0.01
1
0.5
B
 x2  0
x3( k ) ~ p( x3 | x1  1, x2  0)
 x3  1
x4( k ) ~ p( x4 | x2  00))
 x4  0
x
~ p( x5 | x3  1)
x1
x2
E
 x1  1
x2( k ) ~ p( x2 )
(k )
5
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

 x5  1
A
x3
x4 R
N x5
32
Inferenz: Ancestral Sampling
Wir ziehen ein Sample ( x1 ,..., xN )( k ) , indem wir
nacheinander die einzelnen xi ziehen
x1( k ) ~ p( x1 )
(k )
2
x
x( k ) ~ p(x)  p( x1 ,., xN )
~ p( x2 | pa( x2 ))
N
  p( xn | p
pa( xn ))
Schon gezogene Werte
...
n 1
xN( k ) ~ p( xN | pa( xN ))

Beispiel
x1( k ) ~ p( x1 )
x2( k ) ~ p( x2 )
A
P(N=1|A)
0
0.1
1
07
0.7
 x2  0
 x3  1
x4( k ) ~ p( x4 | x2  00))
 x4  0
x
~ p( x5 | x3  1)
B
x1
x2
E
 x1  1
x3( k ) ~ p( x3 | x1  1, x2  0)
(k )
5
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

 x5  1
A
x3
x4 R
N x5
33
Inferenz: Ancestral Sampling
Wir ziehen ein Sample ( x1 ,..., xN )( k ) , indem wir
nacheinander die einzelnen xi ziehen
x1( k ) ~ p( x1 )
(k )
2
x
x( k ) ~ p(x)  p( x1 ,., xN )
~ p( x2 | pa( x2 ))
...
N
Schon gezogene Werte
  p( xn | p
pa( xn ))
n 1
xN( k ) ~ p( xN | pa( xN ))

Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Beispiel
x1( k ) ~ p( x1 )
 x1  1
x2( k ) ~ p( x2 )
 x2  0
x3( k ) ~ p( x3 | x1  1, x2  0)
 x3  1
x4( k ) ~ p( x4 | x2  00))
 x4  0
x5( k ) ~ p( x5 | x3  1)
 x5  1
x( k )  (1,0,1,0,1)
34
Inferenz: Ancestral Sampling
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Beispiel für Schätzung der Randverteilungen aus
Samples:
x(1)  (1,0,1,0,1)
(1 0 1 0 1)
x(2)  (0, 0, 0, 0, 0)
x(3)  ((0,1,0,1,
, , , , 0))
x(4)  (0,1,1,0,1)
B
x1
x2
E
p( x3  1)  0.4
p( x4  1)  0.2
02
p( x5  1)  0.4
A
x3
x4 R
x(5)  (0,0,0,0,0)
N x5

Analyse Ancentral Sampling



+ Zieht
Zi ht direkt
di kt aus d
der kkorrekten
kt V
Verteilung
t il
+ Effizient
- Funktioniert nur ohne Evidenz
35
Inferenz: Logic Sampling
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Wie erhalten wir Samples unter Evidenz?
Beobachtete Variablen
x(Ik ) ~ p(x I | x D )  p( xi1 ,..., xim | x j1 ,..., x jl )

Logic Sampling: Ancestral Sampling + Zurückweisung von
Samples die nicht mit der Beobachtung konsistent sind
Samples,

Ancestral Sampling: vollständige Samples
x( k )  ( x1( k ) ,..., xN( k ) ) ~ p(x)

Fallunterscheidung:
(x (j1k ) ,..., x (jkl ) )  (x j1 ,..., x jl ) [Sample konsistent mit Beobachtung]: akzeptiere x( k )
(x (j1k ) ,..., x (jkl ) )  (x j1 ,..., x jl ) [Sample ìnkonsistent mit Beobachtung]: weise x( k ) zurück
36
Inferenz: Logic Sampling
Die im Logic Sampling akzeptierten Samples x( k )
repräsentieren die bedingte Verteilung gegeben Evidenz:
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

x( k ) ~ p(x | x D )

Marginale Samples
x(Ik ) ~ p(x I | x D )
wieder durch Projektion auf Anfragevariablen

Problem: Oft werden fast alle Samples verworfen



Wahrscheinlichkeit,, Sample
p zu generieren,
g
, das mit x D konsistent
ist, sinkt meist exponentiell schnell mit Größe von D
Entsprechend exponentielle Laufzeit, um ausreichende Menge
von Samples zu erhalten
In der Praxis selten anwendbar
37
Inferenz: MCMC

Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Alternative Strategie zum Erzeugen von Samples: Markov
Chain Monte Carlo („MCMC“)
Idee:


Schwierig, direkt Samples aus p(z) zu ziehen
Alternativstrategie: Konstruiere Folge von Samples
( )
z ((0))  z (1)
 z ((2))  z ((3))  z ((4))  z ((5))  ...
z (0) zufällig initialisiert

z (t 1)  update(z t )
durch
d
h mehrfache
h f h probabilistische
b bili i h U
Update-Schritte
d
S hi
Wenn Updates geeignet gewählt, gilt asymptotisch
z (T ) ~ p ( z )
ungefähr, für sehr grosse T
ZV: T-te Variablenbelegung
38
Markov-Ketten
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Folge der Zustände
z (0)  z (1)  z (2)  z (3)  z (4)  z (5)  ...
bildet Markov
Markov-Kette:
Kette:
z (1)
z (0)
z (2)
z (3)
…
z (t ) heisst "Zustand" der Kette zum Zeitpunkt t
N
p(z ,..., z )  p(z ) p(z (t ) | z (t 1) )
(0)
(T )
(0)
t 1

Dynamik beschrieben durch Transitionswahrscheinlichkeiten
T(z (t ) , z (t 1) )  p(z (t 1) | z (t ) )
Neuer Zustand
Wahrscheinlichkeit Übergang z (t )  z (t 1)
Aktueller Zustand
39
Markov-Ketten
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Verteilung über Folgezustand berechnen aus Verteilung über
aktuellem Zustand
Aktueller Zustand
Folgezustand
g
p(z (t 1) )   p(z (t 1) | z (t ) ) p(z (t ) )
zt
  T (z (t ) , z (t 1) ) p(z (t ) )
zt

Stationäre Verteilung
g
 Eine Verteilung p* (z ) über die Zustände der Kette heisst
„stationär“, falls sie bei einem Schritt der Markov-Kette nicht
verändert wird:
p* (z (t 1) )   T (z (t ) , z (t 1) ) p* (z (t ) )
z( t )
40
Markov-Ketten: Stationäre Verteilung
Falls die Kette eine stationäre Verteilung erreicht
erreicht, dh
dh.
(T )
(T )
p(z )  p* (z ) für ein geeignetes T, so bleibt diese
Verteilung erhalten, dh. p(z (T  N ) )  p* (z (T  N ) ) für alle N.


Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Kette ist „konvergiert“
konvergiert“ zur Verteilung p*
Unter bestimmten Bedingungen
g g („
(„Ergodische
g
Ketten“))
konvergiert eine Markov-Kette für t   gegen eine eindeutige
stationäre Verteilung, diese heisst dann
„Gleichgewichtsverteilung
Gleichgewichtsverteilung“
41
Inferenz: MCMC

Gegeben Bayessches Netz über ZV x = {x1,…,xxN}, definiert
Verteilung p(x)
„Markov Chain Monte Carlo“ Methoden

Konstruiere aus dem Bayesschen Netz eine Folge von Samples
durch iterative p
probabilistische Updates
p
x(0)  x(1)  x(2)  x(3)  x(4)  x(5)  ...
x


(0)
zufällig
fälli initialisiert
i iti li i t
x
( t 1)
 update
d t (x )
t
x(t ) jeweils Belegung
aller Knoten im Netz
Ziel: Updates so wählen, dass sich ergodische Markov-Kette mit
p(x) ergibt
Gl i h
Gleichgewichtsverteilung
i h
il
ib
Einfachste Methode: lokales Ziehen einer Variable, gegeben
Zustand der anderen Variablen („Gibbs-Sampling“)
42
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Inferenz: Gibbs Sampling

Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Gibbs Sampling: Eine Version von MCMC
Übergangswahrscheinlichkeiten bestimmt durch
wiederholtes lokales Ziehen einer ZV, gegeben den
Zustand aller anderen ZV


Gegeben alter Zustand x  ( x1 ,..., xN )
Zi h d
Ziehen
des neuen Z
Zustands
t d x '  ( x1 ',..., xN ') :
Beobachtete
(alte) Werte



x1 ' ~ p( x1 | x2 ,..., xN )
x2 ' ~ p( x2 | x1 ', x3 , ..., xN )
x3 ' ~ p( x3 | x1 ', x2 ', x4 , ..., xN )
...
xN ' ~ p( xN | x1 ', x2 ', ..., xN 1 ')
43
Inferenz: Gibbs Sampling
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Einzelner Gibbs-Schritt
Gibbs Schritt einfach,
einfach bedingte Verteilung
über eine Variable gegeben Evidenz auf allen anderen
Variablen direkt auszurechnen:
Beobachtete
(alte) Werte



Berechnung von p( x1 | x2 ,..., xN ) :
Für x1 = 1 berechne p1  p(x1 , x2 ,..., xN )
Für x1 = 0 berechne p  p(x1 , x2 , ..., xN )  p1
p( x1  1| x2 ,..., xN )  p1 / p

Satz: Falls p( xn | x1, x2 ,..., xn1, xn1,..., xN 1 )  0 für alle n und alle
möglichen Zustände xi , so ist die resultierende MarkovKette ergodisch mit Gleichgewichtsverteilung p(x) .
44
Gibbs-Sampling mit Evidenz
Bisher haben wir Inferenz ohne Evidenz betrachtet

Wie
ee
erhalten
a te wir Sa
Samples
p es aus de
der bed
bedingten
gte Verteilung?
e te u g
Ziel: x(T ) ~ p(x | x D )

Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

ungefähr, für sehr grosse T
Leichte Modifikation der Gibbs-Sampling Methode:


Gibbs-Sampling zieht immer eine Variable xi neu,
gegeben Zustand der anderen Variablen
Mit Evidenz: Nur die unbeobachteten Variablen werden
jeweils neu gezogen, die beobachteten Variablen werden
fest auf den beobachteten Wert gesetzt
45
Inferenz: Gibbs Sampling

Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Zusammenfassung Gibbs Sampling Algorithmus:

x(0)  zufällige Initialisierung aller ZV, konsistent mit Evidenz x D

Für t  1,..., T : x(t )  Gibbs-update(x(t 1) )

Die Samples x(1) , x(2) , x(3) ,... sind asymptotisch verteilt nach p(x | x D )
Gibbs Sampling in vielen praktischen Anwendungen
brauchbar



Einzelne Update-Schritte effizient
G
Garantierte
ti t Konvergenz
K
(für
(fü t   )
Erlaubt, Samples aus p(x | x D ) zu ziehen, ohne dass Laufzeit
explodiert wenn Evidenzmenge groß (im Gegensatz zu Logic
S
Sampling)
li )
46
Inferenz: Gibbs Sampling
Gibbs-Sampling:
Gibbs
Sampling: Konvergenz




Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Konvergenz der Markov-Kette x(1) , x(2) , x(3) ,... ist nur
garantiert für t → ∞.
In der Praxis: „Burn-In“ Iterationen, bevor Samples
verwendet werden (verwerfe Samples x(t ) für t  TBurnin )
Es gibt auch Konvergenztests,
Konvergenztests um Anzahl der Burn-In
Burn In
Iterationen zu bestimmen
Gibbs-Sampling: Abhängigkeit



Einzelne aufeinander folgende Samples x(t ) , x(t 1) abhängig
Lö
Lösung:
verwende
d S
Samples
l
x(t ) , x(t  L ) , x(t  2 L ) , x(t 3 L ) ,...
Samples dann weitestgehend unabhängig
47
Inferenz: Zusammenfassung
Exakte Inferenz




Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Message-Passing Algorithmen
Exakte Inferenz auf Polytrees (mit Junction-Tree
Erweiterung auf allgemeinen Graphen)
Laufzeit abhängig von Graphstruktur, exponentiell im
worst case
worst-case
Approximative
pp
Inferenz

Sampling-Methoden: Approximation durch Menge von
„Samples“, exakte Ergebnisse für t → ∞.



Ancestral
A
t l Sampling:
S
li
einfach,
i f h schnell,
h ll kkeine
i E
Evidenz
id
Logic Sampling: mit Evidenz, aber selten praktikabel
MCMC/Gibbs-Sampling: Effizientes approximatives Ziehen
von Samples unter Evidenz
48
Lernen Graphischer Modelle aus Daten?
Graphische Modelle im maschinellen Lernen: Problemstellung
ist meist Inferenzproblem


MAP Parameterschätzung
B
Bayessche
h V
Vorhersage
h


w
yn
xn

Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

y
N
x
Auch möglich, die Verteilungen eines graphischen Modells
aus Daten zu schätzen
N
p( x1 ,..., xN )   p( xi | pa( xi ))
i 1
p( xi | pa( xi )) parametrisierte Verteilung (z.B.
(z B diskrete Tabelle)
Parameter können aus Daten geschätzt werden
49
Maximum-Likelihood Parameterlernen
Parametrisierung mit Parametervektor 
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

N
p( x1 ,..., xN |  )   p( xi | pa( xi ), )
i1

Beobachtete Daten: Belegungen der Zufallsvariablen x1,…,xN
Daten:
i.i.d. Beispiele
L  {x1 ,...., xm }
B
E
A
N
R
x1 0
0
0
0
0
x2 0
1
1
1
1
x3 0
1
0
0
0
x4 1
0
1
1
0
x5 0
0
0
1
0
x6 1
1
1
0
1
50
Maximum-Likelihood Parameterlernen
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Maximum-Likelihood-Ansatz
Maximum
Likelihood Ansatz
*  arg max p( L |  )
 arg max p(x1 ,..., xm |  )
m
 arg max  p(x j |  )
i.i.d.
j 1
m
N
 arg max
ma   p( x ji | pa( x ji ),
) )
Faktorisierung
Faktorisier ng GM
j 1 i 1
51
Maximum-Likelihood Parameterlernen
Lösung (diskrete Variablen):
C ( x ji , pa( x ji ))
p( x ji | ppa( x ji )),* ) 
 
C ( pa( x ji ))
Zustand
x ji
Zustand
pa ( x ji )
C ( x ji , pa( x ji ))  Wie oft wurde der gemeinsame Zustand x ji , pa( x ji ) beobachtet?
C ( pa( x ji ))  Wie oft wurde der gemeinsame Zustand pa( x ji ) beobachtet?
Daten:
i.i.d. Beispiele
L  {x1 ,...., xm }
B
E
A
N
R
x1
0
0
0
0
0
x2
0
1
1
1
1
x3
0
1
0
0
0
x4
1
0
1
1
0
x5
0
0
0
1
0
x6
1
1
1
0
1
1
p( N  1| A  0,
0 * ) 
3
p( N  1|| A  1,,* ) 
2
3
52
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

Maximum-Likelihood Parameterlernen
Einfache Lösung nur möglich bei vollständig
beobachteten Daten

Modelle enthalten oft Variablen, die nicht beobachtbar
sind

Maximum-Likelihood-Schätzung dann mit dem EM
Algorithmus ((„Expectation-Maximization
Expectation Maximization“))

Später mehr!
Sa
awade/Landwehr/Sccheffer, M
Maschinelle
es Lernen II

53
Herunterladen