2013 年初的 glmer 模型:重新运行时有关收敛的警告消息

2024-05-07

一年多前(2013年2月),我曾使用过lmer使用以下命令运行涉及二项式结果的混合效应模型:

nl3.lmer <- glmer( cul.bi ~ food.act + where + intlan + inter.cul + via.m + via.h + (1|Id), data=drm, family=binomial)

一切都运行良好,没有任何错误或警告消息,我已经展示了我的结果。今天尝试查看它时遇到了两个问题:

1)

summary(nl3.lmer)
Length  Class   Mode 
     1    mer     S4 

...而不是通常的摘要。
是不是因为转了班级mer反对merMod目的?我在描述中读到了一些关于这一变化的内容lme4包更新,但我想仔细检查一下确实是这样......如果是的话,有没有一个简单的方法summary能够阅读mer object?

2)(我更关心这个)

因为我无法使用旧的nl3.lmer不再反对我决定重新运行相同的模型。

mod <- glmer( cul.bi ~ food.act + where + intlan + inter.cul + via.m + via.h + (1|id), data=drm, family=binomial)
Warning message:
In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv,  :
  Model failed to converge with max|grad| = 1.09141 (tol = 0.001)

我有点惊慌。这是否意味着我去年报告的模型实际上并不“好”(抱歉缺乏更好的统计限定符)?简单来说,它实际上意味着什么? 这是summary该模型的:

Generalized linear mixed model fit by maximum likelihood (Laplace Approximation) ['glmerMod']
 Family: binomial ( logit )
Formula: cul.bi ~ food.act + where + intlan + inter.cul + via.m + via.h +      (1 | id)
   Data: drm

     AIC      BIC   logLik deviance df.resid 
   522.0    582.3   -247.0    494.0      537 

Scaled residuals: 
    Min      1Q  Median      3Q     Max 
-3.6076 -0.4533  0.1179  0.4038  4.4283 

Random effects:
 Groups Name        Variance Std.Dev.
 id     (Intercept) 2.626    1.62    
Number of obs: 551, groups: id, 101

Fixed effects:
                  Estimate Std. Error z value Pr(>|z|)    
(Intercept)         1.9401     1.6664   1.164 0.244317    
food.actYes         0.7533     0.3250   2.318 0.020455 *  
whereschool        -1.5370     0.4127  -3.724 0.000196 ***
wherework          -1.2763     0.7957  -1.604 0.108701    
whereother         -1.1453     0.3749  -3.055 0.002249 ** 
intlanher           3.1935     0.8812   3.624 0.000290 ***
intlanbil           0.9765     0.5805   1.682 0.092555 .  
intlanno int       -0.6395     0.5910  -1.082 0.279268    
inter.culher        2.5482     0.5020   5.076 3.86e-07 ***
inter.culher-main   1.2225     0.4588   2.664 0.007713 ** 
inter.culno int     1.2966     0.6076   2.134 0.032845 *  
via.m              -0.8063     0.2441  -3.304 0.000954 ***
via.h               0.4862     0.2003   2.428 0.015183 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Correlation of Fixed Effects:
            (Intr) fd.ctY whrsch whrwrk whrthr intlnh intlnb intlni intr.c intr.- intr.i via.m 
food.actYes -0.091                                                                             
whereschool -0.100  0.143                                                                      
wherework   -0.050  0.103  0.233                                                               
whereother  -0.129  0.179  0.420  0.256                                                        
intlanher   -0.065  0.078  0.019  0.052 -0.037                                                 
intlanbil   -0.053  0.086  0.061 -0.068  0.046  0.072                                          
intlannoint -0.055 -0.012  0.104  0.055  0.137  0.051  0.073                                   
inter.culhr -0.120  0.063 -0.017  0.050  0.022  0.017  0.048  0.024                            
intr.clhr-m -0.118  0.079 -0.155 -0.193 -0.094 -0.011 -0.040 -0.027  0.432                     
intr.clnint -0.049  0.103  0.047  0.036 -0.010  0.048  0.046 -0.745  0.335  0.361              
via.m       -0.596 -0.103  0.083 -0.010  0.084 -0.074  0.037  0.056 -0.034 -0.024 -0.065       
via.h       -0.391  0.119 -0.104  0.006 -0.075  0.126 -0.036 -0.038  0.033  0.031  0.015 -0.469

