mlogit - Regression "convergence not achieved"

Regressionsmodelle aller Art mit Stata.

mlogit - Regression "convergence not achieved"

Beitragvon alexalex90 » Di 15. Jul 2014, 17:53

Hallo,

ich nutze stata 12.1 und habe folgendes Problem: ich versuche eine mlogit-regression laufen zu lassen, allerdings erhalte ich jedesmal die warnung "convergence not achieved".
Stata hoert nur auf die iterates zu berechnen, wenn ich es mit der Option inter(20) beschraenke; gebe ich den syntax ohne Option ein, laeuft es unendlich weiter (also bei 6000 iterates habe ich stata einfach zugemacht);

Ich habe einen Datensatz mit 2,900 Beobachtungen und die mlogit-Regression umfasst eine DV und 17 IV;

Weiss hier vielleicht jemand was "convergence not achieved" in diesem Zusammenhang heisst und was ich dagegen machen kann? Ich bin schon am verzweifeln!

Danke!!!
alexalex90
 
Beiträge: 2
Registriert: Di 15. Jul 2014, 17:41
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: mlogit - Regression "convergence not achieved"

Beitragvon daniel » Di 15. Jul 2014, 22:19

Weiss hier vielleicht jemand was "convergence not achieved" in diesem Zusammenhang heisst


Dass die Likelihood-Schätzer nicht konvergieren.

und was ich dagegen machen kann? Ich bin schon am verzweifeln!


Mit einem einfachen Modell (outcome und 1 Prädiktor) anfangen und Schrittweise herausfinden, wo die Probleme auftreten.
Stata is an invented word, not an acronym, and should not appear with all letters capitalized: please write “Stata”, not “STATA”.
daniel
 
Beiträge: 1060
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: mlogit - Regression "convergence not achieved"

Beitragvon alexalex90 » Mi 16. Jul 2014, 09:55

Danke fuer deine Antwort!

Ich hab das ausprobiert, und es scheint, dass es eine Kombination von bestimmten Variablen ist, die zu einem Problem fuehren. Aber ich weiss leider nicht warum, oder wie ich das beheben kann, da ich vllt 2 oder 3 dieser Variablen weglassen kann, aber unmoeglich 10.

Auf die Gefahr hinaus jetzt zu klingen wie ein Idiot (obwohl der Zug vermutlich schon abgefahren ist): woher erkenne ich, warum die Variable ein Problem herbeifuehrt und wie behebe ich das?

Habe mal ein BEispiel hier hinein kopiert - "rebstrength_num" fuehrt wohl zu einem Problem, aber ich kann die Variable nicht weglassen ...

Vielen vielen Dank!!!



- mlogit outcome medrank2 medstrategy rebstrength_num if fragmentation==1, base(0) iter(20)

Iteration 0: log likelihood = -179.6201
Iteration 1: log likelihood = -99.134576
Iteration 2: log likelihood = -82.318477
Iteration 3: log likelihood = -74.886761
Iteration 4: log likelihood = -73.14762
Iteration 5: log likelihood = -72.680923
Iteration 6: log likelihood = -72.561058
Iteration 7: log likelihood = -72.531608
Iteration 8: log likelihood = -72.525277
Iteration 9: log likelihood = -72.523826
Iteration 10: log likelihood = -72.523462
Iteration 11: log likelihood = -72.523389
Iteration 12: log likelihood = -72.523373
Iteration 13: log likelihood = -72.523369 (not concave)
Iteration 14: log likelihood = -72.523369 (not concave)
Iteration 15: log likelihood = -72.523369 (not concave)
Iteration 16: log likelihood = -72.523369 (not concave)
Iteration 17: log likelihood = -72.523369 (not concave)
Iteration 18: log likelihood = -72.523369 (not concave)
Iteration 19: log likelihood = -72.523369 (not concave)
Iteration 20: log likelihood = -72.523369 (not concave)
convergence not achieved

Multinomial logistic regression Number of obs = 145
LR chi2(13) = 214.19
Prob > chi2 = 0.0000
Log likelihood = -72.523369 Pseudo R2 = 0.5962

