因果推理存在两种框架,rubin的RCM(Rubin Causal Model) 与 pearl的SCM(Structural Causal Model),前者偏向计量,后者使用图形辅助,更偏向计算机。
现在流行的推理方法绝大多数都是RCM框架的,比如PSM(Propensity Score Matching)、CF(Causal Forest)等。但在这里只针对SCM进行讨论。
1 因果图绘制
SCM由图和方程组成,先得到因果图后搭建方程,有时因果图也被直接称作因果模型。由于方程依托于因果图,所以图的生成有效性对SCM举足轻重。
现在的因果图绘制算法,主要有条件独立、分数准则、连续优化、函数因果模型这几种方法。
条件独立的方法,又叫约束方法,它是使用条件独立检验来绘制,由于使用局部信息,因此更适合高维学习,但也对样本量存在一定要求,同时条件独立存在前后影响,所以容易发生一错再错。
分数准则的方法是使用符合某种准则的评分指标从数据中学习出最契合的因果图,它需要遍历所有图的可能,是一个NP-hard问题,所以非常耗时,因此往往会使用启发式算法进行加速,但这有不可避免地陷入局部解。
优化的方法是将分数准则的方法的组合优化问题转换成连续优化问题,使用诸如梯度优化的形式完成求解,优点则是易与深度学习进行结合,也可以使用GPU进行加速,但缺点是求解简单粗暴,缺乏逻辑证明,也易入局部解。
函数因果模型的方法是使用回归残差的不可逆性来发现因果方向,通过事先定义的函数形式来从数据学习因果图,它的优点是易与SCM共用。
其中,条件独立和分数准则的方法存在着等价类问题,即图定向的不可确定性。在条件独立的方法中,表现为多个图共享相同的骨架和V结构集合,也被称作结构等价;在分数准则的方法中,概率分布等价的两个图被要求具有相同的评分,而在连续变量和离散变量分别被预定义为高斯分布、伯努利分布的情况下,概率分布等价将等同于等价条件独立方法的结构等价,从而与条件独立的方法产生了联系。注意的是,等价的定义存在多种版本,但都表示相同的概念。
为了解决等价类导致的定向歧义问题,有人提出了本质图的概念,它通过遍历所有的等价类,在保持骨架不变的同时,保留它们共同的边方向,相当抽取出公共表征。
如果我们假定因果图具有如下形式:两变量之间至多只有单条边,且没有因果循环,那么它就是一个DAG(Directed Acyclic Graphs),对应的本质图的名称则是CPDAG(Completed Partially Directed Acyclic Graph)。
但是本质图通过定义来学习是非常困难的,因为它需要遍历所有等价类,而我们无法确定等价类的可能范围。所以在实际应用中,我们是先勾勒出因果图的骨架,然后使用已经被证明的定向规则,并辅以V结构来完成定向。如果此时使用的定向规则不是完备的——无法全部定向出公共边方向,我们则称得到的本质图是部分本质图,称作PDAG(Partially Directed Acyclic Graph)。
当我们考虑公共原因未被观测到(隐藏混淆)的场景,条件独立和分数准则的方法得到的因果图,会出现两变量间存在双边的现象。这是因为隐藏混淆导致两个变量分别检验出各自的V结构,此时生成的因果图不再满足DAG的形式。
显然,常规的DAG结构无法完整刻画出在实际生活中的因果关系,因此我们需要考虑另一种因果图结构,它就是MAG(Maximal Ancestral Graphs),其对应的本质图和部分本质图的名称分别是CPAG(Complete Partial Ancestral Graph),PAG(Partial Ancestral Graph)。
二者的主要差异在于:
基于DAG的CPDAG的定向已经存在完备的规则,而基于MAG的CPAG尚未被提出完备的定向规则。
基于DAG的方法在实验阶段是使用预定义的贝叶斯网络的所有变量进行学习,而基于MAG的方法是仅选择部分变量进行学习。
基于DAG的方法在实际应用的结果往往不满足DAG形式的要求,因此很难使用面向DAG的推理方法。而基于MAG的方法的输出仍然是MAG形式,因此可以照常使用MAG的推理方法。
等价类与MAG理论主要在条件独立和分数准则的方法中出现,所以连续优化和函数因果模型的方法的结果一般仍以DAG的形式完成输出,但它们是否能在真实场景中逼近真实因果图、表达真实因果关系仍然需要思索。
2 效应的估计
绘制出因果图之后,我们可以再通过数据在图上学习对应的条件分布,将因果图转换成因果贝叶斯网络,进而使用Pearl提出的do算子来完成一系列的效应估计,比如干预与反事实。
关联:找出哪些指标或特征和最终目标关系,这是一种观测,直接用p(y|x)表示。
干预:假设发生x时,y会怎么样
反事实:y发生了某事件,是由什么x造成的。
同样的,我们也可以直接根据得到的因果图,搭建对应的方程组,形成完整的SCM,再完成一系列的效应估计。
后者相比于前者,更加形式化,易与数值方法结合。
3 实践的建议
因果发现而言:
在变量规模不大的情况下,建议采用非启发式算法的评分准则的CPDAG的方法,毕竟基于评分的方法误差比较小。
在变量规模稍大的情况下,建议采用基于条件独立的CPDAG方法。
因果推理而言:
建议采用基于条件独立的PAG方法,并结合PAG的do算子进行效应估计。
对PAG进行效应估计,存在许多方式。
直接用PAG的do算子
把PAG转换成所有可能的MAG,分别进行do算子取效应均值
把PAG转换成SMCM再作do算子
如果这种方法应用存在难度,另一种妥协方法是,只根据DAG直接辅以DAG的do算子进行估计。
但这更考验生成DAG的方法的有效性,因为在实际应用中,直接输出DAG的方法都可能与真实因果图存在着偏离。
4 前景与总结
因果错综复杂,需要考虑的变量可能不计其数,但在大数据时代恰恰满足了这个需求,为我们勾勒出合理的因果图提供了必要的数据基础,但它面临的问题如同以往的统计模型一样,维度爆炸导致学习方法效率非常低下。在这种场景下,显然利好基于条件独立的方法。
MAG虽然可以合理刻画出现实生活的因果关系,但它的父子节点不再诠释成直接原因和直接结果,而是原因与结果。对于想要捕捉目标变量的直系关系时,使用CPDAG仍然是一种非常好的分析工具,即使在混淆隐藏混淆的条件下,也只是增加双边而已,但如果需要进一步完成效应估计,这时就会产生难以推理的困境。
此外,将MAG
引入到因果表征学习也是一个非常有意思的方向,但这是否需要先出现MAG的评分准则的方法才行。