Algorytmy MCMC i ich zastosowania statystyczne Wojciech Niemiro Uniwersytet Mikołaja Kopernika, Toruń i Uniwersytet Warszawski Statystyka Matematyczna Wisła, grudzień 2010
Wykład 1 1 Co to jest MCMC? 2 Po co jest MCMC? Przykłady wstępne Statystyka małych obszarów Model bayesowski Próbnik Gibbsa Statystyka przestrzenna Model auto-logistyczny Estymator największej wiarogodności Odtwarzanie obrazów PET (Positron Emission Tomography)
Co to jest MCMC? MCMC = (MC) 2 Markov Chain Monte Carlo Metody Monte Carlo wykorzystujace łańcuchy Markowa
Co to jest MCMC? Niech: X przestrzeń wielowymiarowa, π gęstość rozkładu prawdopodobieństwa na X, zwykle znana tylko z dokładnościa do stałej normujacej. Metoda MCMC: generujemy (symulujemy) łańcuch Markowa X 0, X 1,..., X t,... X t π, (t ). Obliczyć całkę Estymator MCMC: π(f ) = X f (x)π(x)dx, ˆπ t,n (f ) = 1 n t+n 1 i=t f (X i ) π(f ) t czas potrzebny, by rozkład X t był bliski π. (n ).
1 Co to jest MCMC? 2 Po co jest MCMC? Przykłady wstępne Statystyka małych obszarów Model bayesowski Próbnik Gibbsa Statystyka przestrzenna Model auto-logistyczny Estymator największej wiarogodności Odtwarzanie obrazów PET (Positron Emission Tomography)
Statystyka małych obszarów Próbka 3500 przedsiębiorstw. Ponad 350 powiatów. Oszacować sprzedaż w powiecie garwolińskim... Małe obszary to pod-populacje w których rozmiar próbki nie jest wystarczajacy, aby zastosować zwykłe estymatory (średnie z próbki). Podejście bayesowskie pozwala pożyczać informację z innych obszarów. Model bayesowski y ij N(θ i, σ 2 ) badana cecha dla j-tej wylosowanej jednostki i-tego obszaru, (j = 1,..., n i ), (i = 1,..., k), θ i N(µ, υ 2 ) interesujaca nas średnia w i-tym obszarze, µ średnia w całej populacji. Estymator bayesowski ˆθ i = E(θ i y) = z i ȳ i + (1 z i )µ, z i = n iυ 2 n i υ 2 + σ 2.
Hierarchiczny model bayesowski y ij N(θ i, σ 2 ), θ i N(µ, υ 2 ), µ N(m, τ 2 ), σ 2 Gamma(p, λ), υ 2 Gamma(q, κ). Łaczny rozkład prawdopodobieństwa: p(y, θ, µ, σ 2, υ 2 ) = p(y θ, σ 2 )p(θ µ, υ 2 )p(µ)p(σ 2 )p(υ 2 ). Rozkład prawdopodobieństwa a posteriori: p(θ, µ, σ 2, υ 2 y) = p(y, θ, µ, σ 2, υ 2 ) p(y) To jest rozkład docelowy π, na przestrzeni X = R k+3, ze nieznana stała normujac a 1/p(y).
Rozkłady warunkowe Rozkład łaczny: p(θ, µ, υ 2, σ 2 y) (σ 2 ) k/2 exp Rozkład warunkowy: (υ 2 ) k/2 exp { σ 2 2 υ 2 2 exp { τ 2 (µ m)2 2 k n i (y ij θ i ) 2 i=1 j=1 } k (θ i µ) 2 i=1 } (σ 2 ) q 1 exp{ κσ 2 } (υ 2 ) p 1 exp{ λυ 2 }. p(υ 2 y, θ, µ, σ 2 ) (υ 2 ) k/2+p 1 { ( ) } 1 k exp (θ i µ) 2 + λ υ 2. 2 i=1
Próbnik Gibbsa Reguła przejścia: (θ, µ, σ 2, υ 2) } {{ } X t (θ, µ, σ 2, υ 2). } {{ } X t+1 Powtarzaj: Wylosuj υ 2 p(υ 2 y, θ, µ, σ 2 ) = Gamma(...), Wylosuj σ 2 p(σ 2 y, θ, µ, υ 2 ) = Gamma(...), Wylosuj µ p(µ y, θ, σ 2, υ 2 ) = N(...), Wylosuj θ p(θ y, µ, σ 2, υ 2 ) = N(...), Łańcuch Markowa zbieżny do rozkładu a posteriori: X t π( ) = p(θ, µ, σ 2, υ 2 y).
Estymator bayesowski Wartość oczekiwana a posteriori: E(θ 1 y) = θ 1 p(θ, µ, σ 2, υ 2 y)dθ 2 dθ k dµdσ 2 dυ 2. Aproksymacja MCMC średnie wzdłuż trajektorii łańcucha: θ 1 (X 0 ), θ 1 (X 1 ),..., θ 1 (X t ),... gdzie θ 1 (x) = θ 1 dla x = (θ 1,..., θ k, µ, σ 2, υ 2 ).
Zbieżność do rozkładu stacjonarnego 1/v2 0 4 8 0 200 400 600 800 1000 step 1/v2 0 4 8 0 200 400 600 800 1000 step
Zbieżność średnich do estymatora bayesowskiego 1/v2 2.1 2.3 2.5 200 400 600 800 1000 step 1/v2 1.4 1.8 200 400 600 800 1000 step
Diagnostyka zbieżności może być watpliwa! Trajektoria v; wartosc modelowa v= 10 v 0 10 20 30 0 5000 10000 15000 20000 iteracja Trajektoria v z odrzuconym poczatkiem dlugosci 500 wartosc modelowa v= 50 v 0 10 20 30 0 5000 10000 15000 20000 iteracja Czy widać zbieżność do rozkładu stacjonarnego?
Diagnostyka zbieżności może być watpliwa! Trajektoria v; wartosc modelowa v= 10 v 0 10 20 30 0 5000 10000 15000 20000 iteracja Trajektoria v z odrzuconym poczatkiem dlugosci 500 wartosc modelowa v= 50 v 0 10 20 30 0 5000 10000 15000 20000 iteracja Czy widać zbieżność do rozkładu stacjonarnego?
Diagnostyka zbieżności może być watpliwa! Trajektoria skumulowanych srednich v skumulowane srednie v 2 4 6 8 10 12 modelowe v= 10 estymowane v= 1.434 0 5000 10000 15000 20000 iteracja Czy widać zbieżność średnich do estymatora bayesowskiego?
Diagnostyka zbieżności może być watpliwa! Trajektoria skumulowanych srednich v skumulowane srednie v 2 4 6 8 10 12 modelowe v= 10 estymowane v= 1.434 0 5000 10000 15000 20000 iteracja Czy widać zbieżność średnich do estymatora bayesowskiego?
Model auto-logistyczny Niech x = (x 1,..., x d ) konfiguracja binarnych zmiennych losowych na X = {0, 1} d. Rozkład Gibbsa: p θ (x) = 1 d Z (θ) exp θ ij x i x j. i,j=1 Stała normujaca Z (θ) = x X exp { } jest typowo niemożliwa do obliczenia. W zastosowaniach przestrzennych indeks i {1,..., d} interpretuje się jako miejsce. Zbiór miejsc wyposażony jest w strukturę grafu. Krawędzie łacz a miejsca sasiaduj ace. Piszemy i j. Najprostszy model: θ = (θ 0, θ 1 ), 0 i j, i j; θ ij = θ 1 i j; θ 0 i = j.
Symulacja Pełne rozkłady warunkowe (full conditionals): exp θ ii + d θ ij x j j=1 j i p θ (x i = 1 x i ) =, 1 + exp θ ii + d θ ij x j gdzie x i = (x j, j i). Zatem: Symulowanie x p θ jest łatwe za pomoca próbnika Gibbsa (PG): x 1 p θ (x 1 x 1 ), x 2 p θ (x 2 x 2 ),... j=1 j i
Estymator największej wiarogodności Estymator największej wiarogodności obliczany metoda Monte Carlo: Geyer and Thopmpson (1992, JRSS). Bardziej ogólna rodzina wykładnicza: p θ (x) = 1 [ ] Z (θ) exp θ T T (x). gdzie T (x) wektor statystyk dostatecznych. Rozkłady autologistyczne tworza rodzinę wykładnicza: θ ustawiona w wektor, statystykami T (x) sa x i i x i x j.
Aproksymacja Z (θ) metoda MC Z (θ) = x = x Z (θ)/z (θ ) = x [ ] exp θ T T (x) [ ] [ ] exp (θ θ ) T T (x) exp θ T T (x). [ ] exp (θ θ ) T T (x) p θ (x) [ ] = E θ exp (θ θ ) T T (x). Generujemy próbkę MC: x (k) p θ, k = 1,..., n gdzie θ jest w zasadzie dowolne, n jest możliwie największe. Ẑ (θ) MC /Z (θ ) = 1 n n k=1 [ ] exp (θ θ ) T T (x (k)).
Estymator największej wiarogodności Próbka MC: x (k) p θ, k = 1,..., n. Aproksymacja logarytmu wiarogodności L(θ) = log p θ (x): ˆL MC (θ) = θ T T (x) log n k=1 e (θ θ )T T (x (k)) }{{} MC przybliżenie Z (θ) +const. Jak losować z rozkładu AL? Próbnik Gibbsa! Uwaga: p θ (x i x i ) ten sam rozkład co w standardowym modelu regresji logistycznej. W kontekscie danych epidemiologicznych, θ może być wstępnym estymatorem obliczonym przy z użyciu standardowych metod GLM (Uogólnionych Modeli Liniowych). Następnie metoda MC obliczamy łatwo jednokrokowy estymator NW. Zalewska, Niemiro, Samoliński (2010 MC& Appl.)
Statystyczny model PET Lasota, Niemiro (2003) i Koronacki, Lasota, Niemiro (2005). s S piksel d D tuba Model: x sd liczba emisji w pikslu s zarejestrowanych w tubie d. x sd Poiss(f sd θ s ), gdzie f sd znane, θ s nieznane parametry. Cel: odtworzyć konfiguracje θ = (θ s ) s S na podstawie obserwacji y = (y d ) d D, gdzie y d = s x sd. Zadanie odwrotne!
Bayesowski model PET Rozkład a priori π(θ) exp [ β s t Ψ(θ s, θ t )] bardziej prawdopodobne sa gładkie konfiguracje (Ψ(θ s, θ t ) kwantyfikuje różnicę między θ s i θ t dla sasiednich piksli s t). Rozkład warunkowy π(θ x) exp [ s θ s + s ( d x sd) log θ s β s t Ψ(θ s, θ t )]. Próbnik Gibbsa oblicza rozkład a posteriori: generujemy θ π(θ x) (rekonstrukcja obrazu θ); generujemy x π(x y, θ) (imputacja brakujacych danych x). W istocie pierwszy krok (rekonstrukcja obrazu θ) jest próbnikiem Gibbsa, w którym θ s π(θ s θ s, x). W istocie... to było trochę bardziej skomplikowane (zmienne pomocnicze).
Dos wiadczenia symulacyjne Figure 3: Phantom I and results of reconstruction after 0, 5, 15, 25 and 40 steps; w = 10. 3 Figure 5: Phantom I and results of reconstruction after 40 steps; for w = 10, w = 20, w = 30, w = 100 and w = 300. 5