-----------------------------------------------------------------------------------
outcome | Coef. Std. Err. z P>|z| [95% Conf. Interval]
------------------+----------------------------------------------------------------
no_management | (base outcome)
------------------+----------------------------------------------------------------
unsuccessful |
medrank2 | 6.22526 899.2719 0.01 0.994 -1756.315 1768.766
medstrategy | 14.09503 1325.962 0.01 0.992 -2584.743 2612.933
rebstrength_num | 1.362825 316.2013 0.00 0.997 -618.3804 621.106
_cons | -30.83164 3.271554 -9.42 0.000 -37.24376 -24.41951
------------------+----------------------------------------------------------------
Process_Agreement |
medrank2 | 5.826981 899.2719 0.01 0.995 -1756.713 1768.367
medstrategy | 13.88662 1325.962 0.01 0.992 -2584.952 2612.725
rebstrength_num | .6693374 316.2011 0.00 0.998 -619.0734 620.4121
_cons | -23.17729 2.099033 -11.04 0.000 -27.29132 -19.06326
------------------+----------------------------------------------------------------
Ceasefire |
medrank2 | 6.224771 899.2719 0.01 0.994 -1756.316 1768.765
medstrategy | 14.00963 1325.962 0.01 0.992 -2584.829 2612.848
rebstrength_num | 1.451508 316.2012 0.00 0.996 -618.2914 621.1944
_cons | -30.02116 2.520646 -11.91 0.000 -34.96154 -25.08079
------------------+----------------------------------------------------------------
Partial_Agreement |
medrank2 | 5.841906 899.2719 0.01 0.995 -1756.699 1768.382
medstrategy | 13.94479 1325.962 0.01 0.992 -2584.893 2612.783
rebstrength_num | 1.071293 316.201 0.00 0.997 -618.6712 620.8138
_cons | -26.03911 . . . . .
------------------+----------------------------------------------------------------
Full_Settlement |
medrank2 | 6.084361 899.272 0.01 0.995 -1756.456 1768.625
medstrategy | 13.66179 1325.962 0.01 0.992 -2585.177 2612.5
rebstrength_num | 16.01796 316.2015 0.05 0.960 -603.7256 635.7615
_cons | -118.2498 . . . . .
-----------------------------------------------------------------------------------
Warning: convergence not achieved
alexalex90
 
Beiträge: 2
Registriert: Di 15. Jul 2014, 17:41
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: mlogit - Regression "convergence not achieved"

Beitragvon daniel » Mi 16. Jul 2014, 12:08

[Edit]
Kommando zurück!

Ich sehe gerade, dass Du nur 145 Beobachtungen hast. Vergiss alles unten geschriebene. Selbst bei einem einfachen linearen Modell wäre ich sekptisch, ob 17 Prädiktoren mit derart geringen Fallzahlen sinnvoll umzusetzen sind. Selbst mit weniger Prädiktoren wäre ich mit ML Schätzern bei diesen Fallzahlen sehr vorsichtig. Die Argumentation über asymptotische Eigenschaften bei N = 145 steht auf sehr wackligen Beinen.

Dir wird nichts anderes übrig bleiben, als Deine Modelle (massiv) zu reduzieren.
[/Edit]


Du kannst ein wenig "fine-tuning" versuchen, indem Du mal andere Maximierungsalgorithmen ausprobierst (siehe maximization options in -help mlogit-). Allerdings kann es gut sein, dass an Deine Daten bestimmte (zu komplexe) Modelle schlicht nicht angepasst werden können. Da gibt es nicht viel, was Du tun kannst. Es gibt eine Verbindung zwischen multinomischem Modell und dem Poission, dass Du evtl. mittels -glm- versuchen könntest. Soweit ich sehe, erfordert das allerdings viele Interaktionen, was die Anpassung nicht erleichtern wird.

Daher ein paar grundlegendere Fragen, die Du Dir stellen kannst.

Bist Du sicher, dass Du ein multinominales Modell brauchst?
Vielleicht lassen sich bestimmte Kategorien auch zusammenfassen?
Vielleicht lassen sich sinnvoll "kleinere" Modelle (weniger outcome Kategorien) aufstellen? (Bei IIA Annahme sollte eine Reihe von binären logits tendenziell die gleiche Antwort geben, wie ein multinomisches Modell).
Hast es mit einem Probit Modell versucht (wahrscheinlich aber noch schlechter zu fitten)?
Stata is an invented word, not an acronym, and should not appear with all letters capitalized: please write “Stata”, not “STATA”.
daniel
 
Beiträge: 1060
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post


Zurück zu Regressionsmodelle

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste