lme4:处理lmer“收敛代码:0”

时间:2020-01-31 11:04:40

标签: r optimization lme4 convergence

我目前正在计算32个国家(国家/地区变量“ CNTRY3”)的多层次分析结果。因变量是支付环境保护“ WTP”的意愿(1-5级,居中)。我在多级分析的第三步(随机拦截随机斜率)中包括了四个随机斜率(我想根据自己的理论来改变这些斜率):

  • RINC_ALL_z->人均收入(z标准化)
  • social_trust(1-5级,居中)->信任他人
  • political_trust(1-5级,居中)->对政治的信任
  • EC_cen(等级1-5,居中)->环境意识

modell.3a <- lmer(WTP ~ RINC_ALL_z + social_trust_cen + political_trust_cen + 
                   Men + lowest_degree + middle_degree + requirement_university +
                   uncompleted_university + university_degree + AGE_cen + urban + 
                   EC_cen + (RINC_ALL_z + social_trust_cen + political_trust_cen + 
                               EC_cen|CNTRY3), data=ISSP2010_1)

然后出现错误消息:

收敛代码:0模型无法与max | grad |收敛。 = 0.00527884(tol = 0.002,第1部分)

现在,我能够进行研究,例如,如果使用优化器“ BOBYQA”计算模型,则可以绕过这些“收敛警告”。确实,如果我这样计算模型,那么就不会再出现收敛警告:

modell.3b <- lmer(WTP ~ RINC_ALL_z + social_trust_cen + political_trust_cen + 
               Men + lowest_degree + middle_degree + requirement_university +
               uncompleted_university + university_degree + AGE_cen + urban + 
               EC_cen + (RINC_ALL_z + social_trust_cen + political_trust_cen + 
                           EC_cen|CNTRY3), data=ISSP2010_1, control = lmerControl(optimizer = "bobyqa", 
                                                                                  optCtrl=list(maxfun=1e5)))

因此,我在这个非常有趣的article中读到,如果您使用一个优化程序,则应将其与所有其他可用的优化程序进行比较,以了解某些优化程序是否会影响回归参数。我说了这么多话(对环境的了解不一),我​​复制了本文的图表,但不幸的是,优化程序不在本文中的一列(对数似然/ t值)中。我在这里附上了两张图片。对于对数似然比较和t值比较,我的解释是,大多数优化程序(5)在同一列中(包括我使用的“ BOBYQA”),只有2个优化程序与大多数优化程序不同,所以我用过的优化程序应该不会影响参数,对吧?

Loglikelihood comparison

T-Value Comparison

第一个问题是这种优化器的作用(您刚刚读到应该使用优化器来避免收敛问题)? 我的第二个问题是,您是否同意这两个图的解释?

我对答案很满意,我已经思考了好几天...:-(

许多问候 琼恩

0 个答案:

没有答案