0
$\begingroup$

I am using glmmTMB in r to model count data. I use poison and negative binomial error distributions. If I add one more predictor to my models I end up having convergence problems. I would like to assess if that is due to overfitting. Does anybody know how could I measure it?

Thank you in advance

UPDATE: Below the outputs from my models. The one with convergence problem (m2) and the one without them (m3). The dataset: We collected beechnuts in 30 1x1m-plots distributed evenly across 3 sampling sites from 2007 to 2017. The number of days elapsed since the plots were cleaned until the beechnuts were counted differs from one year to another and its included as an offset in the model.

> summary(m2)
Family: nbinom2  ( log )
Formula:          NseedsSUM ~ 1 + B_pos.STD + site * year + (1 | plot)
Data: seeds_
 Offset: log(Ndays)

     AIC      BIC   logLik deviance df.resid 
  3066.6   3202.6  -1497.3   2994.6      287 

Random effects:

Conditional model:
 Groups Name        Variance Std.Dev.
 plot   (Intercept) 0.162    0.4025  
Number of obs: 323, groups:  plot, 30

Overdispersion parameter for nbinom2 family (): 3.39 

Conditional model:
                  Estimate Std. Error z value Pr(>|z|)
(Intercept)       -0.41686         NA      NA       NA
B_pos.STD         -0.43983         NA      NA       NA
siteBUK2          -0.67753         NA      NA       NA
siteBUK3           0.53513         NA      NA       NA
year2008           0.08931         NA      NA       NA
year2009          -1.43008         NA      NA       NA
year2010           1.17747         NA      NA       NA
year2011          -0.95928         NA      NA       NA
year2012          -0.13284         NA      NA       NA
year2013           0.78547         NA      NA       NA
year2014          -2.41535         NA      NA       NA
year2015           1.00981         NA      NA       NA
year2016           0.44433         NA      NA       NA
year2017          -1.40612         NA      NA       NA
siteBUK2:year2008  1.19302         NA      NA       NA
siteBUK3:year2008 -0.40655         NA      NA       NA
siteBUK2:year2009  1.68983         NA      NA       NA
siteBUK3:year2009 -1.18957         NA      NA       NA
siteBUK2:year2010  1.37064         NA      NA       NA
siteBUK3:year2010 -1.22248         NA      NA       NA
siteBUK2:year2011  1.31547         NA      NA       NA
siteBUK3:year2011 -0.58677         NA      NA       NA
siteBUK2:year2012  1.13851         NA      NA       NA
siteBUK3:year2012 -0.78668         NA      NA       NA
siteBUK2:year2013  0.84691         NA      NA       NA
siteBUK3:year2013 -0.96903         NA      NA       NA
siteBUK2:year2014  0.53060         NA      NA       NA
siteBUK3:year2014 -1.16498         NA      NA       NA
siteBUK2:year2015  0.34455         NA      NA       NA
siteBUK3:year2015 -1.32380         NA      NA       NA
siteBUK2:year2016  1.24614         NA      NA       NA
siteBUK3:year2016  0.31392         NA      NA       NA
siteBUK2:year2017  0.33922         NA      NA       NA
siteBUK3:year2017 -1.55100         NA      NA       NA

> summary(m3)
 Family: nbinom2  ( log )
Formula:          NseedsSUM ~ 1 + B_pos.STD * site + B_pos.STD:year + year + (1 |      plot)
Data: seeds_
 Offset: log(Ndays)

     AIC      BIC   logLik deviance df.resid 
  3061.7   3167.5  -1502.9   3005.7      295 

Random effects:

Conditional model:
 Groups Name        Variance Std.Dev.
 plot   (Intercept) 0.165    0.4063  
Number of obs: 323, groups:  plot, 30

Overdispersion parameter for nbinom2 family (): 3.25 

Conditional model:
                   Estimate Std. Error z value Pr(>|z|)    
(Intercept)        -1.04112    0.22397  -4.649 3.34e-06 ***
B_pos.STD          -1.76325    0.34466  -5.116 3.12e-07 ***
siteBUK2            0.06471    0.22261   0.291 0.771309    
siteBUK3           -0.21918    0.23308  -0.940 0.347029    
year2008            0.98536    0.20135   4.894 9.90e-07 ***
year2009           -0.74509    0.26493  -2.812 0.004918 ** 
year2010            1.57038    0.24178   6.495 8.30e-11 ***
year2011           -0.35528    0.25155  -1.412 0.157836    
year2012            0.71452    0.21021   3.399 0.000676 ***
year2013            1.46731    0.21624   6.786 1.16e-11 ***
year2014           -1.91446    0.26335  -7.270 3.60e-13 ***
year2015            1.42133    0.20783   6.839 7.98e-12 ***
year2016            1.99248    0.22911   8.697  < 2e-16 ***
year2017           -1.07784    0.21373  -5.043 4.58e-07 ***
B_pos.STD:siteBUK2  0.01186    0.19320   0.061 0.951045    
B_pos.STD:siteBUK3  0.30341    0.30709   0.988 0.323146    
B_pos.STD:year2008  1.54494    0.32164   4.803 1.56e-06 ***
B_pos.STD:year2009  1.60736    0.27125   5.926 3.11e-09 ***
B_pos.STD:year2010  1.74972    0.30033   5.826 5.68e-09 ***
B_pos.STD:year2011  1.67172    0.35339   4.731 2.24e-06 ***
B_pos.STD:year2012  1.22328    0.23026   5.313 1.08e-07 ***
B_pos.STD:year2013  1.20952    0.23957   5.049 4.45e-07 ***
B_pos.STD:year2014  1.39240    0.35747   3.895 9.82e-05 ***
B_pos.STD:year2015  1.25820    0.25663   4.903 9.45e-07 ***
B_pos.STD:year2016  0.29407    0.40509   0.726 0.467884    
B_pos.STD:year2017  1.46678    0.31602   4.641 3.46e-06 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
> 

The warning I get when I run the model m2 is the following:

Warning message:
In fitTMB(TMBStruc) :
  Model convergence problem; extreme or very small eigen values detected. See vignette('troubleshooting')
$\endgroup$
3
  • 1
    $\begingroup$ The question title says "overfitting" but the body says "overdispersion". Which is it ? $\endgroup$ Commented Feb 4, 2021 at 11:02
  • $\begingroup$ That was true. Thank you Robert. Now is ok $\endgroup$ Commented Feb 4, 2021 at 14:23
  • 1
    $\begingroup$ OK. Please post the output of summary(mymodel) for both the model which converges normally and the one that does not. $\endgroup$ Commented Feb 4, 2021 at 14:47

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.