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


37

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

尽管理查德·伯克(Richard Berk)的这篇论文演示了在“最终”回归模型中使用保留样本进行参数选择的情况(并演示了为什么逐步选择参数不是一个好主意),但我仍然看不到如何完全确保与基于逻辑和对象的先验知识选择模型相比,X对Y产生的影响的无偏估计不再是。

我要求人们举出一些例子,其中有人使用保留样本来帮助进行因果推论,或者使用一些一般性的文章来帮助我理解。我也毫不怀疑我的交叉验证概念是幼稚的,因此可以这么说。使用暂留样本似乎可以进行因果推断,但是我不知道有任何工作可以做到这一点,或者他们将如何做到这一点。

伯克论文的引文:

模型选择后的统计推断 ,作者:理查德·伯克(Richard Berk),劳伦斯·布朗(Lawrence Brown),琳达·赵(Linda Zhao)。26,No. 2(2010年6月1日),第217-236页。

此处为 PDF版本

对由CHL小样本研究探索性数据分析问题促使这个问题。

Answers:


19

我认为复习我们对交叉验证的知识很有用。有关简历的统计结果分为两类:效率和一致性。

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

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

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

也许您可以说CV可以通过识别真实模型来帮助进行因果推理(前提是您可以满足一致性标准!)。但这只能使您走到现在。在因果推理的任何一个框架中,CV本身都不做任何工作。

如果您对我们可以通过交叉验证说的话进一步感兴趣,那么我建议您使用Shao 1997,而不是被广泛引用的1993论文:

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


感谢您提供的所有参考资料,尤其是Judea Pearl的回复(我需要根据简短回复中的所有精彩信息来购买这本书。)
Andy W 2010年

1
永远欢迎对downvote的评论!
chl

18

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

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

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

模型的准确性和可重复性问题与我们对所观察到的关系进行因果推断的能力是分开的。交叉验证可以帮助我们解决前者而不是后者。现在,如果我们根据指定一种随意的关系(例如,尝试根据明年的预期人口确定我们的垃圾清除预算应基于什么)来估计“正确的”模型,则交叉验证可以帮助我们获得更大的收益对我们对该效果的估计充满信心。但是,交叉验证并没有帮助我们选择因果关系方面的“正确”模型。同样,在这里我们需要依靠研究的设计,我们的主题专业知识,理论和逻辑。


1
因此,您认为效果估计中的可重复性不是有用的吗?尽管您并不是一个单独的因果关系证明概念的人,但我认为这是很狭窄的。即使没有实验,我们也永远无法无条件地证明因果关系,而宇宙中没有所有证据。因此,在我看来,目标是提供证据证明,只要我们确实知道信息,我们估计的任何关系都接近于事实。考虑到您是否不认为从训练集到保留样本的预测的可重复性可能是对所做推断的有用检查?
安迪W

我也感谢您的评论,我完全同意推论在很大程度上取决于逻辑和研究设计。
安迪W

1
安迪,我已经编辑了我的帖子,以解决您的评论。另外,我并不是要暗示因果推理不能在设计的实验范围之外进行。但是,在观察研究中这更加困难,也缺乏确定性,我们不应该为建立程序建模以帮助我们解决该问题。相反,我们应该尝试更好地理解我们试图了解因果关系的问题。
Brett 2010年

我几乎同意您所说的一切,只是准确性和可重复性问题对于面对疑问做出正确的推理至关重要。我可以给专家带来的好处是,他们是否正在构建逻辑模型。我关心的是在许多观察情况下研究结果的可重复性。尽管我同意重复性并不一定说明在实验环境中最好解决的混杂影响。
安迪W 2010年

(+1)我的道歉。看来我也忘了赞成你非常好的回答。已经投票支持您的有用评论。
chl

13

在我看来,您的问题更笼统地解决了预测模型的不同验证方式:交叉验证与内部有效性或至少在初始建模阶段有更多关系,而在更广泛的人群上绘制因果联系则更为相关对外部有效性。到此为止(作为@Brett的口吻之后的更新),我的意思是,我们通常在工作样本上构建模型,并假设一个假设的概念模型(即,我们指定了预测变量和感兴趣的结果之间的关系),并且我们尝试以最小的分类错误率或最小的预测错误来获得可靠的估计。希望模型执行得越好,就可以使我们更好地预测看不见的数据的结果;尽管如此,CV并没有透露有关假设因果联系的“有效性”或充分性的任何信息。当然,我们可以通过忽略或根本不知道某些调节和/或调解作用的模型来取得不错的结果。

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

您的模型可能会为您的工作样本提供有效的预测,其中包括您可能想到的所有潜在混杂因素;但是,它可能无法与新数据一起很好地发挥作用,仅因为其他因果关系出现在介入因果路径中,而这些因素在构建初始模型时并未被确定。例如,如果某些预测因素及其推断的因果联系取决于招募患者的特定试验中心,则可能会发生这种情况。

