其他
前沿综述:因果推断与因果性学习研究进展
导语
本文主要从因果推断方法和因果性学习这两个方面介绍和分析了目前国内外相关领域的研究进展,探讨了这两方面研究的发展方向。
集智俱乐部联合智源社区,组织因果科学系列读书会第二季,从基础和实操角度出发,精读两本因果科学方向的入门教材。本文作者蔡瑞初老师团队也会在读书会上展开分享(4月底),读书会详情见文末。
蔡瑞初、陈薇、郝志峰 | 作者
中国人工智能学会 | 来源
0 引言
0 引言
因果推断的目标是发现变量/事物背后的因果关系。随机控制实验是发现因果关系的传统方法。由于实验技术局限和实验耗费代价巨大等原因,越来越多的因果推断领域学者希望通过观察数据推断变量之间的因果关系,已成为当前因果推断领域的研究热点。在基于观察数据的因果推断领域研究方面的代表性进展包括在上个世纪90年代,图灵奖得主Judea Pearl教授、卡内基梅隆大学Clark Glymour教授等先驱共同建立了基于观察数据因果推断的理论基础和基于约束的方法,以及近10年Bernhard Schölkopf、Kun Zhang、Shohei Shimizu等学者为代表提出的基于因果函数模型的方法。
因果性学习则体现了因果推断对于机器学习算法设计的指导作用。随着人工智能的发展,越来越多学者开始认识到因果推断对于克服现有人工智能方法/技术在抽象、推理和可解释性等方面的不足具有重要意义。正如图灵奖得奖者Judea Pearl在新作《The Book of Why》一书中提出的 “因果关系之梯”,他把因果推断分成三个层面,第一层是“关联”;第二层是“干预”;第三层是“反事实推理”。他特别指出,我们当前的机 器学习领域的研究只处于第一层,只是“弱人工智能”,要实现“强人工智能”还需要干预和反事实推理。在Kun Zhang等学者发表的《Learning causality and causality-related learning: some recent progress》[1]综述中,对基于因果思想的机器学习方法进行了总结,提出了因果性学习这一概念。
因果推断、因果性学习及一些相关概念的关系如图2所示。因果推断理论和方法为因果性学习提供了重要的理论基础和思想的来源。下面分别对基于观察数据的因果推断方法和因果性学习方法这两个方面的研究进展进行重点探讨。
1 因果推断
1 因果推断
因果推断的主要目的是从观察数据中推断变量之间的因果关系。目前,学者们主要关注因果关系方向推断、高维数据上的误发现率控制和不完全观察数据上的隐变量检测等问题。其中,因果关系方向推断主要针对两个变量进行研究,旨在推断两个变量之间的因果关系方向,即识别哪个变量是原因变量,哪个变量是结果变量。高维数据上的因果推断则是针对多个变量而言,主要关注如何降低因果关系结构的误发现率这一难题。不完全观察数据上的隐变量检测则是针对{X1,X2,..,Xn}上的观察数据,检测隐变量的存在性,以及推断隐变量与观察变量之间的因果关系。这里的隐变量是指未能观察到或无法度量的变量,即数据集中没有包含的变量。
通常来说,因果推断方法可以分为基于约束的方法、基于因果函数模型的方法和混合型方法。这三类方法基本上围绕着因果关系方向推断难题、高维数据上的误发现率控制难题和不完全观察数据上的隐变量检测难题而展开,其相关的主要方法归纳如表1所示。
表1 因果推断相关方法
1.1 基于约束的方法
基于约束的方法主要以美国卡内基梅隆大学Glymour教授和Spirtes教授的PC(Peter-Clark)算法,以及加利福尼亚州大学洛杉矶分校Pearl教授和Verma教授的IC(Inductive Causation)算法为代表。这两个算法的基本流程主要有两个阶段,首先利用基于独立性或条件独立性检验的相关方法判断变量之间的独立性,获得变量间的因果无向图;然后再利用V-结构和定向规则对变量间的无向边进行定向。这两个算法主要解决因果关系方向推断难题。后续有不少学者在此算法上 进行了一些拓展和改进。
为了降低高维数据上的误发现率,北京大学耿直教授等提出了一种搜索局部结构的分解方法,通过递归方法将图一分为二,学习局部结构,并逐步自底向上整合成全局结构。Tsamardinos等则结合基于约束的方法和贪婪等价类搜索方法,提 出了最大-最小爬山法(MMHC)。这种方法先通过局部结构学习算法——最大-最小父亲孩子(MMPC)算法学习因果无向图,然后用贪婪贝叶斯评分爬山搜索方法对无向图进行定向。
另一类学者们关注的问题是不完全观察数据情况下存在隐变量,不完全观察数据导致的虚假因果关系问题。例如,图1的例子中,如果 只有黄牙和肺癌的相关数据,利用因果推断方法,我们往往会发现二者之间存在因果关系。但是实际上这种关系是虚假的,未观察到的吸烟才是两者的共同原因,黄牙和肺癌之间在吸烟条件下是互相独立的。在现实场景中经常出现这种情况,这时对隐变量的检测就至关重要。针对隐变量问题,Spirtes教授等提出了FCI(Fast Causal Inference)算法,后续学者们对其进行了拓展,如Colombo等的RFCI(Really Fast Causal Inference)算法。考虑到小样本的情况,Ogarrio 等提出了GFCI(Greedy Fast Causal Inference)算法。鉴于线性图模型蕴含着多种协方差矩阵子矩阵的排序约束,Kummerfeld等利用这些排序约束,再加上条件独立性检验,提出了一种FTFC (Find Two Factor Clusters)算法,用于识别隐变量模型。
1.2 基于因果函数模型的方法
基于因果函数模型的方法则是从数据产生的因果机制出发,探索利用因果函数模型来识别因果方向。此类方法主要以线性非高斯无环模型 (LiNGAM)、加性噪声模型(ANM),后非线性模型(PNL)和信息几何方法(IGCI)这几类模型为代表。
线性无环模型是一种较为经典的模型,主要用于分析连续变量之间的因果方向与因果连接权重。利用数据的非高斯性,Shimizu等于2006年首先提出了LiNGAM,并用独立成分分析(ICA)求解,所以又称为ICA-LiNGAM算法。但该模型具有局部收敛的缺陷,使得求解结果往往是局部最优解,而不是全局最优解。2011年,Shimizu 等紧接地提出了DirectLiNGAM(A Direct Method for a Linear Non-Gaussian SEM)框架,通过不断地识别外生变量进而估计因果次序。
与线性模型相比,非线性加噪模型不具有传递性,即每个直接因果关系遵循该模型,但却省略了中间因果变量。因此我们提出了一种级联非线性加性噪声模型(Cascade Nonlinear Additive Noise Models)来表示这种因果关系,并进一步提出了一种在变分自动编码器框架下从数据中估计模型的方法。实验结果表明,所提出的模型和方法极大地扩展了基于因果函数模型的方法在非线性情形中的适用性。
上述方法主要适用于连续型数据。目前将连续空间上的因果方法推广到离散空间上,仍然是一个具有挑战的问题。Peters等尝试将加性噪声模型推广到离散的数据上,然而对于类别型变量来说,基于加性噪声模型的假设很难被满足。我们试图找到一种更为一般的,可适用于更多数据上的因果机制。如图3所示,通过假设了一种两阶段过程的因果机制,我们建立了HCR(Hidden Compact Representation)模型。在第一阶段中,原因变量通过一个恒等映射得到一个低秩的隐变量;在第二阶段中,结果由隐变量的状态决定,并在随机噪声干扰下产生。基于似然度框架,引 入贝叶斯准则,给出了一种识别该模型的方法。
另一类值得人们关注的问题是现有方法不适用于数据含有测量误差的情况。在现实生活中,由于观测手段的有限性,我们所获取的数据也不可避免地含有测量误差。Scheines和Ramsey探索了测量误差的存在对基于线性因果函数模型的方法影响,Zhang等随后提出并证明了含有测量误差的线 性因果模型的可识别条件。研究指出,当数据越趋向高斯分布,对应的因果推断也会越困难;当不具备对测量误差的先验知识时,因果推断也是不可能的。我们从外生变量的性质中得到启发,提出一种基于熵的ETPIA算法。第一阶段,利用外生变量具有熵最小的性质将识别外生变量。第二阶段,剔除外生变量对其余变量的影响。在剔除阶段针对不含有测量误差的情况, 直接使用回归系数去除外 生变量对其余变量的影响;而在含有测量误差的情况下,利用依赖比实现外生变量效应的剔除。第三阶段,则需要在得到外生变量的顺序(因果次序)的基础上使用剪枝算法获得最终的因果网络。
上述内容都是考虑从观察数据中发现因果关系,并不适用于含有隐变量的情况。特别地,在隐变量的研究中,如何学习隐变量之间的因果关系,是当今研究的热点问题和挑战。在LiNGAM模型的基础上,通过引入隐变量,Tashiro和 Shimizu等提出了ParceLiNGAM算法,主要通过检验估计回归残差与外生变量的独立性和找到包含未被隐变量所影响的变量子集来发现隐变 量;Hoyer等结合LiNGAM模型,提出适用于 线性非高斯条件下的lvLiNGAM(latent variable LiNGAM)框架。但是这些研究大多数关注于在含有隐变量的情况下发现可观察变量的因果结构,而不在于发现隐变量的因果结构。如旨在发现隐变量结构的工作(如Tetrad),往往需要更多的可观察变量,且它们输出的是一个等价 类。为了在观察变量数量不多的情况下识别隐变量结构,通过引入非高斯性假设,我们提出了一种基于Triad约束条件的隐变量因果结构学习算法 LSTC(Learn the Structure of latent variables based on Triad Constraints)[28]。在其他类型数据上,Zhang等扩展了GPLVM(Gaussian-Process Latent Variable Model),提出了IGPLVM(Invariant Gaussian Process Latent Variable Models)算法来处理隐变量对观察变量的因果作用是非线性的,而观察变量间的因果作用是线性的情况。
1.3 混合型方法
混合型方法是融合了基于约束的方法和因果函数模型的方法而发展出来的另一类方法。这类方法有效地提高因果函数模型的不足,同时克服了高维数据上误发现率控制难题。现有的混合型方法主要依赖分治策略、组装策略与融合策略这三类策略方法。
利用分治策略,我们尝试将因果推断问题分解为子问题并利用递归方法求解,提出了SADA(Scalable cAusation Discovery Algorithm)框架,主要适用于因果结构中的稀疏属性的观察分析,在样本集较少的情况下也能正确地识别因果变量。其主要思想是,首先通过求解因果分割集将高维问题分解成2个子问题;然后针对每个子问题进行递归分解直到其问题规模足够小;针对每个足够小的子问题,采用ANM等基于因果函数模型的方法进行求解,最后对小问题进行合并。
我们在研究中发现,分治策略在分解问题时引入错误的划分,在后续过程中会不断累积使得总体误差呈现某种不可控的现象。而组装策略可以针对随机小变量集合,通过某种复杂的聚合过程排除由于分割引入的结构错误,获得可靠因果机制。所以我们设计了SMRP(Sophisticated Merging over Random Partitions)算法来合并所有划分的结果,运用基于传播的显著性增强方法和最大无环子图的因果次序方法等对局部结果进行合并。该框架能通过可靠的因果机制,有效地合并随机分块的部分结果。
上述两类策略及方法主要基于分治的思想,还有另一类考虑融合不同方法的策略。考虑到基于评分的方法得到的结果存在马尔可夫等价类问题,而基于因果函数模型的方法有助于消除马尔可夫等价类,故尝试将两者进行融合,提出了SELF(Structural Equational Likelihood Framework)框架。其核心思想是将因果函数的噪声独立性假设嵌入似然度计算中,通过似然度框架实现两类方法的统一。在含有多个隐混淆因子的情况下,我们提出了融合基于约束方法和基于因果函数模型方法的MLCLiNGAM(LiNGAM with Multiple Latent Confounders) 算法。该方法能够快速检测到受隐混淆因子影响的观察变量,有助于解决含有多元隐混淆因子的因果结构学习困难的问题。
混合型方法一定程度实现了基于约束的方法的高维扩展性和基于因果函数模型的方法的因果发现能力的结合,为我们在高维数据场景中的应用提供了重要基础。例如在与中国南方电网合作中,通过运用混合型方法建立了电网信息子系统的故障发生模型,并基于故障因果溯源,实现了根因故障的快速定位。在该应用案例中,故障定位中的平均准确率由原来的55.56%提高到 91.67%,大大减少了故障排查范围,提升了系统运行的可靠性。我们还与南方通讯建设、华为等单位合作,在移动通讯网络基站性能优化上进行了应用,通过重构基站性能指标之间的因果网络,成功给出了数据连接性能和通话质量优化等重要典型投诉的优化方案,相关方案在实际应用效果中超过了传统领域专家基于经验给出的优化方案。这些成功应用案例体现了因果推断在决策支持领域的重要价值,是因果推断研究的重要方向。
2 因果性学习
2 因果性学习
表2 因果性学习相关方法
在半监督学习中,马普所的Schölkopf等指出半监督学习在因果方向上的学习与反因果方向上学习的区别,揭示了在没有混淆因子的情况下,无标签数据只有在反因果方向下才是有效的,而在因果方向上是无效的。他们发现,半监督学习方法的有效性与因果关系中原因变量的概率P(原因),与给定原因变量的情况下结果变量的概率 P(结果|原因)的独立性有紧密联系。
在领域自适应研究中,确定从源域转移到目标领域的信息,以及如何进行转移是一个至关重要的问题。因果模型可以作为一个很好的工具来解决这个问题。Pearl教授通过研究证明因果图可以被用于建立允许跨域的结果传输的条件;Zhang等发现即使在这种条件不成立的情况下,仍然可以利用因果知识,以及一些技术条件来进行领域自适应。其基本思想是,如果 它们之间没有混杂因子,则P(原因)和P(结果|原因)是真实因果过程的反映,并且变化是 独立的,从而允许以简单的形式分别对变化进行 参数化。当源域是多个的情况下,Zhang等将已 知的因果关系知识(数据背后产生的机制)融合到领域自适应中,提出了三种适用于不同场景的方法,即利用重要性权重调整的weigh_sample算法、使用了通用性学习的genar_model,以及借助了源假设的权重结合的combn_classf方法。我们则分别从因果解耦和因果同态假设这两个角度探讨了领域自适应问题。从因果解耦角度,假设不同领域的数据由领域隐变量和语义隐变量组成,其因果图表示见图4。基于这个假设,我们提出了语义解耦表达(DSR)模型,采用变分自动编码机和对梯度反转学习方法实现了领域隐变量(Zd)和语义隐变量(Zy)的重构和解耦。在因果同态假设中,假设不同领域数据服从同态假设,即共享部分相同因果网络结构(见图5)。通过学习不同领域数据间的同态映射和同态算子,我们提出DACH方法成功分 离出了不同领域背后共享的因果机制,实现了可靠的领域自适应。此外,还基于特定的假设,从理论角度给出了领域自适应问题误差界。
3 结束语
3 结束语
参考文献
(参考文献可上下滑动查看)
因果科学与Causal AI读书会
因果表征学习最新综述:连接因果科学和机器学习的桥梁 因果科学入门读什么书?Y. Bengio博士候选人的研读路径推荐 因果科学:连接统计学、机器学习与自动推理的新兴交叉领域 借助因果推断,更鲁棒的机器学习来了! 如何在观测数据下进行因果效应评估 因果阶梯与Do-演算:怎样完美地证明吸烟致癌? 加入集智,一起复杂!