Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa

Podobne dokumenty
Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova

Spacery losowe generowanie realizacji procesu losowego

Procesy stochastyczne WYKŁAD 2-3. Łańcuchy Markowa. Łańcuchy Markowa to procesy "bez pamięci" w których czas i stany są zbiorami dyskretnymi.

Procesy stochastyczne

Elementy modelowania matematycznego

Procesy stochastyczne WYKŁAD 2-3. Łańcuchy Markowa. Łańcuchy Markowa to procesy "bez pamięci" w których czas i stany są zbiorami dyskretnymi.

Algorytm Metropolisa-Hastingsa

19 marzec, Łańcuchy Markowa z czasem dyskretnym. Procesy Stochastyczne, wykład 6, T. Byczkowski, Procesy Stochastyczne, PPT, Matematyka MAP1136

Procesy Markowa zawdzięczają swoją nazwę ich twórcy Andriejowi Markowowi, który po raz pierwszy opisał problem w 1906 roku.

Wykład 9: Markov Chain Monte Carlo

Algorytmy MCMC (Markowowskie Monte Carlo) dla skokowych procesów Markowa

Ćwiczenia: Ukryte procesy Markowa lista 1 kierunek: matematyka, specjalność: analiza danych i modelowanie, studia II

Wstęp do sieci neuronowych, wykład 14 Maszyna Boltzmanna

Analiza Algorytmów 2018/2019 (zadania na laboratorium)

Wstęp do sieci neuronowych, wykład 12 Wykorzystanie sieci rekurencyjnych w optymalizacji grafowej

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Wstęp do sieci neuronowych, wykład 10 Sieci rekurencyjne. Autoasocjator Hopfielda

Wstęp do sieci neuronowych, wykład 9 Sieci rekurencyjne. Autoasocjator Hopfielda

MODELOWANIE STOCHASTYCZNE CZĘŚĆ II - ŁAŃCUCHY MARKOWA. Biomatematyka Dr Wioleta Drobik-Czwarno

Wstęp do sieci neuronowych, wykład 10 Sieci rekurencyjne. Autoasocjator Hopfielda

Wielowymiarowy próbnik Gibbsa

Metody Rozmyte i Algorytmy Ewolucyjne

Geometryczna zbieżność algorytmu Gibbsa

Wstęp do sieci neuronowych, wykład 9 Sieci rekurencyjne. Autoasocjator Hopfielda

Algorytmy MCMC i ich zastosowania statystyczne

Algorytmy MCMC i ich zastosowania statystyczne

Algorytmy stochastyczne laboratorium 03

ALHE. prof. Jarosław Arabas semestr 15Z

Grafy Alberta-Barabasiego

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych.

Modelowanie rynków finansowych z wykorzystaniem pakietu R

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH

Prawdopodobieństwo i statystyka

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

Algorytmy zrandomizowane

Matematyka dyskretna

Digraf. 13 maja 2017

Prawa potęgowe w grafach przepływu informacji dla geometrycznych sieci neuronowych

Algorytmy MCMC i ich zastosowania statystyczne

Algorytmiczna teoria grafów

Programowanie dynamiczne i algorytmy zachłanne

26 marzec, Łańcuchy Markowa z czasem ciągłym. Procesy Stochastyczne, wykład 7, T. Byczkowski, Procesy Stochastyczne, PPT, Matematyka MAP1136

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane.

Zadania z Rachunku Prawdopodobieństwa II Podaj przykład rozkładów prawdopodobieństwa µ n, µ, takich, że µ n µ,

Prawdopodobieństwo i statystyka

Program MC. Obliczyć radialną funkcję korelacji. Zrobić jej wykres. Odczytać z wykresu wartość radialnej funkcji korelacji w punkcie r=

