Łańcuchy Markowa
Transkrypt
Łańcuchy Markowa
Definicja Łańcucha Markowa Stan stacjonarny Zadania Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa M. Czoków, J. Piersa 2012-01-10 M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania 1 Definicja Łańcucha Markowa Definicja Własności Zastosowania Symulowanie MC 2 Stan stacjonarny Istnienie Szukanie stanu stacjonarnego 3 Zadania M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania 1 Definicja Łańcucha Markowa Definicja Własności Zastosowania Symulowanie MC 2 Stan stacjonarny Istnienie Szukanie stanu stacjonarnego 3 Zadania M. Czoków, J. Piersa Definicja Własności Zastosowania Symulowanie MC WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Łańcuch Markowa (jednorodny) wydział P dom dom 0.1 wydział 0.4 stołówka 0.5 klub 1.0 klub dom wydział 0.5 0 0.2 0 stołówka 0.4 0.3 0 0 stołówka X0 = dom, X1 = w, X2 = s, X3 = w, X4 = d, X5 = s, ... M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 klub 0 0.3 0.3 0 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Definicja (nieformalna) Łańcuch Markowa, ang. Markov Chain (MC) Dane mamy: przestrzeń stanów Σ, macierz przejścia P, Pi,j — prawdopodobieństwo przejścia ze stanu i-tego do j-tego w jednym kroku, P j Pi,j = 1 (ma to być prawdopodobieństwo), stan początkowy p0 (lub rozkład P0 , z którego ma pochodzić stan początkowy), M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Definicja (nieformalna) Dynamika: jako stan w kroku t = 0 wybieramy stan początkowy p0 (lub losujemy go z rozkładu P0 ), w kroku t > 0 jesteśmy w stanie i, stan dla kroku t + 1 wybieramy losowo, ale zgodnie z tablicą przejść, tj. stan 1-szy z prawdopodobieństwem Pi,1 , stan 2-gi z prawdopodobieństwem Pi,2 , stan i-ty z prawdopodobieństwem Pi,i , itd. Jeżeli znamy stan w chwili t, to przejście do roku t + 1 nie zależy od stanu w krokach t − 1, t − 2... (własność Markowa). M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Definicja (formalna) Łańcuch Markowa, ang. Markov Chain (MC) jest to proces stochastyczny (tj. ciąg zminnych losowych), taki że prawdopodobieństwo znalezienia się w kroku t-ym w stanie x zależy tylko od stanu łańcucha w kroku t − 1 -ym: P(Xt = x|Xt−1 = xt−1 , Xt−2 = xt−2 , ..., X0 = x0 ) = = P(Xt = x|Xt−1 = xt−1 ). M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Interpretacja Peprezentacja MC w postaci (ważonego) grafu skierowanego : wierzchołkami są wszystkie stany Σ, jeżeli prawdopodobieństwo bezpośredniego przejścia z i do j jest dodatnie Pij > 0, to dodajemy krawędź (i, j) do grafu (z wagą Pij ), krawędzie nie muszą być symetryczne, wagi krawędzi wychodzących z wierzchołka sumują się do jedynki, w/w własność nie musi zachodzić dla krawędzi wchodzących. M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Interpretacja wydział P dom dom 0.1 wydział 0.4 stołówka 0.5 klub 1.0 klub dom wydział 0.5 0 0.2 0 stołówka M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 stołówka 0.4 0.3 0 0 klub 0 0.3 0.3 0 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Stan przechodni a stan a jest przechodni, jeżeli istnieje ścieżka wychodząca z a bez powrotu b M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 c Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Stan porwacający a stan a jest powracający (rekurencyjny), jeżeli każda ścieżka wychodząca z a kiedyś może powrócić z powrotem do a M. Czoków, J. Piersa b WSN 2011/2012 Wykład 12 c Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Klasa rekursji klasa rekursji — maksymalny zbiór stanów powracających, pomiędzy którymi można swobodnie przechodzić, może być więcej niż jedna klasa rekursji, klasy rekursji można znaleźć algorytmami BFS lub DFS wyszukując silnie spójne składowe w grafie skierowanym, M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Klasa rekursji klasa rekursji — maksymalny zbiór stanów powracających, pomiędzy którymi można swobodnie przechodzić, może być więcej niż jedna klasa rekursji, klasy rekursji można znaleźć algorytmami BFS lub DFS wyszukując silnie spójne składowe w grafie skierowanym, M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Łańcuch nieprzywiedlny a jeżeli z wszystkich stanów da się dojść do wszystkich innych (jest tylko jedna klasa rekursji, która obejmuje wszystkie stany), to łańcuch nazywamy nieprzywiedlnym M. Czoków, J. Piersa b WSN 2011/2012 Wykład 12 c Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Stan okresowy / nieokresowy Stan a jest nieokresowy (ang. aperiodic), jeżeli z każdego stanu da się dojść do wszystkich innych oraz gcd{i : P(a → | ··· → {z · · · →} a) > 0} = 1 w i krokach d a b c a b c M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Stan okresowy / nieokresowy Stan a jest nieokresowy (ang. aperiodic), jeżeli z każdego stanu da się dojść do wszystkich innych oraz gcd{i : P(a → | ··· → {z · · · →} a) > 0} = 1 w i krokach d a c b a b c okresowy nieokresowy M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Błądzenie losowe 20 10 0 -10 -20 -30 -40 0 200 400 M. Czoków, J. Piersa 600 800 WSN 2011/2012 Wykład 12 1000 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Zastosowania błądzenie losowe, modelowanie procesów biologicznych, fizycznych, społecznych etc. narzędzia statystyczne, symulowanie rynków finansowych, rozumowanie przy niepewnej wiedzy, np. w sieciach bayesowskich, algorytm generowania z dowolnego rozkładu (alg. Metropolisa-Hastingsa), algorytmy typu symulowanego wyżarzania (następy wykład). M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Losowanie z rozkładu dyskretnego x1p=0.04 dane niech będzie n kategorii z przypisanymi prawdopodobieństwami p1 , .., pn . chcemy wylosować jedną z kategorii z odpowiadającym jej prawdopodobieństwem P(X = i) = pi x7p=0.26 x3p=0.25 x4p=0.01 x5p=0.09 M. Czoków, J. Piersa x8p=0.11 x2p=0.09 WSN 2011/2012 Wykład 12 x6p=0.15 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Algorytm naiwny P(X = i) = pi oblicz si := Pi j=1 pj dla i = 1..n wylosuj u ∼ U(0,1) I := 1 while (si < u) I ++ return I Wartości s1 do sn można liczyć na bieżąco w trakcie działania pętli. Jeżeli losowanie będzie wielokrotnie powtarzane, to zapamiętujemy je w tablicy. M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Algorytm podziału odcinka wygeneruj u ∼ U(0,1) l := 0 r := n do c := b(l + r )/2c if (u > sc ) l := c else r := c while (l < r − 1) return r M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Definicja Własności Zastosowania Symulowanie MC Algorytm generowania wylosuj u1 ∼ Ex(p1 ), u2 ∼ Ex(p2 )..., un ∼ Ex(pn ) np. algorytmem odwracania dystrybuanty, Ex(λ) wylosuj T ∼ U(0,1) zwróć −1 λ ln(T ) znajdź indeks i, taki że ui = min(u1 , ..., un ) zwróć i M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania 1 Definicja Łańcucha Markowa Definicja Własności Zastosowania Symulowanie MC 2 Stan stacjonarny Istnienie Szukanie stanu stacjonarnego 3 Zadania M. Czoków, J. Piersa Istnienie Szukanie stanu stacjonarnego WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Twierdzenie (n) Niech Pij = (P n )ij = prawdopodobieństwo przejścia z i do j w dokładnie n krokach. Ponadto niech łańcuch Markowa opisywany przez P będzie nieprzywiedlny i nieokresowy. P Wtedy istnieje wektor probabilistyczny πi , i πi = 1, ∀i πi > 0, taki że (n) lim Pij = πj . n→+∞ M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Rozkład stacjonarny rozkład π nazywany jest rozkładem stacjonarnym łańcucha Markowa, odpowiednio długo symulowany MC zbiega do swojego rozkładu stacjonarnego (o ile go posiada). M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Rozkład stacjonarny Interpretacja po dłuższym czasie obserwator może stwierdzić, że łańcuch popadł w rutynę, lokalnie nadal zachowuje się zgodnie z zadaną tablicą przejść, w szerszym oknie czasowym, ilość czasu spędzona w poszczególnych stanach zaczyna się stabilizować, M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Jak znalźć rozkład stacjonarny Dane: łańcuch Markowa opisany przez macierz przejścia P. Cel: chcemy znaleźć rozkład stacjonarny π. M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Obserwacja przyp. Pij = prawdopodobieństwo przejścia z i do j w jednym kroku prawdopodobieństwo przejścia z i do j w dwóch krokach, przechodząc przez k wynosi zatem P(i → k → j) = Pik Pkj prawdopodobieństwo przejścia z i do j w dokładnie dwóch krokach, ale przez dowolny wierzchołek pośredni P(i → k → j) = M. Czoków, J. Piersa Pik Pkj WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Obserwacja przyp. Pij = prawdopodobieństwo przejścia z i do j w jednym kroku prawdopodobieństwo przejścia z i do j w dwóch krokach, przechodząc przez k wynosi zatem P(i → k → j) = Pik Pkj prawdopodobieństwo przejścia z i do j w dokładnie dwóch krokach, ale przez dowolny wierzchołek pośredni X Pik Pkj P(i → → j) = k M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Obserwacja prawdopodobieństwo przejścia z i do j w dokładnie dwóch krokach przez dowolny wierzchołek pośredni X P(i →2kroki j) = Pik Pkj k zatem jest opisywane przez macierz P · P = P 2 , przez indukcję — prawdopodobieństwo przejścia w krokach ze stanu i do j w k krokach jest opisywane przez macierz P k . M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Sposób 1 oblicz macierz P i , gdzie i jest wysoką potęgą, zwróć jeden z wierszy otrzymanej macierzy, UWAGA: „Algorytmu” nie należy stosować z wyjątkiem sytuacji, gdy P jest mała. M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Sposób 1 0.10 0.40 P= 0.30 1.00 0.60 0.00 0.30 0.00 0.30 0.20 0.00 0.00 0.34 0.15 0.15 0.50 0.30 0.12 2 P = 0.55 0.18 0.15 0.10 0.60 0.30 0.00 0.40 0.40 0.00 0.36 0.08 0.12 0.00 M. Czoków, J. Piersa 0.30 0.33 0.19 0.15 0.39 0.23 0.15 0.21 P4 = 0.37 0.23 0.16 0.23 0.49 0.24 0.13 0.12 0.37 0.26 0.16 0.18 0.38 0.27 0.16 0.17 P8 = 0.38 0.27 0.16 0.17 0.36 0.28 0.17 0.17 WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Sposób 2 Algorytm: symulujemy wstępnie dużą ilość kroków łańcucha, tak by zbiegł do rozkładu stacjonarnego, od określonego punktu przez N kolejnych iteracji zliczamy ilości stanów jakie przyjął łańcuch, za prawdopodobieństwo przyjęcia stanu i przyjmujemy πi := ilość kroków, w których łańcuch był w stanie i-tym N Czasem się go określa jako MCMC = Markov Chain Monte Carlo. M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Sposób 2 400 350 0.10 0.40 P= 0.30 1.00 T = 379 0.00 0.40 0.40 0.00 288 149 184 0.60 0.00 0.30 0.00 0.30 0.20 0.00 0.00 300 250 200 150 100 50 0 0 M. Czoków, J. Piersa 1 2 WSN 2011/2012 Wykład 12 3 4 5 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Sposób 2 Problem: Kiedy zakończyć wstępną symulację? M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Sposób 2 Algorytm: oznaczmy T — wstępną ilość kroków, w kroku 0 z każdego ze stanów wypuszczamy osobną ewoluującą po sieci kopię łańcucha, jeżeli w pewnym kroku dwie kopie spotkają się w jednym stanie sklejają się i dalej ewoluują razem (równoważnie — usuwamy jedną z kopii), jeżeli w kroku T wszystkie łańcuchy zostały sklejone do jednego, to kończymy etap, jeżeli nie to przyjmujemy T :=2T i kontynuujemy. M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Sposób 2 a Uwaga! istnieją łańcuchy Markowa, dla których ten algorytm się zapętli (ale dla takich nie istnieje rozkład stacjonarny — nie spełniają założeń twierdzenia!). M. Czoków, J. Piersa b a b c a 0 1 0 b 0.5 0 0.5 c 0 1 0 WSN 2011/2012 Wykład 12 c Definicja Łańcucha Markowa Stan stacjonarny Zadania Istnienie Szukanie stanu stacjonarnego Za tydzień Wykorzystanie MC do konstrukcji stochastycznej dynamiki w sieci neuronowej (maszyna Boltzmanna). M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Pytania Co to jest łańcuch Markowa? Podaj przykład. Podaj przykłady przywiedlnego i nieprzywiedlnego MC. Podaj przykłady okresowego i nieokresowego MC. Dla zadanej macierzy przejścia MC narysuj odpowiadający graf. Czy podany łańcuch Markowa zadany przez graf jest nieprzywiedlny / aperiodyczny? Czy podany łańcuch Markowa zadany przez macierz przejścia jest nieprzywiedlny / aperiodyczny? M. Czoków, J. Piersa WSN 2011/2012 Wykład 12 Definicja Łańcucha Markowa Stan stacjonarny Zadania Zadania Zaimplementuj algorytm symulujący MC o zadanej macierzy przejść P. Znajdź (numerycznie) rozkład stacjonarny zadanego łańcucha Markowa. M. Czoków, J. Piersa WSN 2011/2012 Wykład 12