因果模型一:因果模型入门综述 您所在的位置:网站首页 常见的因果关系是什么 因果模型一:因果模型入门综述

因果模型一:因果模型入门综述

2024-07-12 19:07| 来源: 网络整理| 查看: 265

因果模型一:因果模型入门综述 一. 为什么要研究因果模型?二. 因果研究的发展历程1. C.G. Hempel 1984——因果研究的分水岭2. 统计相关性模型3. 虚假原因 三、INUS条件四、贝叶斯网络1. 有向无环图2. DAG的因果马尔可夫性质3. 联合概率密度4. 贝叶斯网络的局限 五、结构方程模型(SEM)六、介入算子(do calculus)1. 概念2. 介入算子-马尔科夫性质

一. 为什么要研究因果模型?

在现如今的互联网金融领域,我们会发现机器学习的应用套路都大同小异。不论是逻辑回归,梯度提升模型还是深度学习,本质上都是一种对观测数字的拟合手段,说到底都是在寻找事物之间的相关性信息。即便我们能拟合出一个效果逆天的模型出来,我们依然很难通过模型去解释清楚好人之所以好,坏人之所以坏的背后原因是什么。换句话说,这样的模型好用,但无法真正帮助我们洞悉事物的本质,看清客户行为背后的动机。我们其实更需要了解,究竟是出于什么原因,才导致客户表现出这样那样的行为。说到底,我们需要了解我们的客户,而不是仅仅局限在数字的表象下。拨开云雾见日出,透过现象看本质,这才是我们应追寻的终极目标。 因果模型不同于传统机器学习模型,探究和追寻的是事物背后的因果机理,至少从目的和方式上讲,契合我们的目标。当然,因果模型在金融领域的应用效果如何,目前尚无足够的参考。我们也不能寄希望于因果模型就是一剂灵丹妙药,应用了因果模型,模型效果就能有质的改变也是不现实的。之所以研究因果模型,也只能说是在我们自己的工具箱中再增加一件顺手的工具,以拓宽我们解决问题的途径,增加解决问题的手段而已,避免手里只有锤子,看什么都是钉子。 本篇我们就先从因果模型的发展历程和探究因果模型常用的手段讲起,后续再不断深入到因果模型的数学机理当中。

二. 因果研究的发展历程 1. C.G. Hempel 1984——因果研究的分水岭

这个时点之所以被称之为分水岭,因为在此之前,对于事物因果关系的探究基本都局限在哲学领域,因果探究的一个个里程碑背后都闪耀着哲学先贤的光辉,比如亚里士多德,休谟,罗素等等。直到1984年,Hempel发表的一篇论文,提出了两种因果关系的科学解释模型,第一次把因果研究从哲学领域带入到了数学的领域,虽然从现金的角度去看,这样的模型略显简陋,也漏洞百出,但它却激发了后续因果模型数学机理研究的蓬勃发展。 Hempel提出的第一个因果关系模型为法理推论模型: 在这里插入图片描述 这里把因称为解释项,果称为被解释项,其中C表示特定的环境,L表示特定的公理。如果特定一些环境下,遵循特定的一些公理,能够指示出事件E的发生,那么我们就可以通过以上图中的形式表述出这种因果关系,以解释项和被解释项中间的横线表示因果关系的确立。 Hempel提出的第二个模型为统计归纳模型: 在这里插入图片描述 是在法理推论模型的基础上进行的改进,考虑到的情况是如果在解释事件E的所有公理中,哪怕至少有一个并非百分百确定发生的,而是一个概率性事件,那因果关系的表述就应该是如上图所示形式,表示的意思为一个随机性实验R(也可以是自然事件)发生后,有极高的概率p(p非常接近于1),事件E也会发生,那么我们就可以用一个双横线来表示这种因果关系,双横线表示这样的因果关系并非确定性的,而是一种推断式的因果。其中p表示了这种因果关系的置信度。 当然,这种模型并不成熟,很容易找到反例推翻。比如,如果时间E本身发生的概率就非常高,即P(E)=0.99,那就很难说我们可以在实验R和事件E间存在着因果关系。另一个反例,如果R是E的必要条件,但即便在R发生时,E发生的概率也非常低,即P(E|R)=0.02,同时E是R的充分条件,即如果E发生了,我们百分百确定R也是发生了的,即P(R|E)=1,如此,很明显R就是E的一个原因,但p并不满足接近于1,也就无法通过上述统计归纳模型建立R和E之间的因果关系。

2. 统计相关性模型

