Estoy escribiendo un sencillo algoritmo MCMC Metropolis-Hastings. Cada vez que un movimiento se aceptado El punto se añade a una lista de puntos aceptados. Me pregunto qué debo hacer exactamente cuando un movimiento propuesto ha sido rechazado .
-
En caso de que el último punto aceptado se añada a la lista de nuevo , lo que hace que la lista tenga una entrada más,
o
-
¿debo no añadir nada a la lista, continuando hasta que finalmente se acepte algún punto nuevo?
0 votos
Soy consciente de esta cuestión: stats.stackexchange.com/questions/30729/ Cito: Un ejemplo de este tipo de error sería no obtener un valor cuando Metropolis-Hastings rechaza un movimiento propuesto. ¿Significa eso que hay que añadir el último punto una vez más? Gracias.
0 votos
Espera a que aceptes. Por eso es fundamental tener una buena densidad de propuestas.
0 votos
Muchas gracias @fgnu por el realmente ¡respuesta rápida! También tiene mucho más sentido así; con una mala distribución de la propuesta, de lo contrario obtendría una larga lista de casi siempre el mismo punto. Gracias.
2 votos
No estoy seguro de que pueda esperar hasta que acepte un valor. En el algoritmo general, cuando rechazas una jugada, tienes que añadir a la lista el último valor aceptado. Si propones una jugada, la rechazas y luego propones una nueva, en la relación MH tienes que tener en cuenta que rechazas una jugada.
0 votos
Ah, ahora esto podría convertirse en una discusión interesante. ¿Así que dices que tengo que ajustar la proporción de Metrópolis cada vez que rechazo un movimiento?
1 votos
@niandra82 Hmm, de alguna manera pensé que la pregunta era sobre la RA simple. En RWMH, lo que dices es cierto. Michael, puedes ver el primer ejemplo en el Libro de Gamerman y Lopes, capítulo 6 para el código exacto.
0 votos
Mira aquí: eco.uninsubria.it/dipeco/Quaderni/files/QF2000_6_.pdf
0 votos
@fgnu: Sugeriría evitar la frase "espera hasta que aceptes" ya que puede interpretarse en ambos sentidos...
2 votos
La idea en MH es que o te mueves o no te mueves. Si aceptas la nueva propuesta, $x_{t+1}$ toma ese valor (se "mueve" al nuevo valor); en caso contrario $x_{t+1}=x_t$ (usted "no se mueve" al valor propuesto cuando no acepta). Si sólo enumeras los valores que aceptas sin llevar la cuenta de cuántas propuestas se retienen, tendrás las probabilidades equivocadas.