交叉验证可以用于因果推理吗?

机器算法验证 交叉验证 因果关系
2022-02-02 17:12:57

在所有情况下,我都熟悉交叉验证,它仅用于提高预测准确性的目标。交叉验证的逻辑可以扩展到估计变量之间的无偏关系吗?

虽然Richard Berk 的这篇论文演示了在“最终”回归模型中使用保留样本进行参数选择(并说明了为什么逐步参数选择不是一个好主意),但我仍然不明白这如何确保对 X 对 Y 的影响的无偏估计比根据主题的逻辑和先验知识选择模型更重要。

我要求人们引用一些例子,在这些例子中,有人使用保留样本来帮助进行因果推理,或者可以帮助我理解的一般论文。我也不怀疑我对交叉验证的概念是幼稚的,所以如果是这样的话。似乎临时使用保留样本可以进行因果推理,但我不知道有任何工作可以做到这一点或他们将如何做到这一点。

伯克论文的引文:

模型选择后的统计推断 作者:Richard Berk、Lawrence Brown、Linda Zhao 定量犯罪学杂志,Vol。26,第 2 期。(2010 年 6 月 1 日),第 217-236 页。

PDF版本在这里

chl 关于小样本研究中探索性数据分析的这个问题提示了这个问题

4个回答

我认为回顾一下我们对交叉验证的了解很有用。围绕 CV 的统计结果分为两类:效率和一致性。

效率是我们在构建预测模型时通常关心的问题。我们的想法是,我们使用 CV 来确定具有关于损失函数的渐近保证的模型。这里最著名的结果是由于Stone 1977,它表明 LOO CV 渐近地等价于 AIC。但是,Brett 提供了一个很好的示例,您可以在其中找到一个不会告知您因果机制的预测模型。

如果我们的目标是找到“真正的”模型,那么一致性就是我们所关心的。这个想法是,我们使用 CV 来确定具有渐近保证的模型,假设我们的模型空间包含真实模型,我们将通过足够大的样本来发现它。这里最著名的结果是Shao 1993关于线性模型的结果,但正如他在摘要中所说,他的“令人震惊的发现”与 LOO 的结果相反。对于线性模型,您可以使用 LKO CV 实现一致性,只要 as除了线性模型之外,更难得出统计结果。 k/n1n

但是假设您可以满足一致性标准,并且您的 CV 过程导致了真正的模型:关于因果机制,我们学到了什么?我们只知道之间存在明确定义的相关性,这并没有说明因果关系。从传统的角度来看,您需要引入具有控制/操纵机制的实验设计来提出因果关系。从 Judea Pearl 的框架的角度来看,您可以将因果假设烘焙到结构模型中,并使用基于概率的反事实演算来得出一些主张,但您需要满足某些属性Y=βX+eYX

也许您可以说 CV 可以通过识别真实模型来帮助进行因果推理(前提是您可以满足一致性标准!)。但它只能让你走这么远;CV 本身并没有在任何一个因果推理框架中做任何工作。

如果您对我们可以通过交叉验证说的内容进一步感兴趣,我会推荐 Shao 1997,而不是被广泛引用的 1993 年论文:

您可以浏览主要结果,但阅读下面的讨论会很有趣。我认为 Rao & Tibshirani 和 Stone 的评论特别有见地。但请注意,虽然他们讨论了一致性,但从未就因果关系提出任何主张。

这是一个非常有趣的问题,我不提供任何具体的引用。但是,总的来说,我会说,不,交叉验证本身并不能提供对因果关系的任何见解。在没有设计实验的情况下,因果关系的问题总是不确定的。正如您所建议的,交叉验证可以并且将会提高预测的准确性。仅此一点,并没有说明因果关系。

如果没有设计好的实验,因果推理将需要一个包含所有相关预测变量的模型——这是我们在观察性研究中很少能保证的。此外,例如,一个简单的滞后变量(或与我们试图预测的任何结果高度相关的任何变量)将产生一个好的模型,并且可以在多个样本中进行验证。然而,这并不意味着我们可以推断出因果关系。交叉验证确保预测的可重复性,仅此而已。因果关系是设计和逻辑的问题。

