LME () ошибка - достигнут предел итерации

14

При определении модели скрещенных смешанных эффектов я пытаюсь включить взаимодействия. Тем не менее, я получаю следующее сообщение об ошибке:

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

Модель имеет следующее: 1. 3 типа форсунок (с фиксированным эффектом) 2. 5 операторов, каждый с 3 повторными измерениями расхода топлива от 3 типов форсунок.

Меня попросили включить в модель взаимодействие между типом сопла и оператором. Это мой код для модели:

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

Почему я получаю это сообщение об ошибке ??

Тал Башан
источник
Разве ты не хочешь operator|nozzleслучайного?
Оливия Григг
Нет, оператор - это случайный эффект.
f1r3br4nd
Вы можете использовать> crtl = lmeControl (opt = 'optim', optimMethod = "SANN")
AliReza Afshari Safavi
Вы должны сделать ответ @ f1r3br4nd как ответ
JetLag
@AliRezaAfshariSafavi, каковы преимущества использования «SANN» по сравнению с BFGS по умолчанию?
gcamargo

Ответы:

20

Я не слышал об этом errorаргументе lmeи не вижу его в документации. Вы уверены, что это не опечатка? Но, чтобы ответить на вопрос, который вы задали:

Пытаться ?lmeControl

Установка maxIter, msMaxIter, niterEM, и / или msMaxEvalаргументы более высоких значений , чем по умолчанию может это исправить. Получите выходные данные lmeControlобъекта и затем передайте этот объект controlаргументу lme.

Или...

Новый оптимизатор по умолчанию lmeиспользует нестабильно. В половине случаев такие проблемы решаются для меня, когда я возвращаю его к старому оптимизатору. Вы можете сделать это, установив optаргумент для lmeControlк 'optim'.

Итак, воедино:

ctrl <- lmeControl(opt='optim');
flow.lme <- lme(rate ~ nozzle, error= nozzle|operator, control=ctrl, data=Flow);
f1r3br4nd
источник
В некоторых случаях, возможно, стоит знать, что lmeControlэто функция из nlmeпакета
Qaswed
3

Во-первых, это модель ANOVA, а не смешанная модель.

Во-вторых, мне кажется, что ваша модель не опознана. В форме уравнения у вас есть

ответяJзнак равноβ1тип сопла1яJ+β2тип сопла2яJ+β3тип сопла3яJ+операторя+сопло внутри оператораяJ

Последний член имеет 15 отдельных значений для 15 ваших наблюдений. Нет никаких степеней свободы, чтобы получить какие-либо другие термины в модели. Включая взаимодействия был плохой совет. Вы должны были бы отбросить их вообще; даже включение их в качестве скрещенных эффектов не поможет, так как тогда они будут идеально коллинеарны с фиксированными эффектами и не будут оценены. Модель максимального правдоподобия или REML с 15 наблюдениями не имеет смысла; асимптотические результаты теории максимального правдоподобия просто не сработают: это Ferrari, который вы пытаетесь проехать на вспаханном поле.

Stask
источник
4
Если в модели есть как случайные, так и фиксированные эффекты, то по определению это модель со смешанными эффектами. Называете ли вы это ANOVA или регрессией, это отдельная проблема и вопрос семантики. Я немного озадачен тем, что ОП подразумевает под взаимодействием. Насколько я могу судить, он уже делает это, используя random=~nozzle|operatorвместо random=~1|operator.
f1r3br4nd
1
Некоторые литературные источники называют вложенные случайные эффекты взаимодействием между различными уровнями вложенности; Я думаю, что я даже видел это в Pinheiro & Bates. Я согласен, что правильное определение это вопрос семантики, но я просто думаю о введенииthis-does-not-have-to-be-a-mixed-model тега. Примерно на две трети mixed-modelsвопроса, который я получаю, ответ на этот вопрос является частью моего ответа.
StasK
1
Забавно, я трачу большую часть своего времени, рассказывая людям, что они недостаточно используют смешанные модели. Я на самом деле хотел бы ошибаться, потому что это несколько упростило бы мою жизнь. Что бы вы сказали оператору, чтобы определить, когда нужна смешанная модель?
f1r3br4nd
3
О, тогда ты злодей. У этого есть один категорический предиктор, так что для меня это модель ANOVA, как я уже говорил ранее. Если бы у вас была информация на разных уровнях (например, штат \ школа \ ученики, с данными о штатах, о школе и о учениках), для меня это было бы больше похоже на смешанную модель. По сути, если вы можете сделать это в виде суммы квадратов, это ANOVA; если вы можете сделать это как модель регрессии, это модель регрессии. Если выполнение максимального правдоподобия / REML абсолютно неизбежно (как это происходит в случае двоичного ответа), это смешанная модель, хорошо для меня.
StasK