同样在1984年,Salmon提出了一种统计相关性模型,让因果关系的探究更贴近于概率论。这个模型提出,为了建立事件E和诱因C之间的因果关系,需要比较两个概率: P A ( E ∣ C ) ≠ P A ( E ) 或 P A ( E ∣ C ) ≠ P A ( E ∣ ! C ) P_{A}(E|C) \neq P_{A}(E)或P_{A}(E|C) \neq P_{A}(E|!C) PA​(E∣C)​=PA​(E)或PA​(E∣C)​=PA​(E∣!C) 即在环境A下,在事件C发生的条件下,事件E发生的概率不等于事件E单独发生的概率,这个时候就可以在事件C和E之间建立一种因果关系。 这种模型的漏洞也显而易见: 第一点,无法确定E和C之间谁是因,谁是果。换一种更数学化的表达方式即E和C之间的关系具有对称性: P ( E ∣ C ) > P ( E ) ⇔ P ( C ∣ E ) > P ( C ) P(E|C) > P(E)⇔P(C|E)>P(C) P(E∣C)>P(E)⇔P(C∣E)>P(C) 第二点,在共同诱因的存在下,事件E和时间C之间的因果关系将不成立。我们可以通过天气系统中的一次冷锋过境来解释什么是共同诱因。定义三个事件C:冷锋过境,B:气压读数下降,A:降水发生。事件A和B之间显然是高度相关的,但不能说A就是B产生的原因或结果,因为A和B都是事件C发生的结果,此时事件C就是A和B的共同诱因。用数学化的表述方式即在事件C发生的条件下,A和B就表现出了相互独立的性质。 在这里插入图片描述 第三点,一个事件的整体特性有时候并不能反映每个细分群体的特征。这一点就是有名的辛普森悖论,我们以一个院系招生的例子来说明这一点: 在这里插入图片描述 从图中可以看出,如果我们关注于整体的男女招生比例,会发现招收的男性数量是女性数量的3倍还多,明显有性别歧视,但事实真是如此吗?如果我们分两个院系细看,会发现院系一招收的男性是女性的9倍,而院系二女性却是男性的9倍,这样看,并不存在性别歧视。之所以整体会有男性招收更多的现象,只是因为大部分男性更倾向于报名通过率更高的院系一。

3. 虚假原因

针对共同诱因这一点,Suppes提出一个虚假原因的概念,来让因果关系的建立更加严谨: 首先,Suppes引入了时序的前提,让r P ( A t ) P(B_{S}>0)且P(A_{t}|B_{S})>P(A_{t}) P(BS​>0)且P(At​∣BS​)>P(At​) 成立时,我们就可以首先定义事件B是事件A的一个表面原因。当且仅当一个事件Cr存在,使得: P ( A t ∣ B S C r ) = P ( A t ∣ C r ) P(A_{t}|B_{S}C_{r})=P(A_{t}|C_{r}) P(At​∣BS​Cr​)=P(At​∣Cr​) 成立时,B就称为A的一个虚假原因。如果不能找到这样一个事件C,即B不是A的虚假原因,那么B就是A的真实原因。 Suppes强调了时序前提的重要性,并给出了证明,当时序前提不存在时,所有的原因都是虚假原因。证明如下:如果让r = s,则Cr = Cs。如果令Cs = Bs,根据 P ( A t ∣ B s B s ) = P ( A t ∣ B s ) P(A_{t}|B_{s}B_{s}) = P(A_{t}|B_{s}) P(At​∣Bs​Bs​)=P(At​∣Bs​)则证明了所有原因都是虚假原因。显然这样的证明略显牵强。

三、INUS条件

INUS,即Insufficient but Necessary part of an Unnecessary but Sufficient cause,即充分非必要原因中的必要非充分条件。讲起来比较绕,我们可以通过如下公式阐明这个问题: D ⇔ A or (B and C) 上述公式表明,A或者(B且C)对于D的发生都是充分的;C是(B且C)的一个必要条件;C如果不和B联合,则不再是D的充分条件。用概率论的公式表述如下: 在这里插入图片描述 当且仅当上述公式成立时,我们就说C是D的一个充分非必要原因中的必要非充分条件。

四、贝叶斯网络 1. 有向无环图

有向无环图,directed acyclic graphs,简称DAG,是众多图模型中最适合用于因果关系研究的模型,形如下图: 在这里插入图片描述 DAG简单来说就是一系列顶点和边的集合,即G = (V, E),其中V是顶点的集合,代表一些列随机事件或随机变量,E为有向边的集合,A和C之间建立了有向边,则说明A对C有直接影响,即 P ( B = b j ∣ A = a r ) X P ( B = b j ∣ A = a s ) P(B = b_{j}| A = a_{r}) X P(B= b_{j}| A = a_{s}) P(B=bj​∣A=ar​)XP(B=bj​∣A=as​),这种变量之间通过有向边进行连接即是有向无环图中“有向”的具体含义,“无环”的含义具体为图中不能出现闭合的环。 如果A指向C,则我们称A为C的父节点,C为A的子节点。如果DAG中一个节点不存在父节点,则称这样的节点为外生变量,如图中的A和B,反之,有父节点的变量成为内生变量。

