结构因果模型
两大因果框架\(^{[1]}\)
因果科学中,目前使用范围最广的模型有两个,一个是著名统计学家DonaldRubin教授在1978年提出的潜在结果模型(Potential Outcome Model);另一个是图灵奖获得者Judea Pearl教授在1995年提出的结构因果模型(Structural Causal Model,SCM)。这两个框架在不同的领域都有不同侧重的应用:计算机领域更多的是采用Pearl的框架;社会科学、计量经济学、流行病学等领域主要采用的则是Rubin的这套框架,这两套框架的本质其实是相同的,都是在观测数据中推测出因果关系,但采用的思想原理有所不同:SCM的关键在于图模型,来源于贝叶斯网络,将Bayes网络加上外部干预,用来定义外部干预的因果作用和描述多个变量之间的因果关系,利用因果网络不仅能定量评价因果作用,还能定性确定混杂因素,用于从数据挖掘因果关系;RCM的关键在于潜在结果,来源于统计学,该模型主要用在原因和结果变量已知的前提下,定量评价原因变量对结果变量的因果作用。

Figure1 Judea Pearl, Donald Rubin
由于SCM的因果图与强化学习的结构图有着天然的相似性,两者的结合会碰撞什么的火花?因此本文作为Judea Pearl的《Causal Inference In Statistics》的阅读笔记,记录结构因果模型的主要思想。结构因果模型的主要研究内容如下图所示:

Figure2 结构因果模型主要研究内容
统计及因果模型\(^{[2]}\)
我们需要理解数据,进而总结出经验与教训以指导行动与决策。因果关系与传统的统计学结合后能揭示世界的运行机制,仅凭传统方法是无法做到的。由辛普森悖论我们可以得出:相关不是因果,所以不能仅根据数据确定因果关系。本书对因果关系的定义为:如果变量\(Y\)的值以某种形式依赖于变量\(X\)的值,则变量\(X\)就是变量\(Y\)的原因。
概率与统计
\[\begin{matrix} P\left( A \middle| B,C \right) = P\left( A \middle| C \right)\ and\ P\left( B \middle| A,C \right) = P\left( B \middle| C \right) \tag{1} \\ \end{matrix}\]
如果两个事件在给定另一个条件时独立,则称其关系为【条件独立】;若无需给定任何条件则称其关系为【边缘独立】。式(1)表示条件独立。
结构因果模型
因果结构假设
结构因果模型(SCM)包含两个变量集\(U\)和\(V\)以及一组函数\(f = \{ f_{X}:W_{X} \rightarrow X|X \in V\}\),其中\(W_{X} \subseteq (U \cup V) - \{ X\}\)。
变量集\(U\)中的变量称为外生变量,有时也被称为误差项或省略因素,它可能是未知 or/and 随机的,我们并不关心它们变化的原因;变量集\(V\)中的变量称为内生变量,每个内生变量\(V\)与其它内生变量以及外生变量的关系由其对应函数\(f_{X}\)定量地给出,如果所有外生变量的取值都是已知的(一般不可能做到),则每个内生变量的取值也可以确定下来。
图模型是定性的,包含的信息比结构因果模型更少,它允许我们快速方便地确定变量间的关系,而且现实中因果关系的知识往往也是定性描述的。本书主要讨论有向无环图的结构因果模型。
乘积分解
联合分布有三种表达方式,一是建立表格,为所有可能的取值组合都分配一个概率值;二是利用结构因果模型的 n 个函数+误差项的概率分析计算出联合分布的所有概率;三是图模型+乘积分解法则。方式一在处理多变量问题时需要巨大的存储空间;方式二中函数形式和分布可能是未知的或者难以表达的。
\[\begin{matrix} P\left( x_{1},x_{2},\ldots,x_{n} \right) = \prod_{i}^{}{P\left( x_{i} \middle| pa_{i} \right)} \tag{2} \\ \end{matrix}\]
乘积分解法则指出,对于任意有向无环图模型,变量的联合分布均可通过式(2)所示的各节点的条件分布概率之积计算出,此时我们不需要像方式一那样创建一个巨大的概率表,而仅需要保存多个小规模的条件概率分布表,必要时再调用计算即可。
图的深层意义是将一个复杂的"高维"分布估计问题变为多个简单的"低维"分布估计问题,我们不再需要数据覆盖全体变量的所有取值组合来计算频次,而仅仅需要在每个子问题中考虑部分变量的取值组合,对于每个问题而言可用的数据更多了,频次统计的准确性由此得到了提升。
图模型及其应用
模型与数据的联系
通过图模型的结构可以预测数据中的独立性质。通过数据中的独立性质可以判断假设的模型是否正确。两者是一种假设检验的关系,我们通过数据来判断接受该图模型的概率。
链结构与分叉结构

