lme4 上的收敛错误

Convergence error on lme4

我尝试指定的模型是:

M4 <- glmer(CORT_pgmm~AO_Ause+(1|St),data=belcher,family=Gamma(link="log"), control=glmerControl(optimizer="bobyqa"))

在执行此操作时,我使用 glmer 并使用“bobyqa""Nelder_Mead" 作为优化器收到以下警告消息。

Warning message:
In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv,  :
  Model failed to converge with max|grad| = 0.0146734 (tol = 0.001, component 1)

我遵循了 Ben Bolker 先生在之前 answer

中给出的指示

一旦我将优化器更改为 optimx 包中包含的优化器,警告消息就会停止出现。

 M4 <- glmer(CORT_pgmm~AO_Ause+(1|St),data=belcher,family=Gamma(link="log"), control=glmerControl(optimizer="optimx",optCtrl=list(method="nlminb")))

不过,我不确定如何知道这是否是处理我的案例的正确方法。我怎么能确定呢?

如果我没有正确写这篇文章,我深表歉意,因为这是我的第一个 post。预先感谢您的回答。

你永远无法确定(这是一个案例的数值优化,我们无法在一般情况下证明很多),但一般来说,如果你有 使用多个不同的优化器 成功达到大致相同的推定"optimal" 参数估计,您可以不再担心收敛失败。 "approximately" 有多接近取决于个人品味和科学目标。对于我的典型用例,使用不同的优化器估计彼此在(比如)1% 或保守地 0.1% 以内的参数将算作 "approximately equal".