在遗传流行病学中,许多全基因组关联研究都无法重复,只是因为我们试图对DNA标记物与观察到的表型之间的因果关系进行过分简化的观点来模拟复杂的疾病,而基因(基因)很有可能基因疾病(多向性),基因环境和种群亚结构都发挥了作用,但请参见例如验证,增强和完善全基因组关联信号(Ioannidis等,Nature Reviews Genetics,2009 10)。因此,我们可以建立一个性能模型,以解释一组遗传标记(效应大小非常小且稀疏)与观察表型的多变量模式(例如,白/灰色物质或通过功能磁共振成像,对神经心理学评估或人格测验的反应观察到的大脑局部活动),在独立样本上仍然无法达到预期效果。

关于此主题的一般参考,可以推荐EW Steyerberg(Springer,2009)的第17章和《临床预测模型的第三部分》。我也喜欢以下来自约阿尼迪斯的文章:

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


1
@chl:您能否在第一段中解释关于内部诉外部有效性的陈述?按照我熟悉的传统,内部有效性指的是在特定样本中声明变量之间因果关系的能力;外部有效性是指从样本到其他人,地点和时间的概括能力。传统上,交叉验证是关于后者的,因此,通过上述关于外部有效性的定义,而您声明它是关于内部有效性的。我是否误解了你的说法?
Brett 2010年

1
@Brett我将CV视为一种统计技术,以避免过拟合或提供对工作样本的预测准确性的度量(因此,不一定非要用作证明内部有效性的专用工具)。我不是很清楚,谢谢或指出。我同意将其用于对现有样本进行泛化,但我认为这与因果推理无关(CV并未证明与在工作样本上建模的因果联系有关)。我同意您对外部有效性的看法,但是为了证明这一点,我们需要其他示例,不是吗?
chl 2010年

1
您可能需要澄清第一段。我想您是想说简历不具有内部有效性。这是其他过程的问题。但是,如果我们出于其他原因而拥有良好的内部效度,那么无论如何,CV都将有助于更准确地评估人员,地点和时间之间的影响,即提高外部效度。我仍然无法想到CV可以帮助我们对变量之间的关系(内部有效性问题本身)做出因果主张,而只是有助于概括已建立的因果关系。
Brett 2010年

1
@Brett我认为您对这个问题的评论非常相关,可以很好地总结一些问题。我怀疑这是否会帮助解决内部和外部有效性之间的任何混淆,但是chl的遗传流行病学示例实际上是内部有效性而不是外部有效性的问题(除了数据集异质性(或总体子结构)之间,但IMO具有在这些示例中,比内部有效性更少的关注)。
安迪W

2
Brett在内部和外部有效性之间的定义是准确的,但出于我们的目的,这将有助于以不同的术语对其进行定义。外部有效性仅与样本以及该样本与其他人群的关系有关。内部有效性与估计的效果以及用于估计这些效果的构造有关的各个方面。
安迪W

12

这是一个很好的问题,但答案肯定是:交叉验证不会改善因果推理。如果您在症状和疾病之间建立了映射,则交叉验证将有助于确保您的模型与它们的联合分布更好地匹配,而不是仅使模型适合整个原始数据集,但是它永远无法告诉您任何有关因果关系的方向性。

交叉验证非常重要,值得研究,但它所做的不过是防止您过度适应数据集中的噪声。如果您想进一步了解它,建议您参考ESL的第7章:http : //www-stat.stanford.edu/~hastie/Papers/ESLII.pdf


感谢您的参考。因此,说您不关心模型的选择,将训练数据集的效果估计交叉验证到保持数据集是否有用?
安迪W

可能是,但是我要说的是,此时您基本上是在进行引导(或其一些变体)。
约翰·迈尔斯·怀特

我同意,我认为还有其他定期执行的事情可以反映这种逻辑(例如子集特异性测试或非等效因变量)。我只是提出了这个问题,因为我认为存在更多的正规治疗方法。
安迪W 2010年

永远欢迎对downvote的评论!
chl

这本书是不断赠送的礼物!
hayd 2014年

6

为了回应@Andy在这里发布的后续答案 ...

尽管我不能说哪个估计是正确的,哪个是错误的,但这两种模型之间的“突击定罪”和“枪支定罪”估计之间的不一致是否引起人们怀疑,二者对句子长度是否具有真正的因果关系?

我认为您的意思是参数估计值之间的差异使我们有理由相信,两个参数估计值都不代表真正的因果效应。我同意这一点,尽管我们已经有足够的理由怀疑这样的模型会产生真正的因果关系。

这是我的看法: 过度拟合的数据是有偏差的参数估计的来源,并且没有理由相信此偏差在估计特定因果效应时会抵消其他偏差源,因此,平均而言,它必须更好地估计因果效应而不会过度拟合数据。交叉验证可防止过度拟合,因此平均而言,它应改进因果关系的估计。

但是,如果有人试图说服我相信他们对观测数据的因果效应的估计,那么证明他们并没有过度拟合数据是低优先级的,除非我有充分的理由怀疑他们的建模策略可能具有过度适合。

在与我一起工作的社会科学应用程序中,我更加关注实质性问题,度量问题和敏感性检查。通过敏感性检查,我的意思是估计添加或删除术语的模型的变化,并估计具有相互作用的模型,从而使感兴趣的影响在各个子组之间有所不同。统计模型的这些变化在多大程度上影响我们要因果解释的参数估计?根据您要讲的因果关系,是否可以理解整个模型规范或子组中此参数估计的差异,或者它们暗示了例如选择驱动的效果。

