Praktyczny przykład dla MCMC


14

Przechodziłem wykłady związane z MCMC. Nie znalazłem jednak dobrego przykładu tego, jak się go używa. Czy ktoś może dać mi konkretny przykład. Widzę tylko, że prowadzą łańcuch Markowa i mówią, że jego rozkład stacjonarny jest rozkładem pożądanym.

Chcę dobrego przykładu, w którym trudno jest pobrać żądany rozkład. Tworzymy łańcuch Markowa. Chcę wiedzieć, jak wybrać macierz przejścia, aby jej rozkład stacjonarny łańcucha Markowa był rozkładem docelowym. Dzięki


Podstawowa teoria łańcucha Markowa służy do wykazania, że ​​określony schemat próbkowania będzie miał rozkład stacjonarny, który jest pożądanym rozkładem połączeń. W najprostszym przykładzie waniliowy sampler Gibbs symuluje z pełnych rozkładów warunkowych. Odpowiednie jądra przejściowe, wzięte razem, jeśli spełniają warunki konwergencji (często proste do pokazania), można łatwo wykazać, że mają rozkład połączeń jako rozkład stacjonarny. Podobnie w przypadku Metropolis Hastings i tak dalej. Wygląda na to, że wykłady, na które patrzysz, nie wyjaśniają, jak MCMC jest łańcuchem Markowa
Glen_b

Odpowiedzi:


3

Dobrym przykładem dystrybucji, z której trudno jest próbkować, jest model Hard-Core, zobacz tę stronę, aby uzyskać przegląd:

http://www.mathematik.uni-ulm.de/stochastik/lehre/ss06/markov/skript_engl/node34.html

Ten model definiuje rozkład na siatce dla niektórych stałych , gdzie w każdym punkcie siatki można mieć wartość jeden lub zero. Aby siatka była dopuszczalna w modelu twardym, żaden z dwóch sąsiadujących punktów na siatce nie może mieć wartości 1.n×nn

Poniższy obraz pokazuje przykładową dopuszczalną konfigurację siatki w modelu hard-core. Na tym obrazie są one przedstawione jako czarne kropki, a zera jako białe. Zauważ, że nie dwie czarne kropki sąsiadują ze sobą.8×8

Przykład dopuszczalnej konfiguracji dla siatki 8 $ 8 razy 8 $ w modelu hard-core

Wierzę, że inspiracja dla tego modelu pochodzi z fizyki, możesz myśleć o każdej pozycji na siatce jako cząstce, a wartość w tej pozycji reprezentuje ładunek elektryczny lub spin.

Chcemy równomiernie próbkować z populacji dopuszczalnych siatek, to znaczy jeśli jest zbiorem dopuszczalnych siatek, chcemy próbkować tak, abyEeE

p(e)=1|E|

gdzieto liczba wszystkich możliwych dopuszczalnych konfiguracji.|E|

To już stanowi wyzwanie, biorąc pod uwagę, że rozważamy siatek, jak możemy ustalićliczba dopuszczalnych sieci? n×n|E|

Jedną z miłych rzeczy w MCMC jest to, że pozwala na próbkowanie z rozkładów, w których stała normalizująca jest trudna lub niemożliwa do oszacowania.

Pozwolę ci przeczytać artykuł na temat tego, jak wdrożyć MCMC dla tego problemu, ale jest to stosunkowo proste.



2

Kolejny trudny problem w statystykach. Pytanie jest stare, ale trudno znaleźć przykłady wprowadzające w Internecie. Pozwolę sobie zatem uprościć dwa świetne przykłady na wypadek, gdyby ktoś podążający losowym marszem PageRank wylądował tutaj, oszołomiony przez MCMC, i pełen oczekiwania na łatwą do naśladowania odpowiedź. Jak prawdopodobne To może być kolejne pytanie.

FIRST EXAMPLE:

N(0,1)

Trudność polega na wiedząc, że po przejściu przez wszystkie etapy mechanicznych, istnieje tylko jedna magiczna sztuczka: binarna decyzja o akceptacji lub odrzuceniu z proponowaną wartość .

xmean0sd 1rnorm(10000)

epsϵxixi+1runif(1, - eps, eps)xi

Każda proponowana wartość różniłaby się zatem od poprzedniej wartości w sposób losowy i w granicach [- eps,+ eps].

ii+1

N(0,1)xi+1xi

min(1, dnorm(candidate_value)/dnorm(x))1N(0,1) pdfxi+1ximin(1, ...)dnorm

min(1, dnorm(candidate_value)/dnorm(x))runif(1)01x[i+1]x[i]

sd10

0x = 0; vec[1] = x

SECOND EXAMPLE:

Jest to bardziej ekscytujące i odnosi się do szacowania parametrów krzywej regresji liniowej poprzez obliczanie prawdopodobieństw logarytmicznych dla parametrów losowych dla danego zestawu danych . Jednak egzegeza linii kodu jest wbudowana w zapisaną tutaj skondensowaną symulację , wykonując bardzo podobne kroki do pierwszego przykładu.


Potrzebnych jest kilka drobnych poprawek: „ ląduje tutaj zdezorientowany przez CMCM ”… trzeba się rozejrzeć . „ Rosenbluth-Hatings ” .... prawdopodobnie potrzebuje tam dodatkowych „s”. Powiedziałbym, że pierwszy przykład nie jest „trudny do próbkowania” (jak pyta pytanie). Oba twoje przykłady wyglądają jak Metropolis-Hastings (co z pewnością jest ważne), ale MCMC więcej. Przykładowo, wiele osób korzysta z próbkowania Gibbs, często za pośrednictwem JAGS / BUGS / etc. Brak decyzji dotyczącej akceptacji proponowanego kroku - zawsze się poruszasz.
Glen_b

Poprawiłem brakujące „s”, pisownię izomeryczną CMCM. Pozbyłem się potencjalnie nieuzasadnionego hiperłącza do serwisu YouTube dotyczącego problemu z nazwą. Wyjaśniłem, dlaczego zdecydowałem się na pierwszy przykład opracowania pomimo szczególnej prośby (starego) pytania. Doceniam twoje zwrócenie uwagi na wszystkie te kwestie. Nie jestem pewien co do konsekwencji twojej ostatniej linii.
Antoni Parellada,

Jest to po prostu odniesienie do linii „ jest tylko jedna magiczna sztuczka: binarna decyzja o przyjęciu lub odrzuceniu proponowanej wartości ”; wskazując, że nie jest to właściwość wszystkich algorytmów MCMC. To samo w sobie nie oznacza, że ​​masz problem z odpowiedzią; jeśli chcesz, możesz to potraktować jako wyjaśnienie. Izomeryczny bit był dobry.
Glen_b

1

Ten film na Youtube jest naprawdę fajną wizualizacją prostego problemu, który został rozwiązany za pomocą MCMC.

Rozkład zainteresowania jest rozkładem tylnym na możliwych nachyleniach i przechwytuje w regresji liniowej (prawy górny panel). Niektóre kombinacje nachyleń i punktów przecięcia są bardzo prawdopodobne (tj. Mają wysokie prawdopodobieństwo wygenerowania zaobserwowanych punktów danych i są zgodne z naszymi oczekiwaniami a priori ), dlatego należy je często próbkować. Inne kombinacje są nieprawdopodobne (np. Jeśli odpowiadają niebieskiej linii, która nie przechodzi przez chmurę punktów danych) i należy próbkować rzadziej.

Duży panel w lewym dolnym rogu pokazuje ścieżkę obraną przez łańcuch Markowa przez dwuwymiarową przestrzeń stoków i przecięć. Histogramy pokazują jednowymiarowe podsumowania dotychczasowych postępów łańcucha. Gdy łańcuch będzie działał wystarczająco długo, mamy bardzo dobre oszacowania rozkładów dla możliwych wartości nachylenia i przecięcia.

W tym przypadku MCMC to przesada, ale istnieją pewne problemy, w których rozwiązanie jest trudne do spisania i sensowne jest badanie możliwości za pomocą łańcucha Markowa, zamiast próbowania rozwiązania go bezpośrednio.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.