编辑:这是一个例子来说明。我可以建立一个具有良好预测准确性的模型,根据城市在垃圾清除上花费的金额来预测城市的人口。我可以使用交叉验证来测试该模型的准确性以及其他方法来提高预测的准确性并获得更稳定的参数。现在,虽然这个模型非常适合预测,但因果逻辑是错误的——因果方向是相反的。无论公共工程部的人可能会争论什么,增加他们的垃圾清除预算都不是增加城市人口的好策略(因果解释)。

模型的准确性和可重复性问题与我们对观察到的关系进行因果推断的能力是分开的。交叉验证帮助我们处理前者而不是后者。现在,如果我们在指定一个偶然关系方面估计一个“正确”的模型(例如,试图根据我们明年的预期人口来确定我们的垃圾清除预算应该是多少),交叉验证可以帮助我们获得更大的相信我们对这种影响的估计。然而,交叉验证并不能帮助我们选择关于因果关系的“正确”模型。同样,在这里我们需要依靠研究的设计、我们的主题专业知识、理论和逻辑。

在我看来,您的问题更普遍地解决了预测模型的不同验证方式:交叉验证与内部有效性有关,或者至少与初始建模阶段有关,而在更广泛的人群中绘制因果关系则更相关外部效. 通过那个(并且作为@Brett 好的评论之后的更新),我的意思是我们通常在工作样本上建立一个模型,假设一个假设的概念模型(即我们指定预测变量和感兴趣的结果之间的关系),我们尝试以最小的分类错误率或最小的预测误差获得可靠的估计。希望模型表现得越好,它就能让我们更好地预测看不见的数据的结果;尽管如此,CV 并没有说明假设因果关系的“有效性”或充分性。我们当然可以通过一个模型获得不错的结果,其中一些调节和/或中介效应被忽略或根本不知道。

我的观点是,无论您使用哪种方法来验证您的模型(保持方法当然不是最好的方法,但它仍然广泛用于流行病学研究以缓解逐步模型构建所产生的问题),您使用的是相同的样本(我们假设它代表了更大的人口)。相反,将结果和以这种方式推断的因果关系推广到新样本或可能相关的人群通常是通过重复研究来完成的。这确保了我们可以安全地测试我们模型在“超群”中的预测能力,该“超群”具有更大范围的个体差异,并且可能表现出其他潜在的感兴趣因素。

您的模型可能会为您的工作样本提供有效的预测,并且它包括您可能想到的所有潜在混杂因素;但是,它可能不会在新数据上表现得那么好,只是因为在构建初始模型时未确定的干预因果路径中出现了其他因素。例如,如果某些预测因素和从中推断的因果关系取决于招募患者的特定试验中心,则可能会发生这种情况。

在遗传流行病学中,许多全基因组关联研究未能复制只是因为我们试图对复杂疾病进行建模,对 DNA 标记和观察到的表型之间的因果关系过于简单化,而基因-基因(上位性)很可能,基因疾病(多效性)、基因环境和种群子结构都发挥作用,但请参见示例验证、增强和改进全基因组关联信号(Ioannidis 等人,《自然评论遗传学》,2009 年 10 月)。因此,我们可以建立一个高性能模型来解释一组遗传标记(具有非常低且稀疏的效应大小)和观察到的表型的多变量模式(例如,白质/灰质的体积或通过 fMRI 观察到的大脑中的局部活动、对神经心理学评估或人格清单的反应),但在独立样本上它仍然不会像预期的那样表现。

至于这个主题的一般参考,可以推荐第 17 章和第 III 部分临床预测模型,来自 EW Steyerberg (Springer, 2009)。我也喜欢 Ioannidis 的以下文章:

Ioannidis,JPA,为什么大多数已发表的研究结果都是错误的?公共科学图书馆医学。2005 2(8):e124

这是一个很好的问题,但答案肯定是否定的:交叉验证不会改善因果推理。如果你有症状和疾病之间的映射,交叉验证将有助于确保你的模型比你简单地将模型拟合到整个原始数据集更好地匹配它们的联合分布,但它不能告诉你任何关于因果的方向性。

交叉验证非常重要且值得研究,但它只是防止您过度拟合数据集中的噪声。如果您想了解更多,我建议 ESL 的第 7 章:http ://www-stat.stanford.edu/~hastie/Papers/ESLII.pdf