Randomisierte Algorithmen - 9. Schnell mischende Markov

Werbung
Randomisierte Algorithmen
Randomisierte Algorithmen
9. Schnell mischende Markov-Ketten
Thomas Worsch
Fakultät für Informatik
Karlsruher Institut für Technologie
Wintersemester 2016/2017
1 / 49
9. Schnell mischende Markov-Ketten
Überblick
Überblick
Der Metropolis-Algorithmus
Anmerkungen zu Eigenwerten
Schnell mischende Markov-Ketten
2 / 49
9. Schnell mischende Markov-Ketten
Überblick
Ein schönes Buch
David A. Levin, Yuval Peres, Elizabeth L. Wilmer:
Markov Chains and Mixing Times
AMS (2008)
http://darkwing.uoregon.edu/~dlevin/MARKOV/markovmixing.pdf
3 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
Überblick
Der Metropolis-Algorithmus
Anmerkungen zu Eigenwerten
Schnell mischende Markov-Ketten
4 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
9.1 Definition
Eine ergodische Markov-Kette ist
(zeit-)reversibel (in detailed balance),
wenn für stationäre Verteilung w und alle i, j ∈ S gilt:
wi Pi j = wj P ji .
5 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
9.2 Definition
I
G = (V , E) ein zusammenhängender ungerichteter Graph ohne
Schlingen
I
0 < β ≤ 1 eine reelle Zahl
I
d(i) Grad von Knoten i und d = maxi ∈V d(i)
I
definiere Markov-Kette MG, β :


β/d



Pi j = 0


 1 − d(i)β/d

falls i , j und (i, j) ∈ E
falls i , j und (i, j) < E
falls i = j
6 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
9.3 Beobachtung/Übung
I
Kette irreduzibel, da Graph zusammenhängend
I
für β < 1 Kette aperiodisch
I
stationäre Verteilung MG, β : Gleichverteilung
I
für β < 1 Kette reversibel
7 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
9.4 Verallgemeinerung
I
p eine Wahrscheinlichkeitsverteilung auf V , nirgends 0
I
G = (V , E) ein zusammenhängender ungerichteter Graph
I
0 < β ≤ 1 eine reelle Zahl
I
d(i) Grad von Knoten i und d = maxi ∈V d(i)
I
definiere Markov-Kette MG, β :
p


min(1, pij ) · β/d



Pi j = 0


1 − Í Pik
i,k

