REML 与 ML stepAIC

机器算法验证 r lme4-nlme 随机效应模型 aic
2022-03-24 00:55:13

在尝试深入研究有关如何运行混合模型分析以及使用 AIC 选择最佳模型的文献后,我感到不知所措。我不认为我的数据有那么复杂,但我正在寻找确认我所做的事情是正确的,然后建议如何进行。我不确定是否应该使用 lme 或 lmer,然后使用其中任何一个,如果我应该使用 REML 或 ML。

我有一个选择值,我想知道哪些协变量最能影响该值并允许进行预测。这是一些组成的示例数据和我正在使用的测试代码:

ID=as.character(rep(1:5,3))
season=c("s","w","w","s","s","s","s","w","w","w","s","w","s","w","w")
time=c("n","d","d","n","d","d","n","n","n","n","n","n","d","d","d")
repro=as.character(rep(1:3,5))
risk=runif(15, min=0, max=1.1)
comp1=rnorm(15, mean = 0, sd = 1)
mydata=data.frame(ID, season, time, repro, risk, comp1)
c1.mod1<-lmer(comp1~1+(1|ID),REML=T,data=mydata)
c1.mod2<-lmer(comp1~risk+(1|ID),REML=T,data=mydata)
c1.mod3<-lmer(comp1~season+(1|ID),REML=T,data=mydata)
c1.mod4<-lmer(comp1~repro+(1|ID),REML=T,data=mydata)
c1.mod5<-lmer(comp1~time+(1|ID),REML=T,data=mydata)
c1.mod6<-lmer(comp1~season+repro+time+(1|ID),REML=T,data=mydata)
c1.mod7<-lmer(comp1~risk+season+season*time+(1|ID),REML=T,data=mydata)

我有大约 19 个模型,可以使用各种组合和最多 2 种交互项来探索这些数据,但总是将 ID 作为随机效应,将 comp1 作为我的因变量。

  • Q1。使用哪个?lme还是lmer?有关系吗?

在这两种情况下,我都可以选择使用 ML 或 REML——我得到截然不同的答案——使用 ML 和 AIC 我最终得到了 6 个模型,所有模型都具有相似的 AIC 值,模型组合根本没有意义,而 REML导致 2 个最有可能的模型是最好的。但是,在运行 REML 时,我不能再使用 anova。

  • Q2。由于与 ANOVA 一起使用,使用 ML 而不是 REML 的主要原因是什么?这对我来说不是很清楚。

我仍然无法运行 stepAIC,或者我不知道缩小这 19 个模型的另一种方法。

  • Q3。有没有办法在这一点上使用 stepAIC?
2个回答

Q1。使用哪个?lme还是lmer?有关系吗? 哪一个都好。他们会给你同样的配合。 lme会给你 p 值,lmer但不会,但这比我想进入这里的要多。最著名的参考资料是 Doug Bates 在此处的 R-help 邮件列表中的帖子之一。

(警告:它们确实使用略有不同的算法,因此可能存在一些计算困难的情况,其中一个或另一个可能会做得更好,但在实践中这种情况非常罕见,实际上,很可能指向某种模型错误指定。参见完全不同结果来自 lmer() 和 lme()。)

Q2。由于与 ANOVA 一起使用,使用 ML 而不是 REML 的主要原因是什么?这对我来说不是很清楚。 ML 是必要的,因为当固定效应发生变化时,使用 REML 进行的比较无效。一个可能有用的相关问题在这里:https ://stats.stackexchange.com/a/16015/3601 。要在上面的评论中回答您的问题,是的,在比较模型时,仅当模型具有相同的固定效应时(即只有随机效应发生变化时)才应使用 REML。REML 可能性取决于模型中的固定效应,因此如果固定效应发生变化,则无法比较。不过,通常认为 REML 可以更好地估计随机效应,因此通常的建议是使用 REML 拟合您的最佳模型,以进行最终推理和报告。

Q3。有没有办法在这一点上使用 stepAIC? 要比较适合您情况的 19 个模型,只需比较所有模型的 AIC。根本没有理由使用逐步程序。逐步程序现在通常被认为是过时的,因为它们不能保证找到最佳模型,并且计算机可以轻松比较大量模型。

在进一步挖掘中,我还发现了这些资源来支持 Aaron 提供的链接,并且对于像我这样刚起步的人来说是很好的阅读材料。http://lme4.r-forge.r-project.org/上链接的章节例如查看幻灯片链接http://lme4.r-forge.r-project.org/slides/在同一项目页面上. 许多短期课程甚至有示例 R 代码,这是一个很大的帮助。
Bolker 博士的简短回答http://r.789695.n4.nabble.com/lme-vs-lmer-how-do-they-differ-td2534332.html