bayesglm (arm) versus MCMCpack

10

Tanto bayesglm()(no pacote arm R) quanto várias funções no pacote MCMCpack têm como objetivo fazer uma estimativa bayesiana de modelos lineares generalizados, mas não tenho certeza de que eles estejam computando a mesma coisa. As funções do MCMCpack usam a cadeia de Markov Monte Carlo para obter uma amostra (dependente) da articulação posterior para os parâmetros do modelo. bayesglm(), por outro lado, produz. Eu não tenho certeza do que.

Parece que bayesglm()produz uma estimativa pontual, o que tornaria a estimativa MAP (máximo a posteriori) em vez de uma estimativa bayesiana completa, mas há uma sim()função que parece que pode ser usada para obter empates posteriores.

Alguém pode explicar a diferença no uso pretendido para os dois? Pode bayesglm() + sim()produzir verdadeiros desenhos posteriores, ou é algum tipo de aproximação?

Kevin S. Van Horn
fonte
Não sei a resposta, mas se ajudar, você pode ver a fonte dessas funções apenas digitando seus nomes:> bayesglm> sim Ou pode perguntar diretamente aos mantenedores: cran.r-project.org/web/packages/arm/ arm.pdf cran.r-project.org/web/packages/MCMCpack/MCMCpack.pdf
paglos
Você também pode usar 'rjags' e escrever o modelo você mesmo se quiser controle completo.
conjeturas

Respostas:

2

Para ver o código fonte completo, você precisa fazer o download do armcódigo-fonte do pacote CRAN (é um arquivo tar). Uma rápida olhada na simfunção me faz pensar que armé um método aproximado de Bayes, pois parece assumir a normalidade multivariada das estimativas de probabilidade máxima. Em modelos com uma probabilidade logarítmica muito não quadrática, como o modelo logístico binário, é improvável que seja preciso o suficiente. Eu gostaria de receber alguns comentários de outras pessoas sobre isso. Eu tenho usado MCMCpackcom sucesso; fornece uma solução bayesiana exata para muitos modelos, dados os empates posteriores suficientes e a convergência do MCMC.

Frank Harrell
fonte