因果推断与机器学习(修订版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1 定义因果关系的两种基本框架

在不同的研究领域中,因果关系(causality)具有相当广泛的定义。为了与其他领域中的定义(如格兰杰因果,即Granger causality)区别开,这里首先将因果关系定义为随机变量之间的一种关系,这是因为本书所介绍的因果推断和机器学习都源于一个以随机变量为基础的学科——统计学。

定义1.1 因果关系。

XY是两个随机变量。定义XY的因,即因果关系XY存在,当且仅当Y的取值一定会随X的取值变化而发生变化。

若要更好地理解定义1.1,需要知道因果关系是用来描述数据生成过程(data generating process,DGP)的。我们说XY的因,就是在说X是影响Y的生成过程的一个因素。如果改变了X的值,再用新的X来生成一次Y,那么Y的值就会改变。

举个例子,我们知道对一家餐厅的评价会影响它的销量。如果有关餐厅的评价上升了,我们很有可能会观测到它的销量也会随之上升。而与因果关系相对应的是统计关联(statistical association)或者相关性(correlation)。两个变量XY之间有相关性往往不是我们能判断它们之间有因果关系的依据。其中包括三种情况:XY的因、XY的果、XY有共同原因(common cause)。对于第三种情况,我们把这种不是因果关系的相关性叫作虚假相关(spurious correlation)。例如,夏天冰激凌店的销量会上升,冰激凌店里空调产生的电费也会上升。但我们知道电费的上升不会造成冰激凌销量的上升,反之亦然。如果在训练数据中虚假相关强于因果关系,那么虚假相关就有可能会被机器学习学到并用来预测。然而在训练集(training set)中成立的虚假相关可能会在那些分布与训练集不同的测试集(test set)中并不成立,从而引发机器学习模型泛化、解释性和公平性等一系列问题,相关内容将在后面章节介绍。

从上述介绍的内容中可以发现一个问题,那就是用传统的统计学中用到的各类概率分布:边缘分布(如PX))、联合分布(如PXY))或者条件分布(如PY|X)),无法直接定义因果关系。这其实也回答了大家关心的一个问题:为什么机器学习模型不可以直接用来解决因果推断问题?我们知道,机器学习模型是强大的概率分布拟合工具,它们可以从观测性数据(observational data)中学习到各种各样的概率分布。观测性数据是指通过观察性研究(observational study)所获取的数据。在观察性研究中,研究人员在数据搜集过程中不会去控制任何变量的值。观测性数据是最便于搜集的一种数据。与观察性研究相对应的则是随机控制实验(randomized controlled trial,RCT)。随机控制实验往往意味着昂贵的支出、大量的时间,甚至可能引发伦理问题。比如,机器学习社区中被大量研究的深度学习模型都是强大的拟合数据分布的工具,它们能够很好地根据观测到的数据样本对数据的分布进行拟合。例如,基于对抗生成网络(generative adversarial networks,GAN)[2]和视觉Transformer(vision Transformer)[3]的深度神经网络模型可以生成栩栩如生的图片。

然而,它们能够拟合的概率分布无法直接表示因果关系。从上述内容可知,传统的概率分布并不能定义因果关系,因此,接下来将介绍两种被广泛使用的框架。这两种框架不但提供了对因果关系严谨的定义,建立了概率分布和因果关系之间的连接,还因此成为我们解决因果推断问题的利器。

下面将重复使用一个例子来解释一些概念,以方便读者理解相关内容。本书将考虑一个研究用户评价对餐厅客流量影响的场景。在很多网站上,如国内的大众点评网(网址见“链接1”)和美国的Yelp(网址见“链接2”),用户可以留下一段文字来描述自己对餐厅的评价,并且可以在每个评价中给每家餐厅打1~5颗星。其中,1颗星代表最差,5颗星代表最好。经济学家们曾就这种星级评分对餐厅客流量的影响进行了研究[4]。本章将利用这个例子来解释因果推断中的概念。在这个例子中,评分就是处理变量(treatment variable),而客流量就是结果变量(outcome variable)。为了方便理解,我们只考虑正负两种评分,即处理变量T∈{0,1}。当一家餐厅收获了正评价(大于3分)时,它就属于实验组(T=1);如果它遭遇了负评价(小于或等于3分),它就属于对照组(T=0)。在此同时假设客流量为一个非负整数。注意,这种设置并不一定适用于实际的研究,只是方便作为例子说明概念。