2. DAG的因果马尔可夫性质

对于DAG中所有的节点 X i , X j , i ≠ j X_{i},X_{j},i \neq j Xi​,Xj​,i​=j,如果 X i X_{i} Xi​不直接导致 X j X_{j} Xj​,则在 X i X_{i} Xi​所有父节点的条件下, X i 和 X j X_{i}和X_{j} Xi​和Xj​相互独立。如果用⊥符号表示相互独立, p a i pa_{i} pai​表示 X i X_{i} Xi​所有的父节点,则可用公式表述如下: X i ⊥ X j ∣ p a i X_{i}⊥X_{j}|pa_{i} Xi​⊥Xj​∣pai​ 这样的性质被成为DAG的因果马尔可夫性质,也只有满足马尔可夫性质的有向无环图才能被成为贝叶斯网络,这样的性质表明,如果图中两个变量间没有有向边连接,则这两个变量就是相互独立的,不存在任何相关关系。 这种性质为什么被称作马尔可夫性质呢?我们常规理解的马尔可夫性质往往是在描述一个时序序列中这样的性质:未来的状态只和现在有关,而和过去无关。其实,如果我们把DAG中每个随机变量都看作一个时间节点,则马尔可夫性质就是在说当前的随机变量(未来的状态)只和直接父节点(现在的状态)有关,而和父节点的父节点(过去的状态)无关。

3. 联合概率密度

我们往往使用联合概率密度来描述一个贝叶斯网络,只不过相比于原始的联合概率密度,贝叶斯网络的表达形式就简单了很多,可以用以下公式来表示: p ( x 1 , x 2 , . . . x n ) = ∏ j p ( x j ∣ p a ( X j ) ) p(x_{1},x_{2},...x_{n}) = \prod_{j}p(x_{j}|pa(X_{j})) p(x1​,x2​,...xn​)=j∏​p(xj​∣pa(Xj​)) 其中, p a ( X j ) pa(X_{j}) pa(Xj​)表示xj节点的所有直接父节点。具体到上图所示的贝叶斯网络,其联合概率密度表示为: p ( a , b , c , d , e , f ) = p ( a ) p ( b ) p ( c ∣ a ) p ( d ∣ b , c ) p ( e ∣ d ) p ( f ∣ d , e ) p(a,b,c,d,e,f) = p(a) p(b) p(c|a) p(d|b,c) p(e|d) p(f|d,e) p(a,b,c,d,e,f)=p(a)p(b)p(c∣a)p(d∣b,c)p(e∣d)p(f∣d,e) 相比于原始的概率密度函数: p ( a , b , c , d , e , f ) = p ( a ) p ( b ∣ a ) p ( c ∣ a , b ) p ( d ∣ a , b , c ) p ( e ∣ a , b , c , d ) p ( f ∣ a , b , c , d , e ) p(a,b,c,d,e,f) = p(a) p(b|a) p(c|a,b) p(d|a,b,c) p(e|a,b,c,d) p(f|a,b,c,d,e) p(a,b,c,d,e,f)=p(a)p(b∣a)p(c∣a,b)p(d∣a,b,c)p(e∣a,b,c,d)p(f∣a,b,c,d,e) 我们可以发现,贝叶斯网络其实是增加了变量之间条件独立的先验信息,从而减小了模型的体积,与模型进行推断、学习的时间。

4. 贝叶斯网络的局限

同样,基于概率的贝叶斯网络局限性也很明显,就是其对称性让其无法表示谁是因,谁是果。 在这里插入图片描述 以图中ABC三个节点为例,三种图模型用概率密度函数表述出来是一模一样的,也就是在我们只知道一个图模型的概率密度函数时,具体的图模型结构是无法推演出来的。

五、结构方程模型(SEM)

结构方程模型是在贝叶斯网络基础上的一个具象化改进,相比于贝叶斯网络中每个有向边表示的都是直接相关关系,SEM中每个有向边都使用一个确定性的函数来表示。例如,如果能找到适合的函数表达式,则一个SEM就可以表示如下: 在这里插入图片描述 更一般化的SEM可以用以下公式来表述: X i = f i ( p a ( X i ) , U i ) X_{i} = f_{i}(pa(X_{i}),U_{i}) Xi​=fi​(pa(Xi​),Ui​) 其中 p a ( X i ) pa(X_{i}) pa(Xi​)表示X的所有父节点, U i U_{i} Ui​表示无法观测的误差项,属于外生变量,基本都是相互独立的。

六、介入算子(do calculus) 1. 概念