Figure3 链结构
链结构是指由三个节点和两条边组成,并且中间变量有一条边进入和一条边射出的结构;链结构中的条件独立性是指对任意图模型而言,如果两个变量\(X\)和\(Z\)之间只有一条单向路径且\(Y\)是截断该路径的任何一组变量,则\(X\)和\(Z\)在给定\(Y\)的条件下独立。

Figure4 分叉结构
分叉结构是指由三个节点和两条边组成,并且有两个箭头从中间变量射出的结构;分叉结构中的条件独立性是指对任意图模型而言,如果变量\(X\)是\(Y\)和\(Z\)的共同原因,并且\(Y\)和\(Z\)之间只有一条路径,则 \(Y\)和\(Z\)在给定\(X\)的条件下独立。
因果模型除了可以看作解释了数据背后的因果关系,也可以看作数据产生的机制。即便我们只知道图结构,不知道完整的结构因果模型,我们也可以了解到数据中变量的独立性;特别地,不同的结构因果模型可以对应相同的图结构。
对撞结构

Figure5 对撞结构
对撞结构是指由三个节点和两条边组成,并且其中一个节点接收来自两个节点射出的边的结构;对状结构中的条件独立性是指对任意图模型而言,如果变量\(Z\)是变量 X和\(Y\)之间的对撞节点,且\(X\)和\(Y\)之间只有一条路径,则\(X\)和\(Y\)无(需)条件(就)独立,但给定\(Z\)或\(Z\)的任何子孙为条件就变得相互依赖(以共同效应为条件时两个独立变量会变得相互依赖)。
对撞结构中的条件独立性对因果关系的研究非常重要,可以用于测试数据集是否由某个因果模型生成,从数据中发现模型;或者在混杂情况下确定要检测的变量以及如何估计因果效应(后门准则),从而彻底解决辛普森悖论,这些都会在后文中讲到。
d-分离
前面借助链结构,分叉结构和对撞结构判定条件独立性的三条准则都要求两个变量之间只有一条路径,但在大多数的图模型中,变量之间可能会有多条路径,每条路径上可能有多个不同结构,此时我们可以使用d-分离(d for "dimensional",也即有向分离)来判定两个变量的依赖关系。
d-分离:当且仅当以下条件成立时,一条路径被一组节点\(Z\)阻隔:
路径中包含链结构或分叉结构,且中间节点属于\(Z\)
路径中包含对撞结构,且对撞节点的及其子孙节点都不属于\(Z\)
路径中包含对撞结构,且Z为空
当\(X\)和\(Y\)之间的所有路径都被\(Z\)阻断时,我们说\(X\)和\(Y\)是d-分离的,\(X\)和\(Y\)以\(Z\)为条件独立(\(Z\)为空集则为边缘独立);否则\(X\)和\(Y\)是d-连通的,两个变量有可能是相互依赖的。
实际上,拿到一个图模型,要判断两个变量的依赖关系,首先就要找出它们之间的所有路径,然后逐条路径分析。如果要边缘独立(没有条件变量),就看路径中有没有对撞结构,每条路径都有,那就边缘独立;如果要条件独立,就对路径中的每个节点逐一分析,如果对撞节点及其子孙不属于条件变量,并且有非对撞节点属于条件变量,那路径就被阻断;全部路径均被阻断就可以得到条件独立性,本质上还是利用前面两节给出的三种结构的条件独立性。
模型检验与因果搜索
因果模型在对应数据集中蕴含可被检验的蕴含式:\(p \rightarrow q\),当且仅当\(p\)为真且\(q\)为假时该命题为假。我们可以用d-分离检验和排除很多可能的模型,最终得到可以产生数据集的若干模型,也即我们可以从数据集出发反推出因果模型来解释数据。
假设\(p\):图模型\(G\)视作生成数据集\(S\)的因果模型
结论\(q\):由d-分离准则就可以从\(G\)中得到若干变量之间的条件独立,将这种条件独立设为\(q\)
我们可以直接将联合分布进行参数化(比如线性高斯模型),在估计参数后,我们可以评估观测样本由该模型生成的可能性;这种模型检验是全局性的,相比而言,d-分离是一种局部性的模型检验,存在以下优点:
d-分离是一种非参数方法,不依赖于具体的变量间函数;
d-分离是一种局部性检验方法,它允许我们识别模型中的特定区域并修复该区域(添加/删除哪些边),得到新的模型;
全局性方法(如直接拟合联合分布)只能告诉我们模型是否和数据匹配,无法告知我们具体信息。
如果联合分布不可计算,比如某些误差项相关或者某些变量不可观测,全局性方法就不能检验模型的任何一个部分,此时局部性方法仍然可以在模型的其余部分工作。
与数据集相符,能经过检验的模型可能不止一个,这是因为有些图有不可区分的蕴含式,这样的一组图称为等价类,比如两个有相同的的边(方向可能不同)以及相同的对撞结构的图必然同属一个等价类,并且有着相同的d-分离条件集,从而有着相同的可检验的蕴含式集(比如:\(G_{1}:A \rightarrow B \leftarrow C \rightarrow D\)和\(G_{2}:A \rightarrow B \leftarrow C \leftarrow D\))
干预的效果
干预
许多统计研究的最终目的是预测干预措施的效果,随机对照试验是解决该问题的一个黄金准则,除了输入变量,其它影响输出变量的因素要么不变,要么随机变化,所以输出变量的任何改变必然是由输入变量的改变引起的。在无法进行随机对照试验的情况下,我们可以实施观测性研究,也即仅仅利用记录下的数据进行分析,不进行真实的干预。这种研究方法的难点在于如何将因果关系从相关关系中提取出来。

