Wie viele Proben (nach dem Einbrennen) Sie benötigen, hängt davon ab, was Sie mit diesen Proben versuchen und wie sich Ihre Kette mischt.
Typischerweise sind wir an posterioren Erwartungen (oder Quantilen) interessiert und approximieren diese Erwartungen durch Durchschnittswerte unserer posterioren Proben, dh
wobeiθ(m)Proben von Ihrem MCMC sind. Nach dem Gesetz der großen Zahlen konvergiert die MCMC-Schätzung fast sicher gegen die gewünschte Erwartung.
E.[ h ( θ ) | y] ≈ 1M.∑m = 1M.h ( θ( m )) = E.M.
θ( m )
Um jedoch die Frage zu beantworten, wie viele Stichproben wir benötigen, um sicher zu sein, dass wir nahe genug an der gewünschten Erwartung sind, benötigen wir ein Ergebnis des zentralen Grenzwertsatzes (CLT), dh so etwas wie
Mit dieser CLT könnten wir dann probabilitische Aussagen wie "Es besteht eine 95% ige Wahrscheinlichkeit, dassE[h(θ)|y]zwischenEM±1,96vh liegt" machen. Die beiden Probleme hier sind
E.M.- E.[ h ( θ ) | y]]M.- -- -√→dN.( 0 , v2h)
E.[ h ( θ ) | y]]E.M.± 1,96 vh
- Gilt das CLT?
- Wie können wir schätzen , .v2h
Wir haben einige Ergebnisse darüber, wann die CLT angewendet wird, z. B. diskrete Zustandsketten, reversible Ketten, geometrisch ergodische Ketten. Siehe Robert und Casella (2. Ausgabe), Abschnitt 6.7.2 für einige Ergebnisse in dieser Richtung. Leider hat die überwiegende Mehrheit der Markov-Ketten, die es gibt, keinen Beweis dafür, dass CLT existiert.
Wenn eine CLT vorhanden ist, müssen wir die Varianz in der CLT noch schätzen. Eine Möglichkeit, diese Varianz abzuschätzen, besteht darin, die Kette in Blöcke aufzuteilen , siehe Gong und Flegal und die darin enthaltenen Referenzen. Die Methode wurde im R-Paket mcmcse
mit den Funktionen implementiert mcse
und mcse.q
um die Varianz für Erwartungen und Quantile abzuschätzen.
John Kruschke von Doing Bayesian Data Analysis empfiehlt, MCMC-Ketten für interessierende Parameter so lange laufen zu lassen, bis ihre effektive Probengröße mindestens 10.000 beträgt. Obwohl keine Simulationen präsentiert werden, glaube ich, dass seine Begründung darin besteht, dass ESS> 10.000 numerisch stabile Schätzungen gewährleistet. Ich habe jedoch gesehen, dass Andrew Gelman und andere Stan-Entwickler weniger empfehlen (z. B. 2000 - 3000 sind in Ordnung; leider kein genauer Link, aber siehe Diskussionen in der Stan Google-Benutzergruppe). Darüber hinaus kann es bei komplexen Modellen schwierig sein, Ketten zu laufen, die lang genug für ein ESS> 10.000 sind!
quelle
Dies ist in der Tat einer der großen Nachteile von MCMC-Simulationen, da es keine allgemeine und a priori Schätzung der Anzahl der Proben gibt. Ich denke, eine gute Literatur hier ist "Einige Dinge, die wir gelernt haben (über MCMC)" von Persi Diaconis, die sich mit vielen Feinheiten von MCMC-Simulationen befasst, die möglicherweise darauf hinweisen, dass es keine einfache Antwort auf diese Frage gibt.
Um gute Schätzungen darüber zu erhalten, wie lange die Kette laufen soll, ist im Allgemeinen ein gutes Verständnis der Mischzeit der Markov-Kette erforderlich , die stark von den Eigenschaften des zugrunde liegenden Diagramms abhängt. Es gibt viele "Burn-in-free" -Methoden, um die Mischzeit von oben zu begrenzen. Allen diesen Methoden ist jedoch gemeinsam, dass sie ein tieferes Verständnis der zugrunde liegenden Markov-Kette erfordern und die beteiligten Konstanten normalerweise schwer zu berechnen sind . Siehe zum Beispiel "Leitfähigkeit und schnelles Mischen von Markov-Ketten" von King, "Pfadkopplung: eine Technik zum Nachweis des schnellen Mischens in Markov-Ketten" von Bubley et al. Oder "Nash-Ungleichungen für endliche Markov-Ketten" von Diaconis et al.
quelle