本篇是一个关于因果关系(Causality)的系列分享的第二篇,将介绍因果关系中干预(intervention)和反事实(counterfactual)的概念,以及用来描述因果关系的 SEM
& Casual Graph。
何谓 Causal
relationship?怎样的关系才算是因果的,而不仅仅是相关的?我们先假设因果关系真的客观存在。在经典物理、相对论和量子理论中都有对 causality 不同的定义。个人认为,如果在物理世界中都找不到因果的定义,只剩下概念的关联,这种关系就有点不实在了。
在哲学中,对于因果关系的讨论也分为几个流派,其中有一种叫操纵理论 (Manipulability theory of causation)
—在这个大的理论框架下,原因被当作操纵结果的“装置”或者“手柄”。这个框架的哲学陈述一般从还原主义出发,且把人类行为置于中心地位。而由 Pearl 等领衔的一些计算机科学家并不采用还原主义,而是在一个更广泛的操纵论框架下,以
干预 (Intervention) 这个概念为起点展开研究的。
所谓干预,就是把我们想研究的变量从它所在的系统中拿出来 (let an endogenous variable become an exogenous
varaible),让它取一个特定的值,抹掉了它的其它可能取值,这时再观察其它变量由此而产生的变化。例如说,对于音响这一个系统来说,手动地转动音量旋钮就是对整个系统的一个干预,而不是系统内部运行过程中“自我发生的”。
接下来我们用烧烤架烤肉举例,考虑如下变量:
说明: Gas knob = 1:燃气阀开度较小
Igniter = 1: 点火器已经打着
方程表示如下:
Gas level := Gas connected × Gas knob (1)
Flame := Gas level × Igniter (2)
Meat cooked := Flame × Meat on (3)
最后一个式子告诉我们,如果没有将肉放在烤架上,它还是不能吃的(肉的生熟 = 0)。
在示例中,变量 Gas level,Flame 和 Meat cooked 是内生的(endogenous),这意味着它们的值由模型中的其他变量确定。 Gas
connected, Gas knob, Igniter 和 Meat on 是外生的(exogenous),即外部环境因素,这意味着它们的值是在系统外确定的。
对一个变量的干预,就是重写它原有的因果结构的同时,不影响它作用到的其他变量的因果过程(causal
process)。具体来说,对变量 X 的干预就是重写了关于它的方程,而关于其它变量的方程不变。
例如,如果我们对变量 Flame 实施干预,即无论是否按下点火器,或 Gas 的开度是多少,都将 Flame 设定到某个的水平(也就是 Flame=0 or 1 or
2),而不干扰到方程(1)和(3)。干预实际上作为一种因果过程,独立于模型中的其他变量运作(Woodward,2003)。随机对照试验就是在这个意义上进行的干预。
我们再拿线性模型举例感受一下。假设 X 和 Y 是两个随机变量,假定它们存在由 X 到 Y 的线性相关的因果关系 :
SEM (Structual equation model):
X = Nx
Y := 3X + NY
Blue: P(X) Red: P(Y)
observational data
然后我们对 X 实施干预,把 X 的值设定为 3,Y 的方程不变:
X := 3
Y := 3X + NY
NY~N(0, 1)
Red: P(Y) Yellow: Pdo(X≔3)Y
interventional data
我们看到了 observational data 与 interventional
data 的差别,根本原因并不是在概率分布上的操作,而是干预的介入让数据的产生机制发生了改变。
Pearl 用 do-operator 来表示这种从系统外干预变量取值分布的动作,这个动作对应的 do-calculus 是操纵理论框架下定义的因果关系将概念转化为符号系统的一个重要桥梁。
举个例子,P(X) 表示室内温度的概率分布,P(Y) 表示温度表读数的概率分布,那么,Pdo(X:=10) Y
则表示当温度为 10 度时,温度表指针读数的概率分布。
下面简要介绍一下如何表达、呈现因果关系这种知识
Bilingual system: SEM & Causal graph
上面在用线性模型举例时出现的 SEM,在因果关系中可以理解它为表达因果关系的方程系统:
Xi**:=F(Pai , Ui)
Pai:代表了 DAG (有向无环图,下面会有介绍)中 Xi 的 parents (父节点)或者直接原因(也就是说 Xi
与 Pai 之间没有 common-cause 存在),且父节点们明确地被包含在模型 F 中
Ui:误差变量,它汇总了系统外(exogenous)变量对 Xi 的影响
在这个系统中,每个方程都表达了不同的因果机制(F),我们可以理解为每个方程自己是有自主性的(autonomous)。这也就意味着我们可以对每个因果机制(它对应的方程)进行干预而不影响其他机制的运行。这也启发了因果发现中一类很重要的方法:invariant
causal prediction
DAG 在贝叶斯网(Bayesian Network)中是变量间依赖关系的图表示。在因果图(Causal
graph)中,连接两个变量之间边的含义就“升级“成了由因到果的作用。下面我们思考两个问题:
假设 X 和 Y 是两个有因果关系的随机变量,且方向是 X "causes" Y,那么 Causal effect 这里记作 CX→Y,即为干预效果的明显与否:
答案是不一定。因为如存在正相关、负相关一样,因果作用有正向促进的,亦有反向抑制的。
这张因果图中,边上的数字代表由一个变量到另一个变量的因果作用 。
图中由 X 到 W 是有因果关系的,但这种因果作用并没能体现出来:CX→Y=0 。由此,因果也不一定相关。
SEM 和 Causal graph 共同组成了 Pearl 口中的 bilingual system 来描述**causal
relationships。由此我们再回顾一下干预的概念。如果我对 Xi 的 direct cause 实施干预,就彻底剪断了 Xi
和它的父节点之间的关系——图上和方程中都是,Xi 的值完全由干预决定。
综上我们可以看出,干预的概念实际上是定义了因果作用。
再向前延伸一步,如果我们想用干预的概念阐明到底什么是 "X causes
Y",很自然地就过渡到反事实(Counterfactuals),这是一种对过去的思考和想象。
But-for(要不是…) 是法律中经常用来认定责任的方法:如果不是 A 的某个行为,B 是否会受伤。它和 counterfactual 在干预的概念框架下是同一个概念。
用 do-calculus 表示为:
举个例子:由于一个司机没有及时踩刹车,导致撞到了其他车,但是他并不知道刹车其实坏了。也就是说即使他采了刹车,也不会有任何效果,事故还是会发生。租车公司的问题并没有对事故的发生产生影响,因此租车公司在这起案件中无责。如果是另一种情况,如果司机踩了刹车或者司机知晓刹车本身存在问题,租车公司的过错则是需要承担责任的。
Intervention 和 Causation 的关系很有意思,一两句话不能完全讲清楚(一些论文会拿出 200 多页来阐述),而且会牵扯到很多其他概念。我们后面会拿出一整块来谈。
由此 Pearl 书中的三个因果层级都出现了:Correaltion, Intervention, Counterfactuals。
但这种 but-for 的回溯方法并不能定义所有的 case。比如两个人同时给房子放了一把火,放火时他们并不知道对方的存在。这时 but-for 就会让我们觉得很不合理了:如果其中一个人没放火,房子还是会烧掉,没有对结果产生影响,那么这个人岂不是没有责任了(对另外一个人也同样)。我们管这种情况叫
overdetermined case。
在法律中,另一种 NESS-test
(https://scholarship.law.berkeley.edu/cgi/viewcontent.cgi?
article=2030&context;=californialawreview)方法的提出,解决了这类问题。它通过一个变量是否是充分条件集(Sufficient
set)中的必要元素 (Necessary element) 来界定责任。这里的责任和因果作用是同一个概念,同样可以划分责任的多少。相比之下 but-for 的方法中只有必要这个概念,它的这种回溯只能单一考虑一种元素,并不能像 NESS 那样——将一些因素聚合成一个整体(Sufficient set)作考虑。
综上可见,相对于因果性,相关性少了一些好奇心,“为什么”,少了一些所谓的“直觉”和 humanity。
大家有兴趣更深入地学习研究因果关系可以从这些 contributors 下手:
(......and many others from CS, statistics and philosophy backgrounds )
如果大家关于文章中的描述或概念有疑问,这里给大家留下作者的邮箱(bwma@xorder.ai),欢迎打扰。
References:
[1] Mini course on Causality, Cambridge MIT, instructed by Jonas Peters, 2017
[2] Stanford encyclopedia philosophy, Retrieved from
https://plato.stanford.edu/index.html
[3] Kenneth A. Bollen and Judea Pearl, "Eight Myths About Causality and
Structural Equation Models", Handbook of Causal Analysis for Social Research
pp 301-328, 2013
[4] Euan West, The Utility of the NESS Test of Factual Causation in Scots Law,
2013
[5] Wright: Causation in tort law, Retrieved from
http://wikisum.com/w/Wright:_Causation_in_tort_law
[6] Eric Adams, "The Flexibility of Description and NESS Causation", The
Journal of Philosophy, Science & Law Volume 10, 2010
[7] Jonas Peters and Peter Buhlmann, "Causal inference using invariant
prediction: identification and confidence intervals", Journal of the Royal
Statistical Society, 2015
END
写在后面
X-Order 是一家致力于发现拓展秩序的初创企业,希望利用机器学习、区块链和通证经济,让微小的创新都可以被世界发现。
如果你也对密码学,分布式系统,机器学习以及计算经济学感兴趣,欢迎加入我们的社群,一起进行交流探讨(小助手微信:DaiGuanXorder )。
如果你脑洞大,热爱实践反思,喜欢折腾,我们也很乐意和你交个朋友。
X-order Lab 渴望有想法的你,带上好奇心加入我们。
更多关于 X-Order 的信息
微信公众号:代观
Medium:https://medium.com/@xorder
X-order
找寻有想法的你
声明:本内容为作者独立观点,不代表 CoinVoice 立场,且不构成投资建议,请谨慎对待,如需报道或加入交流群,请联系微信:VOICE-V。
简介:X-Order是一家致力于发现拓展秩序的研究机构。 我们通过演化和复杂系统的视角研究拓展秩序,希望成为链接新经济与跨领域科学研究之间的桥梁
评论0条