Figure6 X作为条件概率和干预变量
应当注意的是,对变量\(X\)进行干预和以变量\(Y\)为条件是不同的。如果我们对变量 \(X\)进行干预,图模型会发生相应的改变,指向\(X\)的入边被删除了,研究的对象仍然是整体,但\(X\)不再为响应其他变量的变化而变化;而如果我们要研究条件概率,则模型仍然保持原本的形式。条件概率只是将关注的问题缩小为原问题的子集,改变了对图模型的关注重点,没有改变图模型本身。
为了区分,我们引入\(do\)算子,用\(do(X = x)\)表示对变量\(X\)的干预(将其固定为\(x\))。因此\(P(Y = y|X = x)\)表示在\(X = x\)的条件下\(Y = y\)的概率;\(P(Y = y|do(X = x))\)表示通过干预使\(X = x\)时\(Y = y\)的概率。
一种特殊的情况是\(X\)没有入边,此时对\(X\)进行干预不会影响图模型,可以直接用条件概率计算因果效应:
\[\begin{matrix} P\left( Y = y \middle| do(X = x) \right) = P\left( Y = y \middle| X = x \right)\tag{3} \\ \end{matrix}\]
如何从观测数据中推测出因果关系,有两点需要注意:
假设的图应当是实际问题的有效表示(否则分析就是无效的);
假设的干预不会造成其它影响(否则干预的就不止一个变量了),如果干预会改变其它变量的值,则这种改变必须在模型中表示出来。
校正公式
我们首先利用概率定义平均因果效应\(ACE = P\left( Y \middle| do(X = 1) \right) - P(Y|do(X = 0))\)。图Figure 6中给出了对\(X\)进行干预后的模型,我们使用\(P_{m}\)表示干预后模型的概率,也称为操纵概率,\(P_{m}\)的定义如下:
\[\begin{matrix} P_{m}\left( Y = y \middle| X = x \right) = P\left( Y = y \middle| do(X = x) \right)\tag{4} \\ \end{matrix}\]
此外,我们还需要利用两个不变性:
边缘概率\(P(Z = z)\)在干预前后不变,因为移除\(Z\)到\(X\)的边并不影响确定\(Z\)值的过程
条件概率\(P(Y = y|Z = z,X = x)\)在干预前后不变,因为无论\(X\)是自发变化还是被控制,\(Y\)对\(X\)的响应函数\(Y = f(x,z,u_{y})\)都不变
该不变性表示为如下两个方程:
\[\begin{matrix} P_{m}\left( Y = y \middle| Z = z,X = x \right) = P\left( Y = y \middle| Z = z,X = x \right)\tag{5} \\ \end{matrix}\]
\[\begin{matrix} P_{m}(Z = z) = P(Z = z)\tag{6} \\ \end{matrix}\]
又因为\(Z\)和\(X\)在干预后是d-分离的,因此\(P_{m}\left( Z = z \middle| X = x \right) = P_{m}(Z = z) = P(Z = z)\),因此可以进行如下转换来消除\(do\)算子:
\[{ P\left( Y = y \middle| do(X = x) \right)}{ = P_{m}\left( Y = y \middle| X = x \right)}{= \sum_{Z}^{}{P_{m}\left( Y = y \middle| X = x,Z = z \right)P_{m}\left( Z = z \middle| X = x \right)} }{= \sum_{Z}^{}{P_{m}\left( Y = y \middle| X = x,Z = z \right)P_{m}(Z = z)} }\begin{matrix} = \sum_{Z}^{}{P\left( Y = y \middle| X = x,Z = z \right)}P(Z = z) (7) \end{matrix}\]
式(7)被称为校正公式,意义在于:
移除了\(do\)算子,无需真实干预
把\(P_{m}\)换回\(P\),观测数据都是由\(P\)生成的
式(7)的其实是在\(Z\)的每一种取值下计算\(X\)和Y关系,然后再求平均,整个过程被定义为"对Z的校正"。
校正OR不校正
由式(7)导出如下更一般化的校正公式:
\[\begin{matrix} P\left( Y = y \middle| do(X = x) \right) = \sum_{Z}^{}{P\left( Y = y \middle| X = x,PA = z \right)P(PA = z)}\tag{8} \\ \end{matrix}\]
如果对该式乘上\(P(X = x|PA = z)\)再除以\(P(X = x|PA = z)\),可以得到另一个形式:
\[\begin{matrix} P\left( y \middle| do(x) \right) = \sum_{Z}^{}\frac{P(X = x,Y = y,PA = z)}{P\left( X = x \middle| PA = z \right)}\tag{9} \\ \end{matrix}\]
其中\(P\left( X = x \middle| PA = z \right)\)称为倾向分数,表示逆概率权重。
校正公式需要找出\(X\)的所有父节点\(PA\),并计算\(PA\)的所有可能取值组合下的条件概率,在现实中我们往往无法做到这一点(比如\(PA\)中存在不可观测的变量),幸运的是,我们可以通过校正模型中的其它变量达到同样的目的(后门准则)。
多重干预和截断规则
由式(9)可得,在联合概率可得的情况下,我们只需要知道所有的条件概率\(P(x|z)\)即可预测出对\(X\)干预的效果。类似地,当我们希望对多个变量进行干预,同时指定多个变量值时,我们可以先根据乘积分解法写出干预前的联合分布,然后再删除与干预集\(X\)对应的元素,得到:
\[\begin{matrix} P\left( x_{1},x_{2},\ldots,x_{n} \middle| do(x) \right) = \prod_{i}^{}{P\left( x_{i} \middle| pa_{i} \right)\ for\ all\ i\ with\ X_{i}\ not\ in\ X}\tag{10} \\ \end{matrix}\]
该公式称为截断公式,或g-公式,当研究干预集\(X\)对某个具体变量的因果效用时,只需把\(x_{1},x_{2},\ldots,x_{n}\)的无关变化求和消掉即可。
后门准则
校正公式(8)告诉我们,要估计一个变量对另一个变量的因果效应就要对该变量的父节点变量进行校正。然而, 在实际问题中,变量的父节点可能是不可观测的,此时要计算因果效应就需要找到一个替代的变量集合用于校正,这正是后门准则的作用。后门路径给出了替代集合\(Z\)的两个要求:
\(Z\)中不能包含\(X\)的后代节点
\(Z\)阻隔了\(X\)和\(Y\)之间所有包含指向\(X\)的箭头的路径

