bayesglm (brazo) versus MCMCpack

10

Tanto bayesglm()(en el paquete arm R) como varias funciones en el paquete MCMCpack están destinadas a hacer una estimación bayesiana de modelos lineales generalizados, pero no estoy seguro de que realmente estén calculando lo mismo. Las funciones MCMCpack utilizan la cadena de Markov Monte Carlo para obtener una muestra (dependiente) de la articulación posterior para los parámetros del modelo. bayesglm(), por otro lado, produce. No estoy seguro de qué.

Parece que bayesglm()produce una estimación puntual, lo que lo convertiría en una estimación MAP (máximo a posteriori) en lugar de una estimación bayesiana completa, pero hay una sim()función que parece que puede usarse para obtener dibujos posteriores.

¿Alguien puede explicar la diferencia en el uso previsto para los dos? ¿Puede bayesglm() + sim()producir verdaderos dibujos posteriores, o es algún tipo de aproximación?

Kevin S. Van Horn
fuente
No sé la respuesta, pero si te ayuda, puedes ver la fuente de esas funciones simplemente escribiendo sus nombres:> bayesglm> sim O puedes preguntar directamente a los mantenedores: cran.r-project.org/web/packages/arm/ arm.pdf cran.r-project.org/web/packages/MCMCpack/MCMCpack.pdf
paglos 19/11
También puede usar 'rjags' y escribir el modelo usted mismo si desea un control completo.
conjeturas

Respuestas:

2

Para ver el código fuente completo, debe descargar la armfuente del paquete de CRAN (es un tarball). Una mirada rápida a la simfunción me hace pensar que armes un método aproximado de Bayes, ya que parece asumir la normalidad multivariada de las estimaciones de máxima verosimilitud. En modelos con una probabilidad de registro muy no cuadrática, como el modelo logístico binario, es poco probable que sea lo suficientemente preciso. Me gustaría recibir algunos comentarios de otros sobre esto. Lo he usado MCMCpackcon éxito; Proporciona una solución bayesiana exacta para muchos modelos, dados suficientes dibujos posteriores y la convergencia de MCMC.

Frank Harrell
fuente