Это скорее концептуальный вопрос, но по мере использования R
я буду ссылаться на пакеты в R
. Если цель состоит в том, чтобы подогнать линейную модель для целей прогнозирования, а затем делать прогнозы в тех случаях, когда случайные эффекты могут быть недоступны, есть ли польза от использования модели смешанных эффектов или вместо нее следует использовать модель с фиксированными эффектами?
Например, если у меня есть данные о весе или росте с некоторой другой информацией, и следующую модель, используя lme4
, где субъект - это фактор с уровнями ( ):
mod1 <- lmer(weight ~ height + age + (1|subject), data=df, REML=F)
Затем я хочу иметь возможность прогнозировать вес по модели, используя новые данные о росте и возрасте. Очевидно, что дисперсия по субъектам в исходных данных фиксируется в модели, но возможно ли использовать эту информацию в прогнозе? Допустим, у меня есть новые данные о росте и возрасте, и я хочу прогнозировать вес, я могу сделать это следующим образом:
predict(mod1,newdata=newdf) # newdf columns for height, age, subject
Это будет использовать predict.merMod
, и я могу либо включить столбец для (новых) предметов newdf
, или установить re.form =~0
. В первом случае неясно, что модель делает с «новыми» предметными факторами, и во втором случае, будет ли отклонение от субъекта, зафиксированное в модели, просто игнорироваться (усредняться) для прогноза?
В любом случае мне кажется, что линейная модель с фиксированным эффектом может быть более подходящей. Действительно, если мое понимание верно, то модель с фиксированным эффектом должна предсказывать те же значения, что и смешанная модель, если случайный эффект не используется в прогнозе. Должно ли это быть так? В R
нем нет, например:
mod1 <- lmer(weight ~ height + age + (1|subject), data=df, REML=F)
predict(mod1,newdata=newdf, re.form=~0) # newdf columns for height, age, subject
дает разные результаты для:
mod2 <- lm(weight ~ height + age, data=df)
predict(mod2,newdata=newdf) # newdf columns for height, age