Błąd LME () - osiągnięty limit iteracji

14

Podając model skrzyżowanych efektów mieszanych, próbuję uwzględnić interakcje. Jednak pojawia się następujący komunikat o błędzie:

Error in lme.formula(rate ~ nozzle, random = ~nozzle | operator, data = Flow) : 
nlminb problem, convergence error code = 1
message = iteration limit reached without convergence (10)

Model ma następujące cechy: 1. 3 typy dysz (efekt stały) 2. 5 operatorów, każdy z 3 powtarzającymi się pomiarami przepływu paliwa z 3 typów dysz.

Poproszono mnie o uwzględnienie w modelu interakcji między typem dyszy a operatorem. Oto mój kod dla modelu:

flow.lme <- lme(rate ~ nozzle, error= nozzle|operator, data=Flow)

Dlaczego dostaję ten komunikat o błędzie?

Tal Bashan
źródło
Nie chcesz operator|nozzlelosu?
Olivia Grigg
Nie, operator jest efektem losowym.
f1r3br4nd
możesz użyć> crtl = lmeControl (opt = 'optim', optimMethod = "SANN")
AliReza Afshari Safavi
Powinieneś udzielić odpowiedzi @ f1r3br4nd jako odpowiedzi
JetLag
@AliRezaAfshariSafavi jakie są zalety korzystania z „SANN” w porównaniu z domyślnym BFGS?
gcamargo

Odpowiedzi:

20

Nie słyszałem o tej errorargumentacji lmei nie widzę jej w dokumentacji. Jesteś pewien, że to nie literówka? Ale aby odpowiedzieć na zadane pytanie:

Próbować ?lmeControl

Ustawianie maxIter, msMaxIter, niterEMi / lub msMaxEvalargumenty do wartości wyższych niż domyślne może rozwiązać ten problem. Przechwyć dane wyjściowe lmeControldo obiektu, a następnie przekaż ten obiekt do controlargumentu lme.

Lub...

Nowe domyślne ustawienia optymalizatora lmesą niestabilne. Połowę czasu tego rodzaju problemy są dla mnie rozwiązywane, kiedy zmieniam je z powrotem na stary optymalizator. Można to zrobić poprzez ustawienie optargumentu do lmeControlcelu 'optim'.

Tak więc, składając to w całość:

ctrl <- lmeControl(opt='optim');
flow.lme <- lme(rate ~ nozzle, error= nozzle|operator, control=ctrl, data=Flow);
f1r3br4nd
źródło
W niektórych przypadkach warto wiedzieć, że lmeControljest to funkcja z nlmepakietu
Qaswed
3

Po pierwsze, jest to model ANOVA, a nie model mieszany.

Po drugie, wydaje mi się, że twój model nie został zidentyfikowany. W formie równania masz

responseij=β1nozzle type1ij+β2nozzle type2ij+β3nozzle type3ij+operatori+nozzle within operatorij

Ostatni termin ma 15 oddzielnych wartości dla 15 twoich obserwacji. Nie ma już żadnych stopni swobody, aby uzyskać inne warunki w modelu. Włączenie interakcji było kiepską radą. Będziesz musiał je porzucić; nawet włączenie ich jako skrzyżowanych efektów nie pomoże, ponieważ będą one idealnie współliniowe z ustalonymi efektami i nie będą możliwe do oszacowania. Maksymalne prawdopodobieństwo lub model REML z 15 obserwacjami nie ma sensu; asymptotyczne wyniki teorii największego prawdopodobieństwa po prostu nie działają: to Ferrari, którym próbujesz jechać na zaoranym polu.

StasK
źródło
4
Jeśli w modelu występują zarówno efekty losowe, jak i stałe, z definicji jest to model z efektem mieszanym. Niezależnie od tego, czy nazywasz to ANOVA, czy regresją, jest to osobny problem i rodzaj pytania semantyki. Jestem jednak trochę zaskoczony tym, co OP rozumie przez interakcję. O ile wiem, on już to robi, używając random=~nozzle|operatorzamiast random=~1|operator.
f1r3br4nd
1
Niektóre literatury odnoszą się do zagnieżdżonych efektów losowych jako interakcji między różnymi poziomami zagnieżdżenia; Myślę, że widziałem to nawet w Pinheiro & Bates. Zgadzam się, że prawidłowe określenie tego jest kwestią semantyki, ale myślę o wprowadzeniu this-does-not-have-to-be-a-mixed-modeltagu. W około dwóch trzecich mixed-modelspytania, które widzę, powiedzenie czegoś takiego jest częścią mojej odpowiedzi.
StasK
1
Zabawne, spędzam sporo czasu na mówieniu ludziom, że nie używają wystarczająco mieszanych modeli. Naprawdę chciałbym się mylić, ponieważ nieco uprościłoby to moje życie. Co powiedziałbyś OP, że ogólna zasada służy określeniu, kiedy potrzebny jest model mieszany?
f1r3br4nd
3
Och, więc jesteś złoczyńcą. Ten ma jeden predyktor jakościowy, więc jest to dla mnie model ANOVA, jak powiedziałem wcześniej. Jeśli posiadasz informacje na różnych poziomach (np. Stan \ szkoła \ uczniowie, z danymi o stanach, szkole i uczniach), dla mnie byłoby to bardziej mieszane. Zasadniczo, jeśli możesz to zrobić jako sumę kwadratów, to ANOVA; jeśli możesz to zrobić jako model regresji, to jest to model regresji. Jeśli robienie maksymalnego prawdopodobieństwa / REML jest absolutnie nieuniknione (tak jak w przypadku odpowiedzi binarnej), jest to dla mnie mieszany model.
StasK,