Ich lerne gerade etwas über Bayesianische Statistiken. Darunter werde ich die Markov-Ketten-Monte-Carlo-Methode zusammenfassen. Als Ausgangspunkt gibt Ihnen dieser Artikel einen Überblick über die Markov-Kette und die Monte-Carlo-Methode.
Hier ist das Buch, auf das ich mich diesmal bezog.
Betrachten Sie in der Bayes'schen Inferenz das Wahrscheinlichkeitsmodell $ P (X, Z) $, wobei $ X $ die beobachteten Daten und $ Z $ die Menge nicht beobachteter Variablen wie Parameter und latenter Variablen sind. Zu diesem Zeitpunkt ist es notwendig, die posteriore Verteilung von $ P (Z | X) $ zu berechnen, um bestimmte Probleme wie Lernen und Vorhersage zu lösen. Übrigens gibt es das Problem, dass diese hintere Verteilung nicht analytisch gelöst werden kann oder dass das numerische Lösen einen großen Rechenaufwand erfordert. Daher werde ich versuchen, die Eigenschaften dieser gewünschten Verteilung zu untersuchen, indem ich mehrere Stichproben aus $ P (Z | X) $ erhalte. Als diese Beispielringmethode gibt es die ** Markov-Ketten-Monte-Carlo-Methode **.
Um jeden Begriff kurz zu erklären,
Es wird sein. Nachfolgend finden Sie jeweils eine kurze Zusammenfassung.
Dies ist eine Methode, um eine ungefähre Lösung durch Versuch unter Verwendung von Zufallszahlen zu finden. Ein häufiges Beispiel für eine Erklärung ist eine Näherungslösung mit einem Umfangsverhältnis von $ π $. Stellen Sie sich einen Kreis mit einem Radius von $ R $ und einem Quadrat vor, das ihn bedeckt.
Wenn zu diesem Zeitpunkt die Fläche des Kreises $ So $ und die Fläche des Quadrats minus der Fläche des Kreises $ Ss $ ist,
So = πR^2\\
Ss = 4R^2-πR^2\\
Kann ausgedrückt werden als. Fügen Sie nun diese beiden Formeln hinzu und drücken Sie $ π $ mit $ So $ und $ Ss $ aus.
π = \frac {4So}{So + Ss}
Es wird sein. Ändern wir nun den Radius in $ 1 $. Durch Generieren einer Zufallszahl im Intervall $ [0,1] $ wird die Wahrscheinlichkeit berechnet, $ 1 $ zu werden, wenn es sich innerhalb des Kreises befindet, und $ 0 $, wenn es sich außerhalb des Kreises befindet. Implementieren Sie in Python als Beispiel.
import random
inner =0
for i in range(1000000):
x, y = random.random(), random.random()
if x**2 + y**2 < 1:
inner +=1
print (inner * 4/1000000)
Es wurde $ 3.141072 $. Es stellt sich heraus, dass der Wert nahe bei 3,1415 $ liegt. Ich habe die Monte-Carlo-Methode bestätigt, die eine Approximation durch Zufallszahlen durchführt.
Die Markov-Kette bedeutet, dass der nächste Zustand nur durch den vorherigen Zustand bestimmt wird. Wenn Sie die schrittweise Formel kennen, die Sie in der Mathematik der High School lernen, sollten Sie darüber nachdenken. Es ist schwer, sich ein tatsächliches Beispiel vorzustellen, das vom vorherigen Status bestimmt wird, aber hier ist ein Beispiel, das in einem Lehrbuch oder einer Webseite zu sehen ist.
Es gibt kein Ende, es zu erhöhen.
Betrachten Sie nun ein Beispiel.
Problem mit der Krawatte: Eine High School bietet offiziell drei Arten von Uniformbindungen an. Zhu, grün und blau. Angenommen, es gibt 100 Erstklässler. Es ist empirisch bekannt, dass am ersten Tag rote, grüne und blaue Krawatten mit einer Wahrscheinlichkeit von 0,6,0,25,0,15 $ getragen werden. ** Die Schüler dieser High School entscheiden das Krawattenmuster für den Tag nur anhand des am Vortag gepressten Krawattenmusters. ** ** ** Die Wahrscheinlichkeit ist unten gezeigt. Wie hoch ist nun die Wahrscheinlichkeit, jede Farbe einen Tag später oder zehn Tage später zu tragen?
Tabelle | Am Tag: Zhu | Am Tag: Grün | Am Tag: Blau |
---|---|---|---|
Am Tag zuvor: Zhu | 0.3 | 0.3 | 0.4 |
Am Tag zuvor: grün | 0.1 | 0.5 | 0.4 |
Am Tag zuvor: blau | 0.2 | 0.6 | 0.2 |
Die Wahrscheinlichkeitsvariable, die das Muster der Bindung am $ t $ Tag darstellt, sei $ X ^ {t} $ unter Verwendung des Index $ t (= 1, ...., T) $. Eine stochastische Variable, die sich im Laufe der Zeit ändert, wird als ** stochastischer Prozess ** bezeichnet. Der allgemeine stochastische Prozess ist
P(X^t|X^{t-1},・ ・ ・,X^1)
Es ist eine bedingte Wahrscheinlichkeit, die auf den Umständen davor basiert. In diesem Fall jedoch
P(X^t|X^{t-1},・ ・ ・,X^1) = P(X^t|X^{t-1})
Der Wahrscheinlichkeitsprozess, der nur von der Wahrscheinlichkeit des Vortages beeinflusst wird, wird als Markov-Kette bezeichnet.
Die bedingte Wahrscheinlichkeit, die diese Markov-Kette definiert, kann wie folgt ausgedrückt werden. Dies wird als ** Übergangskern oder Übergangskernel ** bezeichnet.
{\bf{P}}=\begin{pmatrix} 0.3 & 0.3 & 0.4 \\
0.1 & 0.5 & 0.4 \\
0.2 & 0.6 & 0.2 \end{pmatrix}
Lassen Sie uns nun die Wahrscheinlichkeitsverteilung nach einigen Tagen ermitteln. Wenn $ p_Zhu ^ {t} = p (X ^ {t} = Zhu) $ geschrieben wird, ist die Wahrscheinlichkeitsverteilung von $ X ^ {t} $ $ \ textbf p ^ {t} = (p_1 ^ {t}) , p_2 ^ {t}, p_3 ^ {t}) $ und $ \ textbf p ^ {1} = (0,6,0,25,0,15) $. Die Wahrscheinlichkeit, am zweiten Tag eine zinnoberrote Krawatte zu tragen, ist $ \ Textbf p (X ^ 2 = Zhu) = 0,3 × 0,6 + 0,1 × 0,25 + 0,2 × 0,15 = 0,235 $ Es wird sein.
Sie kann wie folgt berechnet werden, indem die Berechnung mit derselben Idee wiederholt wird.
Sie können sehen, dass es nach dem 4. Tag keine Änderung mehr gibt. Die Antwort, die ich zuvor erwähnt habe, lautet: "Nach dem 4. Tag ist es bei Zinnoberrot stabil: grün: blau = 1/6: 1/2: 1/3".
Die Wahrscheinlichkeitsverteilung $ \ bf p $, die sich zu diesem Zeitpunkt nicht ändert, wird als ** stetige Verteilung oder invariante Verteilung ** bezeichnet. Der Zeitraum bis zum Ersetzen dieser stetigen Verteilung wird als ** Einbrennzeit ** bezeichnet.
Der Zweck dieses Bindungsproblems bestand darin, den endgültigen Verschleißzustand, den stationären Zustand, zu finden. Dieses Mal möchte ich jedoch bei klarer posteriorer Verteilung eine Zufallszahl erhalten, die der posterioren Verteilung entspricht. Mit anderen Worten, erwägen Sie, einen Übergangskern so zu gestalten, dass die hintere Verteilung zu einer stationären Verteilung wird. Auf diese Weise wird für die Verteilung, die Sie abtasten möchten, die Methode zum Aufbau der Markov-Kette mit der ** konstanten Verteilung ** als ** Markov-Ketten-Monte-Carlo-Methode ** (allgemein als MCMC-Methode bekannt) bezeichnet.
Bei der MCMC-Methode ist die stationäre Verteilung bekannt, aber der Übergangskern ist unbekannt (im Gegensatz zum Bindungsproblem).
Hier verwenden wir die Idee der ** detaillierten Gleichgewichtsbedingung ** als Bedingung für die Konvergenz der Markov-Kette zu einer stetigen Verteilung. Für die Wahrscheinlichkeitsvariablen $ θ und θ '$ bezieht sich dies auf die folgende Formel.
f(θ'|θ)f(θ) = f(θ|θ')f(θ')
Im Fall des zuvor erwähnten Krawattenproblems
p(Zhu|Grün) ×\frac {1}{6} = p(Grün|Zhu) ×\frac {1}{2}
Es wird sein.
Hier finden Sie eine Übersicht über die detaillierten Ausgleichsbedingungen. Der Punkt $ θ $ sei nahe dem Zentrum der Verteilung und der Punkt $ θ '$ sei die Peripherie der Verteilung. Zu diesem Zeitpunkt bedeuten die detaillierten Ausgleichsbedingungen
f(θ'):f(θ) = 1 :Wenn ein\\
f(θ|θ'):f(θ'|θ) = a :1
Es wird sein.
Die Bewegung von $ θ '$ → $ θ $ ist $ a $ wahrscheinlicher als die Bewegung von $ θ $ → $ θ' $. Mit anderen Worten bedeutet dies, dass es einfach ist, sich in der Nähe des Zentrums zu bewegen.
Wenn diese detaillierte Gleichgewichtsbedingung gebrochen ist, bedeutet dies, dass die Zufallszahlenfolge schließlich in die Mitte gezogen wird, selbst wenn der Anfangszustand zufällig genommen wird.
Nachdem ich die Markov-Kette bzw. die Monte-Carlo-Methode zusammengefasst hatte, fasste ich das Bindungsproblem als Beispiel für die Markov-Ketten-Monte-Carlo-Methode zusammen. Nachdem die Gliederung vollständig ist, möchte ich mich mit der Erklärung des Algorithmus befassen, der diese MCMC-Methode beim nächsten Mal verwendet.
Der nächste Artikel.
Verstehen Sie die Metropolitan Hasting-Methode (eine der Methoden in der Markov-Ketten-Monte-Carlo-Methode) mit der Implementierung https://qiita.com/Fumio-eisan/items/6e8bad9977e945ddb2fc
Es wird auch unten als Blog beschrieben. Die Rolle besteht darin, detaillierter zusammenzufassen.
https://fumio-eisan.hatenablog.com/
Recommended Posts