[英]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)
我按照本·博尔克先生在先前的回答中的指示进行操作
将优化器更改为optimx
软件包中包含的优化器后,警告消息就会停止出现。
M4 <- glmer(CORT_pgmm~AO_Ause+(1|St),data=belcher,family=Gamma(link="log"), control=glmerControl(optimizer="optimx",optCtrl=list(method="nlminb")))
不过,我不确定如何确定这是否是正确的处理方式。 我怎么能确定呢?
如果我写的不正确,我深表歉意,因为这是我的第一篇文章。 预先感谢您的回答。
您永远不能确定(这是对一个案例的数值优化,在一般情况下我们无法证明很多),但是作为一个一般性问题,我要说的是,如果您成功达到了大致相同的推定“最优”使用多个以上的优化器进行参数估算,您无需担心收敛失败。 “大约”有多接近取决于个人品味和科学目标。 对于我的典型用例,使用不同的优化器在彼此之间(例如)1%或保守地在0.1%之内估计参数将被视为“大约相等”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.