Kwantyle. Kwantyl rzędu p rozkładu prawdopodobieństwa to taka liczba x p. , że. Możemy go obliczyć z dystrybuanty: P(X x p.

( n) Łańcuchy Markowa X 0, X 1,...

Podstawy OpenCL część 2

Procesy stochastyczne

Wstęp do sieci neuronowych, wykład 8 Uczenie nienadzorowane.

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane.

Prawdopodobieństwo i statystyka

Porównanie algorytmów wyszukiwania najkrótszych ścieżek międz. grafu. Daniel Golubiewski. 22 listopada Instytut Informatyki

Algorytmy mrówkowe (optymalizacja kolonii mrówek, Ant Colony optimisation)

Procesy stochastyczne

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Układy stochastyczne

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami

Algorytmy i Struktury Danych.

Wokół wyszukiwarek internetowych

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

Zbigniew S. Szewczak Uniwersytet Mikołaja Kopernika Wydział Matematyki i Informatyki. Graniczne własności łańcuchów Markowa

Lista 1. Procesy o przyrostach niezależnych.

Statystyka i eksploracja danych

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

Sieci komputerowe. Wykład 8: Wyszukiwarki internetowe. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Zadania z Rachunku Prawdopodobieństwa II Podać przykład rozkładów prawdopodobieństwa µ n, µ, takich, że µ n µ,

3. Podać przykład rozkładów prawdopodobieństwa µ n, µ, takich, że µ n µ,

MNRP r. 1 Aksjomatyczna definicja prawdopodobieństwa (wykład) Grzegorz Kowalczyk

Sortowanie topologiczne skierowanych grafów acyklicznych

MODELOWANIE RZECZYWISTOŚCI

Optymalizacja. Symulowane wyżarzanie

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

Metody probabilistyczne

Sieci Mobilne i Bezprzewodowe laboratorium 2 Modelowanie zdarzeń dyskretnych

Zagadnienie najkrótszej drogi w sieci

Proces rezerwy w czasie dyskretnym z losową stopą procentową i losową składką

Strategie ewolucyjne (ang. evolu4on strategies)

Modelowanie motywów łańcuchami Markowa wyższego rzędu

Programowanie dynamiczne

Fuzja sygnałów i filtry bayesowskie

WYKŁADY Z RACHUNKU PRAWDOPODOBIEŃSTWA I wykład 2 i 3 Zmienna losowa

Algorytmy stochastyczne Wykład 12, Uczenie parametryczne w sieciach bayesowskich

Modelowanie komputerowe

Prognozowanie i Symulacje. Wykład I. Matematyczne metody prognozowania

Wykład 6 Centralne Twierdzenie Graniczne. Rozkłady wielowymiarowe

Rozpoznawanie obrazów

2. Wykaż, że moment pierwszego skoku w procesie Poissona. S 1 := inf{t : N t > 0} jest zmienną losową o rozkładzie wykładniczym z parametrem λ.

Wykład 10 Grafy, algorytmy grafowe

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

1 Wartości własne oraz wektory własne macierzy

Wykładnicze grafy przypadkowe: teoria i przykłady zastosowań do analizy rzeczywistych sieci złożonych

Podstawowe własności grafów. Wykład 3. Własności grafów

Badania operacyjne egzamin

ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW

W6 Systemy naprawialne

Analiza algorytmów zadania podstawowe

Uczenie sieci neuronowych i bayesowskich

Transkrypt:

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa M. Czoków, J. Piersa 2012-01-10

1 Łańcucha Markowa 2 Istnienie Szukanie stanu stacjonarnego 3

1 Łańcucha Markowa 2 Istnienie Szukanie stanu stacjonarnego 3

Łańcuch Markowa (jednorodny) wydział klub 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 dom stołówka X 0 = dom, X 1 = w, X 2 = s, X 3 = w, X 4 = d, X 5 = s,...

(nieformalna) Łańcuch Markowa, ang. Markov Chain (MC) Dane mamy: przestrzeń stanów Σ, macierz przejścia P, P i,j prawdopodobieństwo przejścia ze stanu i-tego do j-tego w jednym kroku, j P i,j = 1 (ma to być prawdopodobieństwo), stan początkowy p 0 (lub rozkład P 0, z którego ma pochodzić stan początkowy),

(nieformalna) Dynamika: jako stan w kroku t = 0 wybieramy stan początkowy p 0 (lub losujemy go z rozkładu P 0 ), 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 P i,1, stan 2-gi z prawdopodobieństwem P i,2, stan i-ty z prawdopodobieństwem P i,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).

(formalna) Łańcucha Markowa Ł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(X t = x X t 1 = x t 1, X t 2 = x t 2,..., X 0 = x 0 ) = = P(X t = x X t 1 = x t 1 ).

Interpretacja Łańcucha Markowa 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 P ij > 0, to dodajemy krawędź (i, j) do grafu (z wagą P ij ), 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.

Interpretacja Łańcucha Markowa wydział klub 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 dom stołówka

Stan przechodni Łańcucha Markowa a stan a jest przechodni, jeżeli istnieje ścieżka wychodząca z a bez powrotu b c

Stan porwacający Łańcucha Markowa 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 b c

Klasa rekursji Łańcucha Markowa 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,

Klasa rekursji Łańcucha Markowa 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,

