基于计算机的实验/模拟中残差的独立性?

机器算法验证 r 混合模式 多重比较 模拟 独立
2022-02-01 18:30:43

我对古科学中使用的特定类型模型拟合的不同方法进行了基于计算机的评估。我有一个很大的训练集,所以我随机(分层随机抽样)留出了一个测试集。我为训练集样本拟合个不同的方法,并使用个结果模型预测了测试集样本的响应,并计算了测试集中样本的 RMSEP。这是单次运行mm

然后我多次重复这个过程,每次我通过随机抽样一个新的测试集来选择不同的训练集。

完成此操作后,我想调查这种方法中是否有任何一种方法具有更好或更差的 RMSEP 性能。我也想对成对方法进行多重比较。m

我的方法是拟合线性混合效应 (LME) 模型,其中Run具有单个随机效应我使用lmer()lme4中的模型和multcomp包中的函数来执行多重比较。我的模型本质上是

lmer(RMSEP ~ method + (1 | Run), data = FOO)

其中method是指示使用哪种方法为测试集生成模型预测的因素,并且是我的“实验”Run的每个特定运行的指标。

我的问题是关于 LME 的残差。鉴于运行的单一随机效应,假设该运行的 RMSEP 值在一定程度上相关,但在运行之间不相关,基于随机效应提供的诱导相关性。

这种运行之间独立性的假设是否有效?如果没有,有没有办法在 LME 模型中解释这一点,还是我应该寻求采用另一种类型的静态分析来回答我的问题?

2个回答

您本质上是在这里为您的每个m方法进行某种形式的交叉验证,然后想看看哪种方法性能更好。运行之间的结果肯定是依赖的,因为它们基于相同的数据,并且您的训练/测试集之间存在重叠。问题是当您比较这些方法时,这是否重要。

假设您只执行一次运行,并且会发现一种方法比其他方法更好。然后你会问自己 - 这仅仅是由于测试集的特定选择吗?这就是为什么您对许多不同的训练/测试集重复测试的原因。因此,为了确定一种方法比其他方法更好,您运行多次,并在每次运行中将其与其他方法进行比较(您有不同的选项来查看错误/排名/等)。现在,如果您发现一种方法在大多数运行中表现更好,那么结果就是它。我不确定为此提供 p 值是否有帮助。或者,如果您确实想给出 p 值,请问自己这里的背景模型是什么?

可能不太明白你做了什么,但是

对于运行,我假设该运行的 RMSEP 值在一定程度上相关

是的,这反映了测试集在那次运行中的挑战性

但在运行之间不相关

不,鉴于您对测试集进行采样的方式,有些会比其他的重叠更多(绝对不是独立的复制)

您必须以某种方式根据重叠对依赖关系进行建模或设计评估,以便运行是独立的。我会阅读有关交叉验证的统计文献;-)