我很乐意提供一个可重现的示例,但恐怕它并不能真正反映我的问题。 如果它有用:

sessionInfo()
R version 3.1.0 (2014-04-10)
Platform: i686-pc-linux-gnu (32-bit)

locale:
 [1] LC_CTYPE=en_CA.UTF-8       LC_NUMERIC=C               LC_TIME=en_CA.UTF-8       
 [4] LC_COLLATE=en_CA.UTF-8     LC_MONETARY=en_CA.UTF-8    LC_MESSAGES=en_CA.UTF-8   
 [7] LC_PAPER=en_CA.UTF-8       LC_NAME=C                  LC_ADDRESS=C              
[10] LC_TELEPHONE=C             LC_MEASUREMENT=en_CA.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
 [1] parallel  splines   grid      stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
 [1] RColorBrewer_1.0-5 glmmML_1.0         ggplot2_0.9.3.1    pbkrtest_0.3-8     mvoutlier_2.0.4   
 [6] sgeostat_1.0-25    HLMdiag_0.2.5      plyr_1.8.1         prettyR_2.0-7      languageR_1.4.1   
[11] msm_1.3            e1071_1.6-3        nlme_3.1-117       MASS_7.3-33        nnet_7.3-8        
[16] car_2.0-19         effects_3.0-0      colorspace_1.2-4   Hmisc_3.14-4       Formula_1.1-1     
[21] survival_2.37-7    lattice_0.20-29    lmerTest_2.0-6     lme4_1.1-6         Rcpp_0.11.1       
[26] Matrix_1.1-3      

loaded via a namespace (and not attached):
 [1] bitops_1.0-6          caTools_1.17          class_7.3-10          cluster_1.15.2       
 [5] DEoptimR_1.0-1        dichromat_2.0-0       digest_0.6.4          expm_0.99-1.1        
 [9] gdata_2.13.3          gplots_2.13.0         gtable_0.1.2          gtools_3.4.0         
[13] KernSmooth_2.23-12    labeling_0.2          latticeExtra_0.6-24   minqa_1.2.3          
[17] munsell_0.4.2         mvtnorm_0.9-99992     numDeriv_2012.9-1     pcaPP_1.9-49         
[21] pls_2.4-3             proto_0.3-10          RcppEigen_0.3.2.1.2   reshape2_1.2.2       
[25] robCompositions_1.8.0 robustbase_0.91-1     rrcov_1.3-4           scales_0.2.3         
[29] stats4_3.1.0          stringr_0.6.2         tools_3.1.0   

预先感谢您提供的任何帮助。


(根据评论升级)

  • 产生的对象的类别glmer确实发生了变化(从mer to merMod)。您可以安装向后兼容的lme4.0包裹来自http://lme4.r-forge.r-project.org/repos http://lme4.r-forge.r-project.org/repos :
install.packages("lme4.0",repos="http://lme4.r-forge.r-project.org/repos")

and see ?convert_old_lme4用于转换保存的模型拟合的实用函数,以便您可以在lme4.0.

  • 您的收敛警告几乎肯定是误报:请参阅这个邮件列表主题 http://thread.gmane.org/gmane.comp.lang.r.lme4.devel/11893或尾部这个 Github 问题 https://github.com/lme4/lme4/issues/120。您可以从 Github 安装开发版本(通过devtools::install_github("lme4","lme4"))或上面列出的存储库,或者尝试以下操作:
relgrad <- with(mixmod1@optinfo$derivs, solve(Hessian, gradient))
max(abs(relgrad))

看看缩放后的梯度是否很小。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2013 年初的 glmer 模型:重新运行时有关收敛的警告消息 的相关文章

随机推荐