Łańcuch nieprzywiedlny 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 b a c

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 } {{ } a) > 0} = 1 w i krokach d a b c a b c

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 } {{ } a) > 0} = 1 w i krokach d a b c a b okresowy nieokresowy c

Błądzenie losowe Łańcucha Markowa 20 10 0-10 -20-30 -40 0 200 400 600 800 1000

Łańcucha Markowa 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).

Losowanie z rozkładu dyskretnego dane niech będzie n kategorii z przypisanymi prawdopodobieństwami p 1,.., p n. x 2 p=0.09 x 1 p=0.04 x 8 p=0.11 chcemy wylosować jedną z kategorii z odpowiadającym jej prawdopodobieństwem x 3 p=0.25 x 7 p=0.26 P(X = i) = p i x 4 p=0.01 x 5 p=0.09 x 6 p=0.15

Algorytm naiwny Łańcucha Markowa P(X = i) = p i oblicz s i := i j=1 p j dla i = 1..n wylosuj u U (0,1) I := 1 while (s i < u) I + + return I Wartości s 1 do s n 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.

Algorytm podziału odcinka wygeneruj u U (0,1) l := 0 r := n do c := (l + r)/2 if (u > s c ) l := c else r := c while (l < r 1) return r

Algorytm generowania wylosuj u 1 Ex(p 1 ), u 2 Ex(p 2 )..., u n Ex(p n ) np. algorytmem odwracania dystrybuanty, Ex(λ) wylosuj T U (0,1) zwróć 1 λ ln(t ) znajdź indeks i, taki że u i = min(u 1,..., u n ) zwróć i

Istnienie Szukanie stanu stacjonarnego 1 Łańcucha Markowa 2 Istnienie Szukanie stanu stacjonarnego 3

Twierdzenie Łańcucha Markowa Istnienie Szukanie stanu stacjonarnego Niech P (n) ij = (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. Wtedy istnieje wektor probabilistyczny π i, i π i = 1, i π i > 0, taki że lim n + P(n) ij = π j.

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).

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ć,

Jak znalźć rozkład stacjonarny Istnienie Szukanie stanu stacjonarnego Dane: łańcuch Markowa opisany przez macierz przejścia P. Cel: chcemy znaleźć rozkład stacjonarny π.

Istnienie Szukanie stanu stacjonarnego Obserwacja przyp. P ij = 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) = P ik P kj 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) = P ik P kj

Istnienie Szukanie stanu stacjonarnego Obserwacja przyp. P ij = 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) = P ik P kj prawdopodobieństwo przejścia z i do j w dokładnie dwóch krokach, ale przez dowolny wierzchołek pośredni P(i j) = k P ik P kj

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 P(i 2kroki j) = k P ik P kj 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.

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.

Istnienie Szukanie stanu stacjonarnego Sposób 1 P = P 2 = 0.10 0.60 0.30 0.00 0.40 0.00 0.20 0.40 0.30 0.30 0.00 0.40 1.00 0.00 0.00 0.00 0.34 0.15 0.15 0.36 0.50 0.30 0.12 0.08 0.55 0.18 0.15 0.12 0.10 0.60 0.30 0.00 P 4 = P 8 = 0.30 0.33 0.19 0.15 0.39 0.23 0.15 0.21 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 0.38 0.27 0.16 0.17 0.36 0.28 0.17 0.17

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 ilość kroków, w których łańcuch był w stanie i-tym π i := N Czasem się go określa jako MCMC = Markov Chain Monte Carlo.

Istnienie Szukanie stanu stacjonarnego Sposób 2 400 P = 0.10 0.60 0.30 0.00 0.40 0.00 0.20 0.40 0.30 0.30 0.00 0.40 1.00 0.00 0.00 0.00 T = [ 379 288 149 184 ] 350 300 250 200 150 100 50 0 0 1 2 3 4 5

Sposób 2 Łańcucha Markowa Istnienie Szukanie stanu stacjonarnego Problem: Kiedy zakończyć wstępną symulację?

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.

Sposób 2 Łańcucha Markowa Istnienie Szukanie stanu stacjonarnego 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!). a b c a b c a 0 1 0 b 0.5 0 0.5 c 0 1 0

Za tydzień Łańcucha Markowa Istnienie Szukanie stanu stacjonarnego Wykorzystanie MC do konstrukcji stochastycznej dynamiki w sieci neuronowej (maszyna Boltzmanna).

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?

Zaimplementuj algorytm symulujący MC o zadanej macierzy przejść P. Znajdź (numerycznie) rozkład stacjonarny zadanego łańcucha Markowa.