[R] Error messages using LMER

Douglas Bates dmbates at gmail.com
Thu Aug 18 19:52:57 CEST 2005


Thanks for including all of that output.  

I believe that in this version the parameters are the relative
variances.  This would indicate that somehow you are getting fits with
very low residual sums of squares in the weighted least squares
problem.  It could be that you have too many fixed effects terms in
the model and are getting complete separation.

On 8/18/05, Shige Song <shigesong at gmail.com> wrote:
> Here is what happened using R-devel:
> 
> -------------------------------------------------------------
>   EM iterations
>   0 85289.766 ( 5407.13:  0.0815) ( 26134.4: 0.00387)
>   1 84544.322 ( 333.732:   0.137) ( 1462.32: 0.00934)
>   2 84515.108 ( 129.506:  0.0270) ( 446.306: 0.00481)
>   3 84514.519 ( 115.592: 0.00355) ( 328.637: 0.00103)
>   4 84514.505 ( 113.981:0.000505) ( 311.160:0.000165)
>   5 84514.505 ( 113.755:7.45e-005) ( 308.524:2.50e-005)
>   6 84514.505 ( 113.722:1.11e-005) ( 308.128:3.77e-006)
>   7 84514.505 ( 113.717:1.66e-006) ( 308.068:5.66e-007)
>   8 84514.505 ( 113.716:2.50e-007) ( 308.059:8.49e-008)
>   9 84514.505 ( 113.716:3.74e-008) ( 308.058:1.27e-008)
>  10 84514.505 ( 113.716:5.62e-009) ( 308.058:1.91e-009)
>  11 84514.505 ( 113.716:8.43e-010) ( 308.058:2.87e-010)
>  12 84514.505 ( 113.716:1.27e-010) ( 308.058:4.31e-011)
>  13 84514.505 ( 113.716:1.90e-011) ( 308.057:6.47e-012)
>  14 84514.505 ( 113.716:2.86e-012) ( 308.057:9.73e-013)
>  15 84514.505 ( 113.716:4.25e-013) ( 308.057:1.44e-013)
>   EM iterations
>   0 83740.342 ( 113.716: -0.0164) ( 308.057:0.000596)
>   1 83740.273 ( 121.512:-0.00121) ( 298.914:-3.24e-005)
>   2 83740.272 ( 122.131:-0.000111) ( 299.397:-1.24e-005)
>   EM iterations
>   0 84011.546 ( 122.131:-0.00474) ( 299.397:-0.000265)
>   1 84011.539 ( 124.616:-0.000472) ( 303.415:-6.62e-005)
>   2 84011.539 ( 124.869:-5.58e-005) ( 304.433:-1.16e-005)
>   EM iterations
>   0 84018.589 ( 124.869:-0.000139) ( 304.433:-1.81e-005)
>   1 84018.589 ( 124.944:-1.62e-005) ( 304.713:-3.26e-006)
>   2 84018.589 ( 124.953:-2.12e-006) ( 304.764:-5.23e-007)
>   EM iterations
>   0 84018.611 ( 124.953:-2.38e-006) ( 304.764:-5.44e-007)
>   1 84018.611 ( 124.954:-3.25e-007) ( 304.772:-8.50e-008)
>   2 84018.611 ( 124.955:-4.66e-008) ( 304.773:-1.29e-008)
>   EM iterations
>   0 84018.611 ( 124.955:-4.75e-008) ( 304.773:-1.30e-008)
>   1 84018.611 ( 124.955:-6.93e-009) ( 304.774:-1.97e-009)
>   2 84018.611 ( 124.955:-1.03e-009) ( 304.774:-2.96e-010)
> Warning messages:
> 1: optim or nlminb returned message See PORT documentation.  Code (27)
>  in: LMEopt(x = mer, value = cv)
> 2: optim or nlminb returned message See PORT documentation.  Code (27)
>  in: LMEopt(x = mer, value = cv)
> 3: optim or nlminb returned message See PORT documentation.  Code (27)
>  in: LMEopt(x = mer, value = cv)
> 4: optim or nlminb returned message See PORT documentation.  Code (27)
>  in: LMEopt(x = mer, value = cv)
> 5: optim or nlminb returned message See PORT documentation.  Code (27)
>  in: LMEopt(x = mer, value = cv)
> 6: optim or nlminb returned message See PORT documentation.  Code (27)
>  in: LMEopt(x = mer, value = cv)
> 7: nlminb failed to converge in: lmer(.D ~ offset(log(.Y)) + (1 |
> provn) + (1 | bcohort) + agri +
> -------------------------------------------------------------
> 
> Shige
> 
> On 8/19/05, Shige Song <shigesong at gmail.com> wrote:
> > Dear Professor Bates,
> >
> > Here is output R 2.1.1 produced with "control = list(EMverbose = TRUE,
> > msVerbose = TRUE)". I am getting the new devel version and see what
> > will hapen there:
> >
> > --------------------------------------------------------------------------------
> >  EM iterations
> >  0 85289.766 ( 5407.13:  0.0815) ( 26134.4: 0.00387)
> >  1 84544.322 ( 333.732:   0.137) ( 1462.32: 0.00934)
> >  2 84515.108 ( 129.506:  0.0270) ( 446.306: 0.00481)
> >  3 84514.519 ( 115.592: 0.00355) ( 328.637: 0.00103)
> >  4 84514.505 ( 113.981:0.000505) ( 311.160:0.000165)
> >  5 84514.505 ( 113.755:7.45e-005) ( 308.524:2.50e-005)
> >  6 84514.505 ( 113.722:1.11e-005) ( 308.128:3.77e-006)
> >  7 84514.505 ( 113.717:1.66e-006) ( 308.068:5.66e-007)
> >  8 84514.505 ( 113.716:2.50e-007) ( 308.059:8.49e-008)
> >  9 84514.505 ( 113.716:3.74e-008) ( 308.058:1.27e-008)
> >  10 84514.505 ( 113.716:5.62e-009) ( 308.058:1.91e-009)
> >  11 84514.505 ( 113.716:8.43e-010) ( 308.058:2.87e-010)
> >  12 84514.505 ( 113.716:1.27e-010) ( 308.058:4.31e-011)
> >  13 84514.505 ( 113.716:1.90e-011) ( 308.057:6.47e-012)
> >  14 84514.505 ( 113.716:2.86e-012) ( 308.057:9.73e-013)
> >  15 84514.505 ( 113.716:4.25e-013) ( 308.057:1.44e-013)
> > iter    0 value 84514.505044
> > final  value 84514.505044
> > converged
> >  EM iterations
> >  0 83740.342 ( 113.716: -0.0164) ( 308.057:0.000596)
> >  1 83740.273 ( 121.512:-0.00121) ( 298.914:-3.24e-005)
> >  2 83740.272 ( 122.131:-0.000111) ( 299.397:-1.24e-005)
> > iter    0 value 83740.272232
> > final  value 83740.272232
> > converged
> >  EM iterations
> >  0 84011.550 ( 122.204:-0.00461) ( 299.576:-0.000256)
> >  1 84011.543 ( 124.624:-0.000459) ( 303.453:-6.41e-005)
> >  2 84011.543 ( 124.870:-5.42e-005) ( 304.440:-1.13e-005)
> > iter    0 value 84011.543350
> > final  value 84011.543350
> > converged
> >  EM iterations
> >  0 84018.592 ( 124.915:-6.44e-005) ( 304.548:-1.22e-005)
> >  1 84018.592 ( 124.949:-8.29e-006) ( 304.737:-1.99e-006)
> >  2 84018.592 ( 124.954:-1.15e-006) ( 304.768:-3.08e-007)
> > iter    0 value 84018.591624
> > final  value 84018.591624
> > converged
> >  EM iterations
> >  0 84018.612 ( 124.955:3.40e-007) ( 304.770:-1.98e-007)
> >  1 84018.612 ( 124.955:-9.98e-009) ( 304.773:-2.23e-008)
> >  2 84018.612 ( 124.955:-5.47e-009) ( 304.774:-2.86e-009)
> > iter    0 value 84018.611512
> > final  value 84018.611512
> > converged
> > Error in fn(par, ...) : Unable to invert singular factor of downdated X'X
> > In addition: Warning message:
> > Leading minor of size 8 of downdated X'X is indefinite
> > --------------------------------------------------------------------------------
> >
> > Thanks!
> >
> > Shige
> >
> > On 8/18/05, Douglas Bates <dmbates at gmail.com> wrote:
> > > On 8/18/05, Shige Song <shigesong at gmail.com> wrote:
> > > > Dear All,
> > > >
> > > > After playing with lmer for couple of days, I have to say that I am
> > > > amazed! I've been using quite some multilevel/mixed modeling packages,
> > > > lme4 is a strong candidate for the overall winner, especially for
> > > > multilevel generzlized linear models.
> > > >
> > > > Now go back to my two-level poisson model with cross-classified model.
> > > > I've been testing various different model specificatios for the past
> > > > couple of days. Here are the models I tried:
> > > >
> > > > 1) Two level random intercept model with level-1 covariates only
> > > > m1 <- lmer(.D ~ offset(log(.Y)) + (1|provn) +(1|bcohort) + x1 + x2 ,
> > > > data, poisson, method="Laplace")
> > > >
> > > > 2) Two-level random intercept model with both level-1 and level-2
> > > > covariates, but no cross-level interactions:
> > > > m2 <- lmer(.D ~ offset(log(.Y)) + (1|provn) +(1|bcohort) + x1 + x2 +
> > > > z1 + z2, data, poisson, method="Laplace")
> > > >
> > > > 3) Two-level random intercept with cross-level interaction
> > > > m3 <- lmer(.D ~ offset(log(.Y)) + (1|provn) +(1|bcohort) + x1 + x2 +
> > > > z1 + z2 + x1:z1 + x2:z2, data, poisson, method="Laplace")
> > > >
> > > > Both model 1 and 2 run fine. For model 3, I got error message:
> > > > ----------------------------------
> > > > Error in fn(par, ...) : Unable to invert singular factor of downdated X'X
> > > > In addition: Warning messages:
> > > > 1: optim or nlminb returned message ERROR: ABNORMAL_TERMINATION_IN_LNSRCH
> > > >  in: LMEopt(x = mer, value = cv)
> > > > 2: Leading minor of size 1 of downdated X'X is indefinite
> > > > ----------------------------------
> > > >
> > > > What is going on here? Any workarounds? Thanks!
> > >
> > > The first thing I would try is set the EMverbose and msVerbose flags
> > > in the control list to see what occurs within the optimization.  That
> > > is append the argument
> > >
> > > control = list(EMverbose = TRUE, msVerbose = TRUE)
> > >
> > > to your call to lmer().  You may also want to try the call in a
> > > recently compiled R-devel, which will be released as R-2.2.0 in
> > > October.  You will notice that the first warning message reads "optim
> > > or nlminb". In R-2.1.1 lmer uses optim for the optimization.  Starting
> > > with R-2.2.0 the default is to use nlminb.
> > >
> > > Test compilations of R-devel for Windows are available from CRAN.
> > >
> >
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>




More information about the R-help mailing list