bayesglm (arm) 与 MCMCpack

机器算法验证 贝叶斯 广义线性模型
2022-03-21 04:11:33

(在 arm R 包中)和MCMCpackbayesglm()包中的各种函数都旨在对广义线性模型进行贝叶斯估计,但我不确定它们实际上是在计算相同的东西。MCMCpack 函数使用马尔可夫链蒙特卡罗从模型参数的联合后验中获取(依赖)样本。bayesglm(),另一方面,产生。我不确定是什么。

它看起来像bayesglm()产生一个点估计,这将使它成为 MAP(最大后验)估计而不是完整的贝叶斯估计,但是有一个sim()看起来可以用来获得后验的函数。

有人可以解释两者在预期用途上的区别吗?可以bayesglm() + sim()产生真正的后绘制,还是某种近似?

1个回答

要查看完整的源代码,您需要arm从 CRAN 下载包源(它是一个 tarball)。快速浏览该sim函数让我认为这arm是一种近似的贝叶斯方法,因为它似乎假设最大似然估计的多元正态性。在具有非常非二次对数似然的模型中,例如二元逻辑模型,这可能不够准确。我想从其他人那里得到一些关于这个的评论。我已经MCMCpack成功使用了;它为许多模型提供了一个精确的贝叶斯解决方案,给定足够的后验图和 MCMC 的收敛性。