实际上,在运行这些替代规范之前。写下您对参数估计值的看法。如果您感兴趣的参数估计值在各个子组或规格之间变化不大,那就太好了-在我的工作中,这比交叉验证更重要。但是影响我的解释的其他实质性问题仍然更加重要。


非常感谢您的参与!您的观点确实确实为我从未认真制定自己的因果模型中的交叉验证提供了非常直接的动力。IMO甚至会通过使用过度拟合的标签来卖掉自己一点点。例如,在初始探索性​​集合中,我可能会使用初始标度与对数标度上的自变量来查看方程之间的模型拟合。我确定对数刻度的模型更合适,然后在保留模型中使用它。通常不会认为这过于适合(在一个或另一个之间进行选择),续...
Andy W

但仍符合您在“我的建议”段落中建议的范式。
安迪W

5

我感谢大家的回答,但是这个问题已经发展到我不希望出现的问题,主要是关于因果推论的一般概念的文章,没有正确的答案。

我最初的目的是为了向受众介绍使用交叉验证进行因果推断的示例。我已经假设存在这种方法,因为使用测试样本并保留样本以评估效果估计值的可重复性的想法在我看来是合乎逻辑的。如John所述,我的建议与自举并没有什么不同,我会说它类似于我们用来验证结果的其他方法,例如子集特异性测试或非等价因变量(自举放宽了模型的参数假设,而子集以更通用的方式进行测试,以检查结果在各种情况下是否合乎逻辑)。这些方法均不能满足因果推理的其他答案标准,但我相信它们仍然对因果推理有用。

chl的评论是正确的,因为我对使用交叉验证的主张是对内部有效性的检查,以帮助进行因果推断。但我要求我们暂时放弃内部有效性和外部有效性之间的区别,因为它无助于进一步展开辩论。chl在流行病学中进行的全基因组研究的例子,我将考虑内部有效性较差的一个很好的例子,这种推断本身就令人怀疑。我认为基因组关联研究实际上就是我所要求的一个例子。您是否认为通过使用交叉验证可以改善基因与疾病之间的推论(就像只是将所有标记物放入一个模型并相应地调整p值一样?)

下面,我在问题中引用的Berk文章中粘贴了表格的副本。尽管被示出这些表说明使用在同一个模型逐步选择标准和因果推理的假逻辑,让假装没有模型中使用的选择标准,并在两个训练参数和支持样品进行测定的先验。这并不是让我感到不切实际的结果。尽管我不能说哪个估计是正确的,哪个是错误的,但这两种模型之间的“突击定罪”和“枪支定罪”估计之间的不一致是否引起人们怀疑,二者对句子长度是否具有真正的因果关系?知道这种变化没有用吗?如果我们通过保留样本来测试模型而没有损失,为什么我们不能使用交叉验证来改善因果推理(或者我错过了通过保留样本来失去的东西?) 替代文字


1
关于为什么对此不满意的注释将不胜感激。
Andy W

2
我将第二次@Andy并建议在投票时留下评论:了解问题出在哪里总是有帮助的。特别是在这种情况下:Andy W带着CW扩展评论回来了,我认为这为原始问题提供了进一步的支持。这里不需要在任何地方投票!
chl

1
标准误差/置信区间是否已经给您这种可变性的指示?您的测试集估算值包含在训练集中的标准置信区间内。我会认为小的标准误差和狭窄的配置项对于因果关系很重要。
概率

是的@probabilityislogic您是正确的。我相信当我提出这一点时,并不意味着您将CV应用于已经可用的数据集,而是应用于其他时间收集的数据集。我认为CV在这里可能有助于增强因果关系,但我仍然不清楚是否是这种情况。我只看到它在模型选择方面可以说是有用的,而不是以任何方式验证模型(例如,我在新数据上的模型产生非常紧密的拟合)。
安迪W

2
@ AriB.Friedman,让我想起了埃德·图夫特(Ed Tufte)的哲学标志关联不是因果关系,但肯定会有所帮助
安迪W

1

我想这是思考简历和因果推理之间关系的一种直观方法:(如果我错了,请纠正)

我一直认为CV是评估模型预测性能的一种方式。但是,在因果推论中,我们更关注与Occam的Razor(简约)等效的事物,因此CV将无济于事。

谢谢。


我提出这个问题的原因是因为我们不必将交叉验证仅视为评估模型预测能力的一种方式。出于许多潜在的原因,担心模型的结果(以及由此得出的推论)都是人工产物是很常见的。因此,我们希望检查结果的稳健性,我认为交叉验证可能是检验结果稳健性的有用背景。
Andy W 2010年

对不起,造成误解。
suncoolsu

无需道歉。我是一个建议的人,似乎很偶然,而交叉验证显然总是在您建议的上下文中使用。
安迪W

@suncoolsu,当我考虑因果推理时,我从不担心Occam的Razor orparsimony,您能解释一下与我的联系吗?
迈克尔·毕晓普
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.