Was sind gute Anhaltspunkte für die minimale Anzahl effektiver Proben , die angestrebt werden sollten, wenn MCMC-Proben abgerufen werden, um Rückschlüsse auf einen bestimmten Parameter zu ziehen?
Und ändert sich dieser Ratschlag, wenn das Modell mehr oder weniger komplex wird?
bayesian
sample-size
mcmc
posterior
Matt Albrecht
quelle
quelle
Antworten:
Die Frage, die Sie stellen, unterscheidet sich von der "Konvergenzdiagnose". Nehmen wir an, Sie haben alle Konvergenzdiagnosen durchgeführt (wählen Sie Ihre Favoriten aus) und können jetzt mit der Probenahme von der posterioren Seite beginnen.
Bezüglich der effektiven Stichprobengröße (ESS) gibt es zwei Möglichkeiten. Sie können zwischen einem univariaten und einem multivariaten ESS wählen. Ein univariates ESS liefert eine effektive Stichprobengröße für jeden Parameter separat, und konservative Methoden bestimmen, dass Sie die kleinste Schätzung wählen. Diese Methode ignoriert alle Kreuzkorrelationen zwischen Komponenten. Dies ist wahrscheinlich, was die meisten Leute für eine Weile benutzt haben
Kürzlich wurde eine multivariate Definition von ESS eingeführt. Das multivariate ESS gibt eine Zahl für den effektiven Stichprobenumfang für die Mengen zurück, die Sie schätzen möchten. Dabei werden alle Kreuzkorrelationen berücksichtigt. Ich persönlich bevorzuge bei weitem multivariates ESS. Angenommen, Sie interessieren sich für den Vektor der Mittelwerte der posterioren Verteilung. Die mESS ist wie folgt definiert: mESS = n ( | Λ |p
Hier
mESS kann geschätzt werden, indem die Stichproben-Kovarianzmatrix zur Schätzung von und die Batch-Mittel-Kovarianzmatrix zur Schätzung von Σ verwendet werden . Dies wurde in der Funktion im R-Paket mcmcse codiert .Λ Σ
multiESS
Diese neue Veröffentlichung liefert eine theoretisch gültige Untergrenze der Anzahl der erforderlichen effektiven Proben. Vor der Simulation müssen Sie sich entscheiden
Mit diesen drei Mengen wissen Sie, wie viele effektive Proben Sie benötigen. Das Papier fordert Sie auf, die Simulation beim ersten Mal zu stoppen.
wobei die Gammafunktion ist. Diese Untergrenze kann mithilfe des R-Pakets mcmcse berechnet werden .Γ ( ⋅ )
minESS
Nehmen wir also an, Sie haben Parameter im posterioren Bereich und möchten 95 % iges Vertrauen in Ihre Schätzung und möchten, dass der Monte-Carlo-Fehler 5% ( ϵ = 0,05 ) des posterioren Fehlers beträgt , den Sie benötigenp = 20 95 % ϵ = 0,05
Dies gilt für alle Probleme (unter normalen Bedingungen). Die Art und Weise, wie sich diese Methode von Problem zu Problem anpasst, besteht darin, dass das langsame Mischen von Markov-Ketten länger dauert, um diese Untergrenze zu erreichen, da mESS kleiner sein wird. Jetzt können Sie mehrmals überprüfen,
multiESS
ob Ihre Markov-Kette diese Grenze erreicht hat. Wenn nicht, holen Sie sich mehr Proben.quelle
multiESS
für andere Sprachen wie MATLAB codiert wurde? (Oder wäre es schwierig, wieder zu implementieren?)Die Konvergenz hängt von mehreren Dingen ab: der Anzahl der Parameter, dem Modell selbst, dem Abtastalgorithmus, den Daten ...
Ich würde vorschlagen, generelle Regeln zu vermeiden und einige Konvergenzdiagnosewerkzeuge zu verwenden , um in jedem spezifischen Beispiel das richtige Einbrennen und die geringere Anzahl von Iterationen zu ermitteln. Siehe auch
http://www.johnmyleswhite.com/notebook/2010/08/29/mcmc-diagnostics-in-r-with-the-coda-package/
,http://users.stat.umn.edu/~geyer/mcmc/diag.html
.quelle