Es gibt mehrere Versionen adaptiver Metropolis Hastings-Algorithmen. Eine ist in der Funktion Metro_Hastings
des R
Pakets implementiert MHadaptive
, siehe hier . Die dort aufgeführte Referenz, Spiegelhalter et al. (2002) enthält meines Erachtens leider keine Beschreibung eines adaptiven Algorithmus. Der Metro_Hastings
Algorithmus funktioniert jedoch sehr gut bei der Abtastung aus der posterioren Verteilung des Modells, das ich betrachte, weshalb ich seine Details verstehen möchte.
Ich habe den Algorithmus ein wenig rückentwickelt. Kennt jemand diesen adaptiven MH-Algorithmus? Das macht es:
Sei die Zieldichte. Initialisiere .
Für Iterationen do:
- Schlagen Sie .
Wenn , wobei ein Vektor ist, der so definiert ist, dass jedes Element von (Standard ) ist, gibt es einen Abstand von Iterationen zwischen den Elementen (Standard ) und kein Element (Standard) ), mache:
- Wählen Sie (Standard ).
- Update: wobei der Maximum-Likelihood-Schätzer der Varianz-Kovarianz-Matrix von Annahme einer multivariaten Normalität ist.
Die Schritte 1 und 2 sind Standard-MH. Die Schritte 3 und 4 sind die Anpassungen, die in den Schritten und die vergangenen Iterationen zum Aktualisieren von auf die Kovarianzmatrix der vergangenen Iterationen verwenden.
quelle
Antworten:
Ihre Beschreibung klingt nach dem adaptiven Algorithmus von Haario et al. (1999) . Die Idee dort ist in der Tat, die Kovarianzmatrix der Angebotsverteilung unter Verwendung einer festen Anzahl aktueller Stichproben zu aktualisieren.
Es ist zu beachten, dass der in Haario et al. (1999) beschriebene Algorithmus eine gute Leistung erbringt, jedoch NICHT ergodisch ist. Haario et al. (2001) beschrieben einen verbesserten Algorithmus, der ergodisch ist. Die Idee dort ist, die Kovarianzmatrix der Angebotsverteilung unter Verwendung aller früheren Stichproben zu aktualisieren.
quelle