glmmTMB 和 Zeroinf 之间的结果差异(在 pscl 中)

KLe*_*Lee 2 regression r pscl glmmtmb

我将 pscl 中的 glmmTMB 和 Zeroinfl 应用到同一数据集。我获得了条件部分的相同系数,但二进制部分的系数有些不同。您对造成差异的潜在因素有什么想法吗?

\n

谢谢!

\n

这是 Zeroinfl 的结果:

\n
# > summary(pscl.res)\n# \n# Call:\n#   zeroinfl(formula = outside_treatment ~ group + baseline.risk + Age.group + \n#              offset(log(Follow.up)) | group, data = final, dist = "negbin", \n#            link = "logit", trace = TRUE)\n# \n# Pearson residuals:\n#     Min      1Q  Median      3Q     Max \n# -1.0332 -0.7003 -0.4041  0.1675 12.5728 \n\n# Count model coefficients (negbin with log link):\n#                Estimate Std. Error z value Pr(>|z|)    \n# (Intercept)    -2.39168    0.13282 -18.007  < 2e-16 ***\n# group1         -0.22475    0.09833  -2.286   0.0223 *  \n# baseline.risk2 -0.20385    0.12947  -1.575   0.1154    \n# baseline.risk3 -0.67367    0.12422  -5.423 5.85e-08 ***\n# Age.group1     -0.65774    0.11554  -5.693 1.25e-08 ***\n# Log(theta)      0.12366    0.07302   1.693   0.0904 .\n\n# Zero-inflation model coefficients (binomial with logit link):\n#             Estimate Std. Error z value Pr(>|z|)\n# (Intercept)  -16.564    389.991  -0.042    0.966\n# group1        -2.743   1909.909  -0.001    0.999\n# ---\n# Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 \n# \n# Theta = 1.1316 \n# Number of iterations in BFGS optimization: 35 \n# Log-likelihood: -1531 on 8 Df\n
Run Code Online (Sandbox Code Playgroud)\n

这是 glmmTBM 的结果:

\n
# > summary(true.zinb)\n# Family: nbinom2  ( log )\n# Formula:          \n# outside_treatment ~ group + baseline.risk + Age.group + offset(log(Follow.up))\n# Zero inflation:                     ~1 + group\n# Data: final\n# \n# AIC      BIC   logLik deviance df.resid \n# 3078.1   3110.5  -1531.1   3062.1      414 \n# \n# \n# Dispersion parameter for nbinom2 family (): 1.13 \n# \n# Conditional model:\n#                Estimate Std. Error z value Pr(>|z|)    \n# (Intercept)    -2.39168    0.13282 -18.007  < 2e-16 ***\n# group1         -0.22475    0.09833  -2.286   0.0223 *  \n# baseline.risk2 -0.20385    0.12947  -1.575   0.1154    \n# baseline.risk3 -0.67367    0.12422  -5.423 5.85e-08 ***\n# Age.group1     -0.65774    0.11554  -5.693 1.25e-08 ***\n#   ---\n# Signif. codes:  0 \xe2\x80\x98***\xe2\x80\x99 0.001 \xe2\x80\x98**\xe2\x80\x99 0.01 \xe2\x80\x98*\xe2\x80\x99 0.05 \xe2\x80\x98.\xe2\x80\x99 0.1 \xe2\x80\x98 \xe2\x80\x99 1\n# \n# Zero-inflation model:\n#              Estimate Std. Error z value Pr(>|z|)\n# (Intercept)  -20.8282  3289.0961  -0.006    0.995\n# group1         0.4139  4626.1083   0.000    1.000\n
Run Code Online (Sandbox Code Playgroud)\n

Ben*_*ker 5

tl;dr零通胀概率的估计实际上为零。在此限制下,这些差异是由数值近似差异驱动的(并且在预测概率的范围内非常小)。如果您在没有零通货膨胀的情况下重新拟合模型,您可能会得到几乎相同的模型拟合(即非常相似的对数似然和预测值)。

参考条件下的零通胀分量(大概group0)非常小,实际上为零;真实的最大似然估计大概是-Inf,但 -16 或 -20 (取决于包)是似然曲面变得足够平坦,优化器得出结论,它已经找到了最佳值。(对应于 1e-7到 2e-9plogis(-16)的 zi 概率)。plogis(-20)估计值group1与值存在偏差group0,但导致 Logit 尺度估计值为 -18 左右。您还会注意到,这些估计值的标准差都很大,这表明Wald 近似已经失效。

如果你在模型diagnose()上运行glmmTMB,它会标记这些大的影响并给出一个简短的解释,类似于

zi(零通货膨胀的对数几率)、离散度或随机效应(对数标准差)中的大负系数表明存在不必要的成分(在约束范围内收敛到零)...