在贝叶斯网络一节,我们已经明述了,仅仅通过联合概率密度,无法确定因果关系。因为 p ( a , b ) = p ( a ) p ( b ∣ a ) = p ( b ) p ( a ∣ b ) p(a,b) = p(a)p(b| a) = p(b)p(a|b) p(a,b)=p(a)p(b∣a)=p(b)p(a∣b),我们无法确定到底是A导致了B,还是B导致了A。也就是联合概率密度的这种对称性让因果关系无法确定方向。当引入介入算子的时候,这种对称性就可以被打破。 介入算子表示对事件的人为强制干预和介入,举个例子,比如我们用A表示当前的气温,用B表示当前温度表的读数,基于观测的概率 p ( A = a ∣ B = b ) p(A=a|B=b) p(A=a∣B=b)表示当我们观测到温度表读数为b时,当前气温为a的概率,而介入算子的概率表示为 p ( A = a ∣ B ← b ) p(A=a|B←b) p(A=a∣B←b),意思为我们人为把温度表的读数调整到b时,气温为a的概率。显而易见,气温是因,温度表的读数是果,无论我们对温度表读数干预到什么程度,气温是不会随之改变的,即这种对称性就被打破了,用数学化的表述如下: p ( b % a ) = P ( B = b ∣ A ← a ) = P ( B = b ∣ A = a ) = p ( b ∣ a ) p ( a % b ) = P ( A = a ∣ B ← b ) = P ( A = a ) = p ( a ) p(b \% a) = P(B = b | A ← a) = P(B = b | A = a) = p(b | a) \\ p(a \% b) = P(A = a | B ← b) = P(A = a) = p(a) p(b%a)=P(B=b∣A←a)=P(B=b∣A=a)=p(b∣a)p(a%b)=P(A=a∣B←b)=P(A=a)=p(a) 介入算子很容易应用到一个有向无环图中,例如,我们对图中D节点进行介入,令其值为d,则图结构可做如下转换: 在这里插入图片描述 描述图结构的方程也可以简化为: C = f C ( A , U C ) E = f E ( d , U E ) F = f F ( d , E , U F ) C = f_{C}(A,U_{C}) \\E = f_{E}(d,U_{E})\\ F = f_{F}(d,E, U_{F}) C=fC​(A,UC​)E=fE​(d,UE​)F=fF​(d,E,UF​)

2. 介入算子-马尔科夫性质

基于DAG的马尔科夫性质,即不直接连接的变量间相互独立,一个DAG才可以用如下联合概率密度进行表达: p ( x 1 , x 2 , . . . x n ) = ∏ j p ( x j ∣ p a ( X j ) ) p(x_{1},x_{2},...x_{n}) = \prod_{j}p(x_{j}|pa(X_{j})) p(x1​,x2​,...xn​)=j∏​p(xj​∣pa(Xj​)) 当执行介入算子之后,DAG的马尔科夫性质同样成立,形式如下: p ( x 1 , x 2 , . . . x n ∣ V ← v ) = ∏ j = 1 , x i ∉ V n p ( x j ∣ p a ( X j ) ) ∣ V = v p(x_{1},x_{2},...x_{n}|V←v) = \prod_{j=1,x_{i}\notin V}^{n}p(x_{j}|pa(X_{j}))|_{V=v} p(x1​,x2​,...xn​∣V←v)=j=1,xi​∈/​V∏n​p(xj​∣pa(Xj​))∣V=v​ 其中,V是一系列受到干预的变量,v是V中变量受干预之后的数值。 p ( x j ∣ p a ( X j ) ) ∣ V = v p(x_{j}|pa(X_{j}))|_{V=v} p(xj​∣pa(Xj​))∣V=v​表示,x父节点和V的交集部分将被赋予对应的v值。具体例子: 在这里插入图片描述 在介入之前,联合概率密度为: P ( X , Y , Z ) = P ( Z ) P ( X ∣ Z ) P ( Y ∣ X ) P(X,Y,Z) = P(Z)P(X|Z)P(Y|X) P(X,Y,Z)=P(Z)P(X∣Z)P(Y∣X) 介入之后,联合概率密度为: P ( Z , Y ∣ X ← x 0 ) = P ( Z ) P ( Y ∣ X = x 0 ) P(Z,Y|X←x_{0}) = P(Z)P(Y|X=x_{0}) P(Z,Y∣X←x0​)=P(Z)P(Y∣X=x0​)

参考资料:

https://www.researchgate.net/profile/Benito_Frosini/publication/267239482_Causality_and_Causal_Models/links/5493ea8f0cf286fe3126a301.pdfhttps://zhuanlan.zhihu.com/p/33860572

最后,欢迎参看其它因果模型相关的探索: 因果模型二:线性非高斯无环模型 因果模型三:因果模型在解决哪些实际问题 因果模型四:实现因果模型的python工具——pycasual 因果模型五:用因果的思想优化风控模型——因果正则化评分卡模型



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有