[R-sig-ME] Convergence warning message

Ben Bolker bbolker at gmail.com
Wed Mar 16 20:35:52 CET 2016


   Good question.

   I'm afraid that for data sets ~ 100,000 observations or bigger, our 
convergence calculations aren't terribly reliable -- see e.g. the third 
set of figures under https://rpubs.com/bbolker/lme4_convergence ... I 
would follow Jackie's advice ...

On 16-03-16 02:24 PM, Jackie Wood wrote:
> Hi Chris,
>
> Try checking ?convergence....coincidentally, I was having a similar problem
> just yesterday. There are some step by step
> instructions for trouble shooting/double checking convergence warnings. For
> example, a bit of example code is provided to run your model using a number
> of different optimizers. If all optimizers yield similar values, it's
> possible that you could be getting false convergence warnings. I'm not sure
> if that's the case with your data, but it might be a place to start!
>
> Jacquelyn
>
> On Wed, Mar 16, 2016 at 1:56 PM, Christopher David Desjardins <
> cddesjardins at gmail.com> wrote:
>
>> I am trying to fit a mixed effects binomial model.
>>
>> The data consists of
>> - A dependent variable consisting of Bernoulli trials (outcome)
>> - A time variable (time), which has been mean centered
>> - An id variable (id)
>> - A categorical covariate (cat_cov)
>> - A blocking variable (block) which id is nested in. I realize in the model
>> below that it should be (1 | id/block) but I am just trying to troubleshoot
>> my problem at the moment.
>>
>> When I run the following:
>>
>> example_data <- read.csv("https://cddesja.github.io/example_data.csv",
>> header  = T)
>> example_data$cat_cov <- as.factor(example_data$cat_cov)
>> example_data$id <- as.factor(example_data$id)
>> example_data$block <- as.factor(example_data$block)
>> main_effects <- glmer(outcome ~ 1 + cat_cov + time + I(time^2) + (1 | id),
>> data = example_data, family = "binomial")
>>
>> That last line of code gives a warning message:
>>
>>> main_effects <- glmer(outcome ~ 1 + cat_cov + time + I(time^2) + (1 |
>> id), data = example_data, family = "binomial")
>> Warning messages:
>> 1: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv,  :
>>    Model failed to converge with max|grad| = 4.36001 (tol = 0.001, component
>> 1)
>> 2: In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv,  :
>>    Model is nearly unidentifiable: very large eigenvalue
>>   - Rescale variables?
>>
>> I am not exactly sure how to proceed. I know the issue is with cat_cov,
>> though it's unclear to me why. If I swap out in a different categorical
>> covariate in the model, not included in that data set, I don't get this
>> message. I am not running into complete separation with cat_cov.  So, I'm a
>> little perplexed.
>>
>> Any advice on what I should do or something I could look at it would be
>> very helpful.
>>
>> Thanks,
>> Chris
>> --
>> https://cddesja.github.io/
>>
>>          [[alternative HTML version deleted]]
>>
>> _______________________________________________
>> R-sig-mixed-models at 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