[R-sig-ME] Convergence Issue
Alex Waldman
@|ex@w@|dm@n @end|ng |rom @jc@ox@@c@uk
Thu Sep 2 18:54:53 CEST 2021
Thanks! I plotted the fixed-effect estimates and CIs and they all look quite similar (attached). Since I'm interested in extracting the marginal means with emmeans and performing contrasts, I guess I shouldn't worry?
Warm Regards,
Alex
On 9/2/21, 5:04 PM, "R-sig-mixed-models on behalf of Ben Bolker" <r-sig-mixed-models-bounces using r-project.org on behalf of bbolker using gmail.com> wrote:
Without digging in deeply: the results across optimizers all look
very similar to each other, so unless you need extremely precise answers
I would say everything's OK.
You could dig in further to look at the fixed-effect estimates (if
that's what you're interested in) in conjunction with the approximate
(Wald) confidence intervals, e.g.:
library(lme4)
library(broom.mixed)
library(purrr)
library(ggplot2)
gm1 <- glmer(cbind(incidence, size - incidence) ~ period + (1 | herd),
data = cbpp, family = binomial)
aa <- allFit(gm1)
tt <- purrr::map_dfr(aa, tidy, effect = "fixed", .id="optimizer")
ggplot(tt, aes(x=term, y=estimate, ymin=estimate-2*std.error,
ymax = estimate+2*std.error, colour=optimizer)) +
geom_pointrange(position=position_dodge(width=0.25))
(with apologies to people who are allergic to the tidyverse)
On 9/2/21 11:32 AM, Alex Waldman wrote:
> Thank you! This was helpful.
>
> When I tried double-checking the Hessian calculation, I got the following error:
>
> Error in chol.default(hess) : the leading minor of order 6 is not positive definite
>
> Could this provide any indication as to why the model isn't converging?
>
> I also tested all the optimizers and got the following result but was unsure how to interpret:
>
> $which.OK
> bobyqa Nelder_Mead
> TRUE TRUE
> nlminbwrap nmkbw
> TRUE TRUE
> optimx.L-BFGS-B nloptwrap.NLOPT_LN_NELDERMEAD
> TRUE TRUE
> nloptwrap.NLOPT_LN_BOBYQA
> TRUE
>
> $msgs
> $msgs$bobyqa
> NULL
>
> $msgs$Nelder_Mead
> [1] "Model failed to converge with max|grad| = 0.0555727 (tol = 0.002, component 1)"
>
> $msgs$nlminbwrap
> NULL
>
> $msgs$nmkbw
> [1] "Model failed to converge with max|grad| = 0.0083782 (tol = 0.002, component 1)"
>
> $msgs$`optimx.L-BFGS-B`
> NULL
>
> $msgs$nloptwrap.NLOPT_LN_NELDERMEAD
> NULL
>
> $msgs$nloptwrap.NLOPT_LN_BOBYQA
> [1] "Model failed to converge with max|grad| = 0.0122376 (tol = 0.002, component 1)"
>
>
> $fixef
> (Intercept) Level1 Level2 LesionType1 LesionType2
> bobyqa -1.607709 -0.5906779 -0.7133361 1.633654 1.169556
> Nelder_Mead -1.609343 -0.5990970 -0.7248756 1.637308 1.166614
> nlminbwrap -1.607742 -0.5906431 -0.7133012 1.633691 1.169589
> nmkbw -1.612150 -0.5911478 -0.7154765 1.638517 1.173022
> optimx.L-BFGS-B -1.612203 -0.5921513 -0.7152118 1.638355 1.173146
> nloptwrap.NLOPT_LN_NELDERMEAD -1.612326 -0.5921231 -0.7148693 1.638615 1.173143
> nloptwrap.NLOPT_LN_BOBYQA -1.608554 -0.5974722 -0.7194175 1.634395 1.169306
> Level1:LesionType1 Level2:LesionType1 Level1:LesionType2
> bobyqa -0.3646982 -0.2118206 0.3897427
> Nelder_Mead -0.3570757 -0.2053771 0.4027594
> nlminbwrap -0.3647408 -0.2118542 0.3897106
> nmkbw -0.3675755 -0.2125293 0.3896785
> optimx.L-BFGS-B -0.3660791 -0.2125631 0.3904246
> nloptwrap.NLOPT_LN_NELDERMEAD -0.3663036 -0.2131734 0.3905315
> nloptwrap.NLOPT_LN_BOBYQA -0.3597335 -0.2075374 0.3969647
> Level2:LesionType2
> bobyqa 0.1426930
> Nelder_Mead 0.1586086
> nlminbwrap 0.1426555
> nmkbw 0.1436730
> optimx.L-BFGS-B 0.1426133
> nloptwrap.NLOPT_LN_NELDERMEAD 0.1423522
> nloptwrap.NLOPT_LN_BOBYQA 0.1474815
>
> $llik
> bobyqa Nelder_Mead
> -530.1908 -530.1818
> nlminbwrap nmkbw
> -530.1908 -530.1810
> optimx.L-BFGS-B nloptwrap.NLOPT_LN_NELDERMEAD
> -530.1810 -530.1810
> nloptwrap.NLOPT_LN_BOBYQA
> -530.1812
>
> $sdcor
> ID.(Intercept)
> bobyqa 1.227682
> Nelder_Mead 1.232220
> nlminbwrap 1.227685
> nmkbw 1.231678
> optimx.L-BFGS-B 1.231639
> nloptwrap.NLOPT_LN_NELDERMEAD 1.231837
> nloptwrap.NLOPT_LN_BOBYQA 1.231765
>
> $theta
> ID.(Intercept)
> bobyqa 1.227682
> Nelder_Mead 1.232220
> nlminbwrap 1.227685
> nmkbw 1.231678
> optimx.L-BFGS-B 1.231639
> nloptwrap.NLOPT_LN_NELDERMEAD 1.231837
> nloptwrap.NLOPT_LN_BOBYQA 1.231765
>
> $times
> user.self sys.self elapsed user.child sys.child
> bobyqa 0.633 0.003 0.638 0 0
> Nelder_Mead 2.401 0.003 2.405 0 0
> nlminbwrap 0.581 0.001 0.585 0 0
> nmkbw 0.885 0.004 0.894 0 0
> optimx.L-BFGS-B 1.390 0.005 1.407 0 0
> nloptwrap.NLOPT_LN_NELDERMEAD 0.976 0.003 0.984 0 0
> nloptwrap.NLOPT_LN_BOBYQA 0.996 0.002 1.004 0 0
>
> $feval
> bobyqa Nelder_Mead
> 572 2605
> nlminbwrap nmkbw
> NA 728
> optimx.L-BFGS-B nloptwrap.NLOPT_LN_NELDERMEAD
> 44 904
> nloptwrap.NLOPT_LN_BOBYQA
> 972
>
> Warm Regards,
> Alex
>
> On 9/2/21, 4:04 PM, "Phillip Alday" <me using phillipalday.com> wrote:
>
> I don't have time to give more thorough help at the moment, but look at
> the help page on converge, accessible via ?convergence in R or mirrored
> online, e.g. https://rdrr.io/cran/lme4/man/convergence.html
>
> Hope that helps
>
> Phillip
>
> On 02/09/2021 09:58, Alex Waldman wrote:
> > Dear All,
> >
> > I have a dataset with 119 individuals with information on the presence of lesions of various types (1,2,3) at various levels (1,2,3) and want to understand the effect of type and location on lesion presence. Therefore, I ran the following:
> >
> > glmer.model<-glmer(LesionPresence ~ Location*Type + (1 | ID), data=lesion_proportion_staged_level, family="binomial")
> >
> > Unfortunately, I ran into the following warning:
> >
> > In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
> > Model failed to converge with max|grad| = 0.048092 (tol = 0.002, component 1)
> >
> > I'm quite new to running mixed models and even with some googling am still unsure why I am running into this issue? Any insight would be much appreciated. I am attaching the model output below and the input data in case that is helpful and do let me know if you need any additional information:
> > Generalized linear mixed model fit by maximum likelihood (Laplace Approximation) [
> > glmerMod]
> > Family: binomial ( logit )
> > Formula: LesionPresence ~ Level * LesionType + (1 | ID)
> > Data: lesion_proportion_staged_level
> >
> > AIC BIC logLik deviance df.resid
> > 1080.4 1129.2 -530.2 1060.4 962
> >
> > Scaled residuals:
> > Min 1Q Median 3Q Max
> > -1.6875 -0.5649 -0.3291 0.7170 4.2816
> >
> > Random effects:
> > Groups Name Variance Std.Dev.
> > ID (Intercept) 1.519 1.232
> > Number of obs: 972, groups: ID, 119
> >
> > Fixed effects:
> > Estimate Std. Error z value Pr(>|z|)
> > (Intercept) -1.6081 0.2966 -5.423 5.87e-08 ***
> > Level1 -0.6006 0.3900 -1.540 0.123600
> > Level2 -0.7270 0.4094 -1.776 0.075782 .
> > LesionType1 1.6362 0.3538 4.624 3.76e-06 ***
> > LesionType2 1.1659 0.3524 3.309 0.000938 ***
> > Level1:LesionType1 -0.3568 0.5022 -0.711 0.477379
> > Level2:LesionType1 -0.2015 0.5211 -0.387 0.698986
> > Level1:LesionType2 0.4030 0.5004 0.805 0.420607
> > Level2:LesionType2 0.1608 0.5229 0.308 0.758387
> > ---
> > Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
> >
> > Correlation of Fixed Effects:
> > (Intr) Level1 Level2 LsnTy1 LsnTy2 L1:LT1 L2:LT1 L1:LT2
> > Level1 -0.603
> > Level2 -0.574 0.447
> > LesionType1 -0.703 0.498 0.475
> > LesionType2 -0.694 0.503 0.479 0.582
> > Lvl1:LsnTy1 0.480 -0.766 -0.339 -0.691 -0.400
> > Lvl2:LsnTy1 0.461 -0.344 -0.775 -0.665 -0.385 0.466
> > Lvl1:LsnTy2 0.468 -0.772 -0.344 -0.392 -0.692 0.598 0.268
> > Lvl2:LsnTy2 0.453 -0.344 -0.773 -0.379 -0.665 0.267 0.607 0.468
> > optimizer (Nelder_Mead) convergence code: 0 (OK)
> > Model failed to converge with max|grad| = 0.048092 (tol = 0.002, component 1)
> > _______________________________________________
> > R-sig-mixed-models using r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models
>
> _______________________________________________
> R-sig-mixed-models using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models
>
--
Dr. Benjamin Bolker
Professor, Mathematics & Statistics and Biology, McMaster University
Director, School of Computational Science and Engineering
Graduate chair, Mathematics & Statistics
_______________________________________________
R-sig-mixed-models using r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models
More information about the R-sig-mixed-models
mailing list