Figure7 后门路径图
以Figure7为例,当研究\(X\)对\(Y\)的因果效应时,根据校正公式需要对\(Z\)进行校正,但由于\(Z\)不可观测,校正公式无法使用。根据后门准则,\(W\)阻隔了\(X\)对\(Y\)的后门路径,只保留了一条因果路径,因此可通过校正\(W\)来计算因果效应:
\[\begin{matrix} P\left( Y = y \middle| do(X = x) \right) = \sum_{w}^{}{P\left( Y = y \middle| X = x,W = w \right)P(W = w)}\tag{11} \\ \end{matrix}\]
后门准则的优点在于:
可以选择观测成本较低的/错误较少的/更易计算的变量(集)来做校正;
可以利用等价性检验模型是否准确,如果模型与数据不相符,那它很可能是错误的。
前门准则

Figure8 前门路径图
后门准则提供了一个寻找校正变量的简单方法,但并不是所有问题都能找到符合后门准则的变量。如Figure 8(a)所示,由于\(U\)无法观测,因此我们无法d-分隔\(X\)到\(Y\)的后门路径,因此无法确定\(X\)和\(Y\)的相关性中多少归因于\(X\)多少归因于\(U\)。
为了解决这个问题,我们引入中介变量\(Z\),对应Figure 8(b),尽管此时仍然不符合后门准则,但我们可以使用前门准则------通过两次后门准则计算出因果效应。
前门路径给出了替代集合\(Z\)的三个要求:
\(Z\)分隔了所有\(X\)到\(Y\)的离散路径
没有从\(X\)到\(Z\)的后门路径
所有从\(Z\)到\(Y\)的后门路径都被\(X\)阻隔
前门准则:如果\(Z\)满足上述三条前面路径,则\(X\)和\(Y\)之间的因果效应被定义为如下公式:
\[\begin{matrix} P\left( y \middle| do(x) \right) = \sum_{z}^{}{P\left( z \middle| x \right)}\sum_{x^{'}}^{}{P\left( y \middle| x^{'},z \right)P\left( x^{'} \right)}\tag{12} \\ \end{matrix}\]
式(12)的成立由下方三个公式进行推导:
\[\begin{matrix} P\left( Y = y \middle| do(X = x) \right) = \sum_{Z}^{}{P\left( Y = y \middle| do(Z = z) \right)P\left( Z = z \middle| do(X = x) \right)}\tag{13.1}\\ \end{matrix}\]
\[\begin{matrix} P\left( Z = z \middle| do(X = x) \right) = P\left( Z = z \middle| X = x \right)\tag{13.2} \\ \end{matrix}\]
\[\begin{matrix} P\left( Y = y \middle| do(Z = z) \right) = \sum_{x}^{}{P\left( Y = y \middle| Z = z,X = x \right)}\tag{13.3} \\ \end{matrix}\]
也就是说\(X\)对\(Y\)的因果效应是可以通过中介\(Z\)来传递的,\(X\)对\(Z\)的影响乘上\(Z\)对\(Y\)的影响就可以得到\(X\)对\(Y\)的影响。式(13.1)的计算过程首先通过干预\(X\)来得到\(Z\)的取值\(z\),这就相当于把\(Z\)干预为\(z\)。两个因果效应分别可以使用式(13.2)和(13.3)的后门校正公式计算出来,这就是所谓的"两次使用后门准则"。
前门准则指出了在无法使用后门准则时如何识别矫正变量,找出这些变量后利用前门准则即可计算出因果效应。式(12)的\(x\)和\(x^{'}\)应当注意区分,\(x\)是指把\(X\)的干预值,而\(x^{'}\)是式(13.3)使用后门准则时的校正值。
特定变量效应和条件干预
特定变量效应
前面小节的因果效应是从整体考虑的,但有些情况下我们会对整体的某个子集感兴趣,此时需要计算z-特定效应:
\[{ P\left( Y = y \middle| do(X = x),Z = z \right) }\begin{matrix} = \sum_{x}^{}{P\left( Y = y \middle| X = x,S = s,Z = z \right)P\left( S = s \middle| Z = z \right)} \tag{14} \\ \end{matrix}\]
与校正公式(7)相比,将校正变量由\(Z\)换成了\(S\),特定效应可看作"部分的整体"。
条件干预
基于特定变量效应,我们可以进一步讨论条件干预的因果效应,也即被干预的变量\(X\)以别的\(Z\)为条件而动态变化时的因果效应\(P(Y = y|do(X = g(Z))\)。应当注意到,识别条件干预模型等价于识别特定变量效应之和,因此条件干预模型定义如下:
\[{P\left( Y = y \middle| do\left( X = g(Z) \right) \right) }{ = \sum_{z}^{}{P\left( Y = y \middle| do\left( X = g(Z) \right),Z = z \right)}P\left( Z = z \middle| do\left( X = g(Z) \right) \right) }\begin{matrix} = \sum_{z}^{}{P\left( Y = y \middle| do\left( X = g(z) \right),Z = z \right)P(Z = z)} (15) \\ \end{matrix}\]
其中第一个等式利用了条件概率的定义:
\[\begin{matrix} P\left( Y = y \middle| do\left( X = g(Z) \right),Z = z \right) = \frac{P\left( Y = y,Z = z \middle| do\left( X = g(Z) \right) \right)}{P\left( Z = z \middle| do\left( X = g(Z) \right) \right)}\tag{16} \\ \end{matrix}\]
第二个等式利用了\(Z\)发生于\(X\)前这一事实,所以对\(X\)的干预不影响\(Z\)的分布:
\[\begin{matrix} P\left( Z = z \middle| do\left( X = g(Z) \right) \right) = P(Z = z)\tag{17} \\ \end{matrix}\]
条件干预中的\(Z\)与式(7)中的校正变量\(Z\)的不同之处在于,条件干预只影响自变量,而混杂变量同时影响因果。
逆概率加权
前面几节中,无论时后门准则、前门准则还是条件干预,只要能找到一组符合其中一个准则的协变量\(Z\),就可以代入校正公式中计算出所需的因果效应。但从公式上看,对\(Z\)的校正需要\(Z\)的所有取值组合下的条件概率。如果\(Z\)的取值组合有很多(随着 \(Z\)中元素数量指数级增长),那么校正公式的计算量也会越来越大,需要的数据也会越来越多;如果每个\(Z\)只有很少的样本,那么估计的条件概率将会非常不可靠。
针对上述问题,我们将式(8)转化为式(9),我们如果能获得函数\(g(x,z) = P(X = x|Z = z)\)的可靠估计,那么就可以计算出因果效应。尽管重加权后仍需对\(Z\)求和,但此时仅考虑数据集中存在的\(z\),无需穷尽\(Z\)的所有取值组合。注意,逆概率加权仅在\(Z\)满足后门准则时有效,否则会引入更多偏差。
中介

Figure9 中介变量的影响
前面讨论了如何估计\(X\)对\(Y\)的效应,但在现有问题中,我们更能希望区分\(X\)对\(Y\)的直接和间接效应。例如在Figure 9第一幅图中,为了计算性别对雇佣的直接影响,我们只需计算\(P\left( Y = hiring \middle| X = male,Z = high\ qualificataion \right) - P(Y = hiri|X = female,Z = high\ qualificatian)\)。但在Figure 9中,由于潜在混杂因子\(Income\)的影响,我们无法直接计算出直接效应,因为无论是否控制变量\(Z:Z \leftarrow Qualification\),\(Gender\)和\(Hiring\)之间均会存在多条因果路径:
以\(Z\)为条件,\(Z\)为对撞节点,打开伪路径\(X \rightarrow Z \leftarrow I \rightarrow Y\)
不以\(Z\)为条件,间接效应通过\(X \rightarrow Z \rightarrow Y\)传播,无法计算直接效应
针对这种情况我们可以直接计算受控直接效应(CDE or DE):
\[\begin{matrix} CDE = P\left( Y = y \middle| do(X = x),do(Z = z) \right) - P\left( Y = y \middle| do\left( X = x^{'} \right),do(Z = z) \right)\tag{18} \\ \end{matrix}\]
在该公式中我们直接控制了中介变量\(Z\)的取值,而不仅仅是以\(Z\)为条件。接下来就是消除两个\(do\)算子。
\(X\)无后门路径,所以\(P\left( Y = y \middle| do(X = x),do(Z = z) \right) = P(Y = y|X = x,dp(Z = z))\),消掉了一个\(do\)
\(Z\)有两条后门路径:
\(Z \leftarrow X \rightarrow Y\)被条件变量\(X\)阻断
\(Z \leftarrow I \rightarrow Y\)可以通过校正变量\(I\)阻断
因此我们可以直接通过下式计算出受控直接效应:
\[\begin{matrix} \sum_{i}^{}{\left\lbrack P\left( Y = y \middle| X = x,Z = z,I = i \right) - P\left( Y = y \middle| X = x^{'},Z = z,I = i \right) \right\rbrack P(I = i)} \tag{19} \\ \end{matrix}\]
当模型满足这两个条件时,受控直接效应是可识别的:
1.存在变量(集)\(S_{1}\)阻断了中介变量\(Z\)到\(Y\)的所有后门路径;
2.在删除掉所有指向\(Z\)的箭头后,存在变量(集)\(S_{2}\)阻断了\(X\)到\(Y\)的所有后门路径。
线性系统中的因果推断
本节内容在RCM中讨论较多,因此本节重点讨论结构因果模型与线性回归模型的侧重点以及互相转化的方式。利用线性系统来做因果分析,能有效地扩展非参数方法。书中模型给了一个很强的假设,即:变量之间的关系是线性的,所有误差项符合高斯分布。
结构系数与回归系数
回归方程是描述性的,本身不对因果做假设。回归系数和结构系数本质上是不同的,前者是统计的,后者是因果的。尽管回归方程本身不包含因果关系,但前面讨论的因果效应基本上都是用条件概率计算出来的,而在线性系统中,这些条件概率可用回归系数得出(条件概率->条件期望->回归方程->回归系数),而回归系数又可以通过最小二乘得到。
如果变量\(Y\)与\(X_{i}\)在其他所有\(X_{j}\)条件下独立,那么回归方程中的\(r_{i}\)就应当等于零。可以利用该性质检验模型。
结构系数的因果解释
在线性系统中,不管扰动是否相关,受控直接效应的计算结果均是图模型中\(X \rightarrow Y\)的结构系数。在线性系统中,\(X\)对\(Y\)的总效应是\(X\)到\(Y\)的每条非后门路径上的各边结构系数的乘积之和。
识别结构系数和因果效应
可识别性问题:从观测数据中识别出结构系数,进而估计总效应和直接效应。其实就是把估计系数简化为估计回归系数。下面给出三个例子来说明如何根据观测数据利用回归方程来估计结构系数。
x->y没有直接效应

Figure10 没有直接效应
要计算\(X\)对\(Y\)的总效应,我们可以直接利用后门准则得出应该校正变量\(T\),此时需要拟合的回归方程为\(y = r_{X}X + r_{T}T + \epsilon\),得到的\(r_{X}\)就是总效应,由于没有\(X\)到\(Y\)的边,所以\(X\)到\(Y\)的总效应为零。
x->y有直接效应

Figure11 有直接和间接效应
与计算总效应略有不同,计算直接效应的步骤为:
直接删除\(X\)到\(Y\)的边,记作\(G_{a}\)
在\(G_{a}\)中找出能使\(X\)和\(Y\)d-分离的变量集\(W\)
干预\(W\),用\(X\)和\(W\)回归\(Y\),得到的方程中\(X\)的系数就是直接效应
上述过程也称为可识别性的回归准则(The Regression Rule for Identification)。在上面的例子中,\(W\)就是符合要求的变量,所以回归方程为\(y = r_{X}X + r_{W}W + \epsilon\),得到的 \(r_{X}\)就是直接效应。
根据已有的观测,我们可以找到两个有趣的发现。第一,在线性系统中,回归是识别和估计因果效应的主要手段。为了预测效应,我们要做的有两点(1)什么变量需要被包含进该等式(2)哪些变量的系数代表了感兴趣的效应;第二,如果\(U_{i}\)相互独立,并且图中所有变量都可被观测,那么每一个结构系数都可以被识别出来。
x->y间接效应无法识别

Figure12 间接效应无法识别
\(X\)有一条后门路径,并且该路径上有不可观测变量,此时计算直接效应的步骤如下:
直接删除\(X\)到\(Y\)的边得到\(G_{a}\)
在\(G_{a}\)中找出工具变量\(Z\),它跟\(X\)是d-连通的,并且跟\(Y\)是d-分离的
用 \(Z\)分别对\(X\)和\(Y\)回归,得到\(y = r_{1}z + \epsilon_{1}\)和\(x = r_{2}z + \epsilon_{2}\)
算出直接效应\(\alpha = r_{2}/r_{1}\)
线性系统的中介
在线性系统中,中介分析要比非线性或者非参数化系统中的分析都更简单。3.8.3节已经给出了如何对观测数据使用回归分析来得到\(X\)对\(Y\)的总效应\(\tau\)和直接效应\(DE\),只要效应可识别,那么干预问题就可以规约为估计相关系数。而在线性系统中,间接效应可以直接用插值\(IE = \tau - DE\)得到。
在非线性系统中,直接效应定义为\(DE = P\left( Y = y \middle| do(X = x),do(Z = z) \right) - P(Y = y|do\left( X = x^{'} \right),do(Z = z))\)。即使该效应可以识别,且能通过\(do\)操作规约为条件期望,效应仍然依赖于特定取值\(x,x^{'},z\)。而且,非线性系统中,间接效应不能直接由\(\tau - DE\)得到。
反事实及其应用\(^{[3]}\)
反事实
反事实和干预的本质区别是什么?反事实研究的是发生在两个不同世界中的事情,是过去未曾发生的事情;干预研究的是一个世界中的事情,目的在于从观测数据中发现涉及干预的因果关系,或干预现在预测未来。干预是真实发生的,而反事实是未曾发生的。
反事实的定义与计算
反事实的结构性解释
对于外生变量\(U = u\)唯一确定的个体,用\(X(u),Y(u)\)表示此时内生变量\(X\)和\(Y\)的唯一观测值。反事实语句:在外生变量\(U = u\)不变的情况下,如果\(X\)取值为\(x\)则\(Y\)取值为\(y\)的情况可记作\(Y_{x}(u) = y\)。原事实的结构方程定义如下:
\[\begin{matrix} X = aU\tag{20.1} \\ \end{matrix}\]
\[\begin{matrix} Y = bX + U\tag{20.2} \\ \end{matrix}\]
当我们计算反事实时,对应的结构方程为:
\[\begin{matrix} X = x\tag{20.3} \\ \end{matrix}\]
\[\begin{matrix} Y_{X} = bX + U\tag{20.4} \\ \end{matrix}\]
按照上述结构方程,尽管反事实时假设的,但并非是不可计算的,因为他仍然遵循模型定下的结构。每个结构方程都为所有可能的事实赋予了确定的值。
干预时将\(X\)固定为\(x\)和反事实计算时将\(X\)替换为x有何不同?两者是等价的,但在干预时我们只考虑了计算\(E(Y|do(X = x))\)或者\(P(Y|Do(X = x))\)这样的概率真实值;而反事实则考虑了个体水平,真正计算了对\(U = u\)的个体进行干预\(X = x\)时得到的假设值\(Y_{x}(u)\)。
反事实的基本定理
反事实遵循两条基本原则:
\[\begin{matrix} Y_{x}(u) = Y_{M_{x}}(u)\tag{21} \\ \end{matrix}\]
\[\begin{matrix} if\ X = x,then\ Y_{x} = Y\tag{22} \\ \end{matrix}\]
式(21)为反事实的定义,将反事实问题\(Y_{x}(u)\)定义为"修改后的模型\(M_{x}\)中\(Y\)的解",其中\(M_{x}\)表示用\(X = x\)替换原模型结构方程后得到的模型。
\[\begin{matrix} Y + {XY}_{1} + (1 - X)Y_{0}\tag{23} \\ \end{matrix}\]
反事实的三个步骤
反事实的三个步骤:
溯因:用证据\(E = e\)确定\(U\)的取值\(u\)
作用:修改模型\(M\),将变量\(X\)对应的方程替换为\(X = x\),得到修改的模型\(M_{x}\)
预测:使用\(M_{x}\)和\(U = u\)计算出\(Y\)的取值,也即\(Y_{x}(u)\)
非确定性的反事实
反事实并不一定是确定性的,它可能以某概率发生。比如证据可能对应总体中的一个小群体,无法确认一个唯一的个体\(u\),这个小群体中的每个个体有着不同的\(u\),对应不同的外生概率\(P(U = u)\),这就为内生变量也引入了概率分布。
与确定性模型不同,此时我们感兴趣的问题可能是:假定观测到个体特征\(E = e\)(不一定包含所有的内生变量),如果当初\(X\)取值为\(x\),那该个体的\(Y\)的期望是多少?也即求\(E(Y_{X = x}|E = e)\)。
反事实的图形化表示

Figure13 反事实的图形化
如何通过三部法修改因果模型:移除所有指向\(X\)的边,将\(X\)到\(Y\)的路径上的节点替换。此时影响\(Y_{x}\)的变量就是在\(M_{x}\)的父节点集以及\(X = x\)到\(Y_{x}\)路径上节点的父节点,在Figure 19中就是\(\{ Z_{3},W_{2},U_{3},U_{Y}\}\),其中\(U_{3}\)和\(U_{Y}\)分别是\(W_{3}\)和\(Y_{x}\)的外生变量。
后门准则的反事实解释(\(X\)的条件可忽略性定理):在原模型\(M\)上满足后门准则的变量(集)\(Z\)在\(M_{x}\)上能阻断\(X\)到\(Y_{x}\)的路径。因此在给定\(Z\)的条件下,反事实\(Y_{x}\)条件独立于变量\(X\)。
\[\begin{matrix} P\left( Y_{x} \middle| X,Z \right) = P\left( Y_{x} \middle| Z \right)\tag{24} \\ \end{matrix}\]
当我们需要从观察研究中估计反事实的概率时,该定理就非常有用了,它表明我们可以用校正公式来计算反事实:
\[{ P\left( Y_{x} = y \right) = \sum_{z}^{}{P\left( Y_{x} \middle| Z = z \right)P(z)} }{ = \sum_{z}^{}{P\left( Y_{x} \middle| Z = z,X = x \right)P(z)} }\begin{matrix} = \sum_{z}^{}{P\left( Y = y \middle| Z = z,X = x \right)P(z)} (25) \\ \end{matrix}\]
实验模型中的反事实
理论上,我们仅有的反事实与观测数据之间的联系就是式(22)的一致性原则,除此之外,个体的大部分反事实都是无法观测的。幸运的是,我们可以从群体水平上了解这些反事实的信息,估计它们的概率和期望。
线性系统的反事实
令\(\tau\)为\(X\)对\(Y\)总体效应的的差值\(\tau = E\left\lbrack Y \middle| do(x + 1) \right\rbrack - E\lbrack Y|do(x)\rbrack\),那么对于任意\(Z = e\),我们可以得到\(E\left\lbrack Y_{X = x} \middle| Z = e \right\rbrack = E\left\lbrack Y \middle| Z = e \right\rbrack + \tau(x - E\lbrack X|Z = e\rbrack)\)
在线性系统中,给定\(Z = e\),只要\(E(Y|do(X = x))\)可识别,则任何形如\(E(Y_{X = x}|Z = e)\)的反事实都是可识别的。
参考文献
[1] 苗旺, 刘春辰, 耿直. 因果推断的统计方法. 中国科学(数学), 2018,48(12):1753-1778.
[2] Pearl J. Causal inference in statistics: An overview. Statistics Surveys, 2009, 3(none).
[3] Pearl J, Glymour M, Jewell N P. Causal inference in statistics: A primer: John Wiley & Sons, 2016.