1

我目前正在 JAGS 中安装一组 16 个模型。我在 jags 中有一个函数,它计算结果变量的每个值的概率的对数,另一个函数采用 -2 * 这些对数概率的总和。即,我有一个自定义公式来计算每个模型的偏差。我想检查我对偏差的定义是否与 JAGS 使用的相同。

在运行 5000 次老化和 5000 次迭代后,我得到了以下结果: 在此处输入图像描述

基本上,对于某些模型,偏差很接近但并不完全相同,而对于其他模型(例如,7、13、16)则有很大不同。

为什么使用我的自定义公式计算的偏差与使用基于 DIC 的自动方法获得的偏差不同?

4

1 回答 1

0

经过一番折腾,我认为情况如下。

首先,DIC 偏差是使用一组离散样本对主要参数估计值获得的。因此,由于 MCMC 估计的固有随机方面,估计在运行之间会有所不同。

假设链长(几千)并且老化足够,那么如果模型收敛且相当有效,则主要样本和 DIC 样本之间的差异应该很小。因此,巨大的差异很可能与模型收敛问题同时发生。

这一切都假设原始偏差计算已正确编程。

于 2015-03-21T02:57:13.833 回答