falls i , j und (i, j) ∈ E
falls i , j und (i, j) < E
falls i = j
8 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
9.4 Verallgemeinerung (2)
Sei i , j und (i, j) ∈ E (alles andere trivial):
p
pi min(1, pij ) · β/d
pi Pi j
=
p
pj P ji
pj min(1, pij ) · β/d
( pi pi
/
falls pi ≤ pj
= ppij ppj j
falls pi > pj
pj · pi
=1
Die Markov-Kette ist reversibel mit stationärer Verteilung p,
denn . . .
9 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
9.5 Lemma
I
Sei M Markov-Kette und
I
q Verteilung mit
qi Pi j = qj P ji
für alle Zustände i und j.
I
Dann ist q eine stationäre Verteilung von M.
10 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
9.6 Beweis
Für alle i ist
(qP)i =
Õ
j
qj P ji =
Õ
j
qi Pi j = qi
Õ
Pi j = qi .
j
11 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
9.7 Vorbereitung Metropolis-Algorithmus
I
Q zeilenstochastische Matrix, symmetrisch
I
I
I
Ziel reversible Markov-Kette
I
I
I
proposal matrix
Voraussetzung Symmetrie von Hastings beseitigt
mit einer Übergangsmatrix P
stationäre Verteilung w
w „indirekt“ gegeben durch H : S → R
I
I
energy function
wi proportional zu e −β H (i)
I
I
I
I
für ein β ≥ 0
«inverse Temperatur»
nachfolgend β = 1 angenommen
Proportionalitätsfaktor Z (β) =
I
Í
i ∈S
e −β H (i)
partition function
12 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
9.8 Metropolis-Algorithmus
I
starte in beliebigem i 0 ∈ S
I
Schritt von Zustand i t ∈ S zu i t +1 in zwei Phasen:
I
gemäß der Verteilung Q(i t , ·) zufällig j ∈ S wählen
I
dann
I
falls H (j) ≤ H (i t ), also w j ≥ w i t , wähle i t +1 = j.
I
falls H (j) > H (i t ), also w j < w i t , wähle
(
j
mit Wahrscheinlichkeit w j /w i t = e H (i t )−H (j)
i t +1 =
i t sonst
13 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
9.9 Satz
Metropolis-Algorithmus, Markov-Kette auf S:
I
reversibel
I
stationäre Verteilung: i hat Wahrscheinlichkeit e −H (i) /Z .
14 / 49
9. Schnell mischende Markov-Ketten
Der Metropolis-Algorithmus
9.10 Beweis (Übung)
P durch Algorithmus festgelegte Übergangsmatrix
genügt zu zeigen: reversibel
e −H (i) /Z · Pi j = e −H (j) /Z · P ji
einfache Rechnung analog zu der in Punkt 9.4
15 / 49
9. Schnell mischende Markov-Ketten
Anmerkungen zu Eigenwerten
Überblick
Der Metropolis-Algorithmus
Anmerkungen zu Eigenwerten
Schnell mischende Markov-Ketten
16 / 49
9. Schnell mischende Markov-Ketten
Anmerkungen zu Eigenwerten
9.11 Lemma
Es sei P eine zeilenstochastische Matrix.
I
Dann ist 1 ein Eigenwert von P.
I
Für jeden Eigenwert λ von P gilt: |λ| ≤ 1.
17 / 49
9. Schnell mischende Markov-Ketten
Anmerkungen zu Eigenwerten
9.12 Beweis
I
Erster Teil klar wegen P(1, . . . , 1)T = (1, . . . , 1)T .
I
sei λ ∈ C Eigenwert mit P(x 1, . . . , x n )T = λ(x 1, . . . , x n )T
I
Sei i 0 ein Index mit |x i0 | = maxj |x j |.
18 / 49
9. Schnell mischende Markov-Ketten
Anmerkungen zu Eigenwerten
9.12 Beweis
I
Erster Teil klar wegen P(1, . . . , 1)T = (1, . . . , 1)T .
I
sei λ ∈ C Eigenwert mit P(x 1, . . . , x n )T = λ(x 1, . . . , x n )T
I
Sei i 0 ein Index mit |x i0 | = maxj |x j |.
I
Es gilt:
Õ
|λ| · |x i0 | = |λ · x i0 | = Pi0 j x j j
≤
Õ
Pi0 j |x j | ≤
j
= |x i0 |
Õ
Pi0 j |x i0 |
j
Õ
Pi0 j = |x i0 | .
j
Also ist |λ| ≤ 1.
18 / 49
9. Schnell mischende Markov-Ketten
Anmerkungen zu Eigenwerten
9.13 Lemma
sei P stochastische Matrix
I
einer reversiblen Markov-Kette
I
mit |S | = N Zuständen
dann besitzt P
I
nur reelle Eigenwerte
I
mit 1 = λ1 > λ2 ≥ · · · ≥ λ N > −1.
Beweis: lineare Algebra . . .
19 / 49
9. Schnell mischende Markov-Ketten
Anmerkungen zu Eigenwerten
9.14 Abkürzung
I
I
λmax = max{|λ| | λ ist Eigenwert von P und λ , 1}.
Eben bewiesen:
I
I
für ergodische Markov-Ketten: λmax ≤ 1.
für reversible Markov-Ketten: λmax = max{|λ2 |, |λ N |} < 1
20 / 49
9. Schnell mischende Markov-Ketten
Anmerkungen zu Eigenwerten
9.15 Bemerkung
Falls λ N < 0:
I
Gehe von P zu P0 = 12 (P + I) über.
I
Eigenwerte λi0 = 12 (λi + 1) > 0, also
I
λmax = λ2
21 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
Überblick
Der Metropolis-Algorithmus
Anmerkungen zu Eigenwerten
Schnell mischende Markov-Ketten
22 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.16 Definition
I
Für zwei Verteilungen p und q ist die totale Variationsdistanz
kp − qktv =
I
1Õ
|pj − qj | .
2 j ∈S
Übung:
kp − qktv = max |p(T ) − q(T )|
T ⊆S
wobei p(T ) =
Í
j ∈T
pj
23 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.17 Definition
I
ergodische Markov-Kette P stationäre Verteilung w;
für alle Verteilungen p sei
δ p (t) = kpPt − wktv
I
Die Variationsdistanz zum Zeitpunkt t ist
∆(t) = max δ p (t) .
p
I
Übung: Maximum für einen Einheitsvektor
∆(t) = max kPit − wktv
i
I
wobei
klar:
Pit
die i-te Zeile von
Pt
ist.
lim ∆(t) = 0
t →∞
24 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.18 Satz
ergodische Markov-Kette, Matrix P, stationäre Verteilung w
Es existieren Konstanten C und α < 1 mit
∆(t) = max kPit − wktv ≤ Cα t
i
25 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.19 Beweis (1)
I
I
I
I
I
Pt0 enthalte nur positive Werte
W wie bisher
dann exisitiert 0 < δ < 1 so, dass für alle i und j gilt: Pit0j ≥ δwj
ϑ = 1−δ
stochastische Matrix Q mit
Pt0 = (1 − ϑ )W + ϑ Q
I
es gilt:
I
I
I
Qk W = W
WPt0 = W
Induktion: für jedes k ∈ N+ ist
Pt0k = (1 − ϑ k )W + ϑ k Qk
26 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.19 Beweis (2)
I
I
I
I
Pt0k = (1 − ϑ k )W + ϑ k Qk
Pt0k +j − W = ϑ k Qk Pj − W
Zeile i: kPit0k+j − wktv ≤ ϑ k
für beliebiges t = t0k + j:
kPit − wktv = kPit0k+j − wktv
≤ ϑk
1 1/t0 t0 1/t0 t0k
ϑ
=
ϑ
ϑ
1 1/t0 j+t0k
≤
ϑ
da j < t0 und ϑ < 1
ϑ
1 1/t0 t
=
ϑ
ϑ
27 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.20 Abkürzung
reversible Markov-Kette mit stationärer Verteilung w:
w min = min wj
j
28 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.21 Satz
Für reversible Markov-Kette mit stationärer Verteilung w gilt:
∆(t) ≤
λtmax
.
w min
29 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.22
Mitunter folgende Situation:
I
Problem mit Instanzen I
I
Familie von Markov-Ketten M(I )
Beispiel:
I
I
I
I : ein Graph
Zustände von M(I ): die Matchings von I
30 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.23 Definition
ergodische Markov-Kette mit stationärer Verteilung w
für ε > 0 definiere ihre ε-Konvergenzzeit:
τ (ε) = min{t | ∀t 0 ≥ t : ∆(t 0) ≤ ε}
31 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
Von Probleminstanzen zu Markovketten
mitunter vorliegende Situation
I
I
gegeben: unendliche Menge von «Probleminstanzen» I
zu jedem I wird eine Markovkette M(I ) konstruiert
Beispiel:
I
I
I: Graph (V , E)
M(I ): Markovkette mit
I
I
Zustände: Matchings in I
Übergangswahrscheinlichkeiten für Matching m:
I
I
mit W.keit 1/2 kein Übergang
mit W.keit 1/2 Übergang zu


m − e,



m 0 = m + e,


m,

falls e ∈ m
falls e < m und m + e Matching
sonst
für zufällig gleichverteilt gewählte Kante e ∈ E
32 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.24 Definition
Familie M(I ) heißt schnell mischend, falls die ε-Konvergenzzeit
polynomiell in |I | und ln 1/ε ist.
33 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.25 Rechnung
reversible Markov-Kette jedenfalls dann schnell mischend,
wenn für ein t, das polynomiell in |I | und log 1/ε ist, gilt
λtmax
≤ε
w min
34 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.25 Rechnung (2)
I
t
1
≥
λmax
t
I
−1
ln λmax
Wegen 1 − x ≤ ln x −1 für 0 < x < 1 ist dafür hinreichend:
t ≥
I
≥
1
εw min
−1
ln ε −1 + ln w min
−1
ln ε −1 + ln w min
1 − λmax
−1 und 1/(1 − λ
schnelles Mischen, falls ln w min
max ) polynomiell in |I |
35 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.26 Satz
Für reversible Markov-Ketten gilt:
1
1
log
1 − λmax
w minε
1
1
τ (ε) ≥
log
2(1 − λmax )
2ε
τ (ε) ≤
Woher bekommt man λmax ?
36 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.27 Definition
I
reversible Markov-Kette M = (S, P),
stationärer Verteilung w
I
sei F M der gerichtete gewichtete Graph mit
I
I
I
Knotenmenge S und
Kantenmenge E F = {(i, j) | i , j ∧ Pi j > 0}.
jede Kante (i, j) gewichtet mit Zahl c(i, j) = wi Pi j .
37 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.28 Definition
I
I
Für reversible Markov-Kette mit Zustandsmenge S und stationärer
Verteilung w
definiere für jede Teilmenge T ⊆ S
Õ
die Kapazität
C(T ) =
wi
i ∈T
den Fluß
F (T ) =
Õ
wi Pi j
i ∈T , j<T
und
I
Φ(T ) = F (T )/C(T )
Der Leitwert Φ der Markov-Kette ist dann
Φ = min max{Φ(T ), Φ(S r T )} =
T ⊆S
min
T ⊆S,0<C(T )≤1/2
Φ(T ) .
38 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.29 Satz
Für jede reversible Markov-Kette gilt:
1 − 2Φ2 ≤ λ2 ≤ 1 −
Φ2
.
2
39 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.30 Korollar
Für reversible Markov-Ketten (mit λ2 = λmax ) ist
τ (ε) ≤
2
−1
(ln ε −1 + ln w min
)
Φ2
40 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.32 Beobachtung
Für die Markov-Ketten MG, β aus Definition 9.2 gilt:
Φ = β µ/d .
Woher bekommt man im allgemeinen Φ?
41 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.33 Definition
I
für Paar (i, j) von Knoten in F M soll
I
von einem „Gut“ дi j die Menge wi wj von i nach j transportiert
werden.
I
gesucht: Flüsse fi j : E F → R+ , so dass gilt:
Õ
fi j (i, k) = wi wj
für alle ` , i, j :
k
Õ
k
Õ
fi j (k, `) =
Õ
fi j (`, m)
m
fi j (k, j) = wi wj
k
42 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.33 Definition (2)
I
Gesamtfluss durch eine Kante e sei
Õ
fi j (e)
f (e) =
i,j
und
I
die relative Kantenauslastung
ρ(f ) = max f (e)/c(e)
e ∈E F
mit c((i, j)) = wi Pi j
43 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.34 Lemma
Für jede Markov-Kette mit Flüssen fi j gilt:
Φ≥
1
.
2ρ(f )
44 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.35 Beispiel: Hyperwürfel
I
reversible Markov-Kette M gemäß Def. 9.2 aus Hyperwürfel Hn der
Dimension n mit β = 1/2.
I
Pii = 1/2 und Pi j = 1/2n für i , j.
I
stationäre Verteilung
I
I
I
Gleichverteilung mit w min = 1/2n
also log 1/w min = n polynomiell in n
Schnelles Mischen: Suche Flüsse fi j
I
I
die 1/22n transportieren und
kleine Kantenauslastung erzeugen.
45 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.35 Beispiel: Hyperwürfel (2)
I
Wähle: gleichmäßige Verteilung auf alle d! kürzeste Pfade zwischen
i und j (d = Hammingdistanz)
I
Aus Symmetriegründen gleicher Gesamtfluss auf jeder Kante.
Für jedes d gibt es 2n · dn Paare (i, j) mit Abstand d.
I
I
Für ein festes Paar (i, j) haben alle für den Fluss fi j verwendeten
Pfade Länge d. Also:
Õ
fi j (e) = dwi wj .
e ∈E F
46 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.35 Beispiel (3)
n
1 Õ n n
· d · wi wj
f (e) =
2
d
|E F |
d =1
n
Õ
1
n
1
= n
2n
· d · 2n
n2
2
d
d =1
n Õ
1
n d
= 2n
·
2
d n
d =1
n n−1 Õ
1
n−1
1 Õ n−1
= 2n
= 2n
2
d −1
2
d
=
d =1
n−1
2
22n
=
d =0
1
2 · 2n
47 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
9.35 Beispiel (4)
I
eben: f (e) = 1/(2 · 2n ).
I
andererseits c(e) = wi Pi j = 1/(2n · 2n )
I
also ρ(f ) =
1/(2·2n )
1/(2n ·2n )
=n
1
1
2ρ(f ) = 2n
I wegen 9.27 daher 1 − 1 2 ≤ λ 2 ≤ 1 − 1 2
2n
8n
I also 1/(1 − λ 2 ) ∈ Θ(n 2 )
I zusammen mit ln w −1 = n
min
I Korollar 9.28: Markov-Kette schnell mischend
I
wegen 9.32 daher Φ ≥
48 / 49
9. Schnell mischende Markov-Ketten
Schnell mischende Markov-Ketten
Zusammenfassung
I
oft ergodische Markov-Ketten, die sogar reversibel sind
I
Metropolis-Algorithmus
I
Kriterien, um festzustellen, ob sie schnell mischend sind
49 / 49
Herunterladen