Wprowadzenie do Sieci Neuronowych — Łańcuchy Markowa
Maja Czoków, Jarosław Piersa 2013-01-14
1 Przypomnienie
Łańcuch Markowa jest procesem stochastycznym (ciągiem zmiennych losowych), w którym rozkład zmiennej w chwili t zależy wyłącznie od wartości łańcucha w kroku poprzednim tj. od Xt−1i nie zależy od Xt−2, Xt−3... X0.
P(Xt= k|Xt−1= xt−1, Xt−2...X0) = P(Xt= k|Xt−1= xt−1)
Jeżeli prawdopodobieństwa przejść między stanami nie zmieniają się w czasie to łańcuch nazywamy jednorodnym.
∀t≥1P(Xt= k|Xt−1= x) = P(Xt+1= k|Xt= x)
Prawdopodobieństwa przejść będziemy oznaczać poprzez pij = P(X1= j|X0= i). Wówczas dynamika przejść jest jednoznacznie zdefiniowana przez macierz kwadratową P = [pij]ni,j=1, gdzie n jest ilością możliwych stanów. Do tego potrzebny jest rozkład stanu łańcucha w kroku zerowym P0= [p1..pk], gdzie pi= P(X0= k).
Łańcuch jest nieprzywiedlny (rekurencyjny) jeżeli z każdego stanu da się dojść do każdego innego.
Nieprzywiedlny łańcuch nazywamy nieokresowym (aperiodycznym) jeżeli gcd{i : P(a → · · · → · · · →
| {z }
a)} = 1 w i krokach
Tj. stany nie są pogrupowane w „fazy” np. jeżeli numer kroku jest parzysty to łańcych może być tylko w stanie S0albo S2.
Fakt Łańcuch Markowa, który jest nieprzywiedlny i nieokresowy posiada swój rozkład stacjonarny π, taki że
Pt· πt= πt.
To jest łańcuch, który już jest w stanie stacjonarnym, w tymże stanie już pozostanie.
2 Symulacja
2.1 Symulowanie łańcucha Markowa
• wylosuj stan w kroku zerowym t = 0 X0zgodnie z rozkładem początkowym P0tj. P (X0= Si) = pi,
dom stołówka wydział
klub
(a) Reprezentacja grafowa łańcucha
P dom wydział stołówka klub
dom 0.1 0.5 0.4 0
wydział 0.4 0 0.3 0.3
stołówka 0.5 0.2 0 0.3
klub 1.0 0 0 0
(b) Odpowiadająca tablica przejść
Rysunek 1: Przykładowy łańcucha Markowa.
a b c
(a) Łańcuch okresowy
a b
c d
(b) Łańcuch nieokresowy
Rysunek 2: Przykład łańcucha okresowego i nieokresowego.
• zwiększ krok t o jeden,
• wylosuj stan w kroku t-tym Xt z rozkładu pochodzącego z Xt−1-go wiersza macierzy P , to jest.
jeżeli np Xt−1= Si, to P(Xt= Sj) = pSi,Sj
2.2 Losowanie z rozkładu dyskretnego, sposób 1
Niech P(X = i) = pi.
• oblicz si:=Pi
j=1pj dla i = 1..n
x1p=0.04 x2p=0.09
x3p=0.25
x4p=0.01
x5p=0.09 x6p=0.15
x7p=0.26 x8p=0.11
Rysunek 3: Reprezentacja graficzna rozkładu dyskretnego.
• I := 1
• while (si< u) – I + +
• return I
Wartości s1, ..., sn można liczyć na bieżąco w trakcie pętli. Jeżeli losowanie ma być wielokrotnie powtarzane, to lepiej jest zapamiętać je w tablicy.
2.3 Losowanie z rozkładu dyskretnego, sposób 2
Niech P(X = i) = pi. Niech si=Pi
j=1pj — do obliczenia raz na symulację.
• 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
3 Zadania
Zadania przeznaczone do wykonania na zajęciach / w domu do samodzielnej pracy. Zadanie nie są punktowane.
3.1 Zadanie 0 (na rozgrzewkę)
Oblicz liczbę π (= 3.141592 . . .) za pomocą Monte Carlo, tj. losuj punkt z kwadratu [−1, +1] × [−1, +1], jeżeli wpadł w kolo o promieniu r = 1 i środku S = (0, 0), to zwiększ licznik trafień. Zwróć 4· ilość trafieńilość iteracji
3.2 Zadanie 1
Zasymuluj łańcuch Markowa z zadaną macierzą P i ilością kroków N . Łańcuch powinien zwrócić tablicę / listę stanów jakie były przyjmowane w kolejnych krokach. Stan początkowy można przyjąć jako zadany z góry.
3.3 Zadanie 2
Znajdź rozkład stacjonarny łańcucha o zadanej macierzy przejścia P . Poprzez odpowiednio długie sy- mulowanie i zliczenie sumarycznej liczby odwiedzeń (MCMC). W miarę możliwości wyświetl wyniki w formie graficznej.
3.4 Zadanie 3
Porównaj wyniki otrzymane w zadaniu 2-gim z wynikiem otrzymanym przez iteracyjne mnożenie przez siebie P .
3.5 Zadanie 4
Wykonaj symulację z zadania 2 na następujących macierzach przejścia. Czy i w tym wypadku wynik nie zależy od wyboru stanu początkowego?
P2=
0 .3 .4 .3
1 0 0 0
1 0 0 0
1 0 0 0
P3=
0 .3 .6999 .0001
1 0 0 0
1 0 0 0
0 0 0 1
P4=
.7 .3 0 0
1 0 0 0
0 0 .8 .2 0 0 .5 .5
3.6 Zadanie 5
a
b c
(a) Łańcuch 1
a
b c
(b) Łańcuch 2 (c) Łańcuch 3 (d) Łańcuch 4
(e) Łańcuch 5 (f) Łańcuch 6
a b c
(g) Łańcuch 7
a b
c d
(h) Łańcuch 8
Rysunek 4: Grafy do zadania.