Модель логистической регрессии не сходится с помощью функции glmer () - PullRequest
0 голосов
/ 01 июня 2018

Я попытался создать модель логистической регрессии со смешанным эффектом, используя функцию glmer(), однако модель не сходится.Во-первых, я изменил категориальные переменные с векторов на факторы.

schwa_completed_2$Outcome <- as.factor(schwa_completed_2$Outcome)
schwa_completed_2$frequency_grouped <- as.factor(schwa_completed_2$frequency_grouped)
schwa_completed_2$sonority_grouped <- as.factor(schwa_completed_2$sonority_grouped)
schwa_completed_2$participant_gender <- as.factor(schwa_completed_2$participant_gender) 
schwa_completed_2$participant_age_group <- as.factor(schwa_completed_2$participant_age_group)
schwa_completed_2$Speaker <- as.factor(schwa_completed_2$Speaker)

Также есть еще одна непрерывная переменная.Тогда я создал модель

model <- glmer(Outcome ~ frequency_grouped + sonority_grouped + syl_sec_EN +
                         participant_gender + participant_age_group + 1|Speaker,
           data = schwa_completed_2, family = binomial, optimizer = "bobyqa")

К сожалению, модель не сходится.Если я избавился от эффекта «Динамик», то модель работает нормально, но результаты, вероятно, искажены.

Предупреждающие сообщения:
1: в commonArgs (par, fn, control, environment)()):
maxfun <10 * length (par) ^ 2 не рекомендуется. <br>2: в optwrap (оптимизатор, devfun, start, rho $ lower, control = control,:
код сходимости 1из bobyqa: bobyqa - максимальное количество функций
превышено вычислений
3: In (функция (fn, par, lower = rep.int (-Inf, n), upper = rep.int (Inf,: *)1017 * сбой в 10000 оценках
4: В checkConv (attr (opt, «производные»), opt $ par, ctrl = control $ checkConv,: модели не удалось сойтись с max | grad | = 0.0785481 (tol =0,001, компонент 1)

Generalized linear mixed model fit by maximum likelihood (Laplace 
Approximation) ['glmerMod']
Family: binomial  ( logit )
Formula: Outcome ~ frequency_grouped + sonority_grouped + syl_sec_EN +  
participant_gender + participant_age_group + 1 | Speaker
Data: schwa_completed_2

 AIC      BIC   logLik deviance df.resid 
1820.8   2066.1   -864.4   1728.8     1486 

Scaled residuals: 
Min      1Q  Median      3Q     Max 
-2.5957 -0.6255 -0.3987  0.7714  3.4432 

Random effects:
Groups  Name                                 Variance Std.Dev. Corr                         
Speaker (Intercept)                          2.08476  1.4439                                
        frequency_groupedmoderately_frequent 0.78914  0.8883   -0.15                        
        frequency_groupedvery_frequent       3.07514  1.7536   -0.90  0.35                  
        sonority_groupedsonorants            1.33795  1.1567    0.82 -0.44 -0.91            
        sonority_groupedstops                1.76849  1.3298    0.02 -0.42 -0.36  0.51      
        sonority_groupedvowels               2.97690  1.7254    0.23  0.02 -0.32  0.55  0.77
        syl_sec_EN                           0.03217  0.1794   -0.62 -0.42  0.32 -0.44  0.11 -0.52  
        participant_genderM                  0.41458  0.6439   -0.86 -0.18  0.77 -0.77 -0.24 -0.62  0.82 
        participant_age_groupY               0.52428  0.7241    0.46  0.80 -0.20  0.06 -0.44  0.08 -0.73 -0.63

Number of obs: 1532, groups:  Speaker, 40

Fixed effects:
            Estimate Std. Error z value Pr(>|z|)    
(Intercept)  -0.7650     0.1862  -4.108 3.99e-05 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
convergence code: 0
Model failed to converge with max|grad| = 0.0785481 (tol = 0.001, component 1)
failure to converge in 10000 evaluations

Это из-за слишком сложной модели или мой ноутбук недостаточно мощный? Я не знаю, что мне делать на этом этапе.можно сделать, чтобы это исправить?

1 Ответ

0 голосов
/ 08 июня 2018

Хорошо, так что мне помогло сгруппировать колонки с group by, а затем scale переменная syl_sec_EN

...