新闻  |   论坛  |   博客  |   在线研讨会
因果推断入门:为什么需要因果推断?(3)
数据派THU | 2022-09-18 11:57:19    阅读:976   发布文章

3、图中的因果流和关联流
3.1 什么是图?


我猜看这系列文章的朋友对图 Graph 的概念已经再熟悉不过了,这里就不费口舌细说了。图是由节点 node 和边 edge 组成的一个数据结构,下面放几张普通类型图的示例:
图片

3.2 贝叶斯网络


因果图模型的许多工作是在概率图模型的基础上完成的。要了解因果图首先要了解一下什么是概率图模型,虽然两者有着很大差别。贝叶斯网络是最主要的概率图形模型,因果图模型(因果贝叶斯网络)继承了它们的大部分属性。
联合概率分布可以通过 chain rule 写成如下形式:
图片
如果直接对上面公式建模的话,参数数量会爆炸。
图片
如果  只依赖依赖  的话,没必要condition on所有的变量,即  可以写成 。我们可以用 graph 表示变量之间的依赖关系,这个 graph 就叫做贝叶斯网络。一般而言,贝叶斯网络的有向无环图 DAG 中的节点表示随机变量,它们可以是可观察到的变量,抑或是隐变量、未知参数等。
给定 DAG,怎么计算所有变量的联合概率分布呢,需要用到下面的假设,即X节点只和它的父节点有关,和其他节点无关:
图片
图片
这样,图 3.6 的联合概率分布就可以写成下面形式:
图片
图片
图片
3.3 因果图
上一节是关于统计模型和关联建模的。在本节中,我们将用因果假设来增强这些模型,把它们变成因果模型,使我们能够研究因果关系。为了引入因果假设,我们必须首先理解 “什么是原因 cause”。
图片
根据上面的定义,如果变量 Y 能随着 X 的变化而变化,则称 X 是 Y 的原因。然后给出贯穿全书的(严格)因果假设 3.3,在有向图中,每个节点都是其子节点的直接原因。X 是 Y 的父节点,X 就是 Y 的直接原因,X 的原因(X 的父节点)也是Y的原因,但是是间接原因。
图片
如果我们把 Y 的所有直接原因 fix,那么改变 Y 的任何其他原因都不会引起 Y 的任何变化。因为 cause 的定义(Definition 3.2)意味着 cause 和它的 effect 是相关的,而且因为我们假设所有的父节点都是他们子节点的原因,所以因果图中父节点和子节点是相关的。
非严格因果关系假设将允许一些父节点不是其子节点的原因,但不常见。除非另有说明,在本书中,我们将用“因果图”来指满足严格因果边假设的 DAG,省略“严格”一词。
总结一下,DAG 有向无环图是 graph 的一种特殊形式,贝叶斯网络和因果图都是用 DAG 表示的,但是两者的含义不一样,贝叶斯网络表达的是变量之间的依赖关系,而因果图表达的是变量之间的因果关系。由于表示因果关系的边也暗含着两个变量之间有关联,因此,DAG 里既有因果关系也有关联关系,这也对应本章的题目。

3.4 最简单的结构


现在我们已经了解了基本的假设和定义,我们可以进入本章的核心:DAG 中的关联和因果关系。首先我从构成 DAG 的基本结构入手。这些最小的构建块包括 chain 链(图 3.9a)、fork 叉子(图 3.9b)、immoralities 对撞(图 3.9c)、两个未连接的节点(图 3.10)和两个连接的节点(图 3.11)。其示意图分别如下所示
图片
图片
在一个由两个未连边的节点组成的 graph 中(图3.10), 和  肯定是独立的 independent、无关联的 unassociated。
相反,如果两个节点之间有边(图3.11),那么一定是 associated 的。这里用到的是 Assumption 3.3:由于 x1 是 x2 的原因,x2 必须能够对 x1 的变化做出反应,所以 x2 和 x1是关联的。一般来说,如果两个节点在因果图中是相邻的,它们都是相关的。

3.5 链 & 叉子结构


把链 chain 和叉子 fork 放在一节介绍是因为它俩的特性是一样。
图片
相关性:
在 chain 中,x1 是 x2 的原因,x2 是 x3 的原因,那么 x1 和 x2 是相关的,x2,x3 是相关的,x1 和 x3 也是相关的。
在 fork 中,x2 是 x1 和 x3 的共因,x1 和 x3 也是相关的。这个可能有点反直觉,x1,x3 之间明明没有边,为啥也是有关联的呢?举个例子:温度升高会导致冰淇淋销量上升,同时也会使犯罪率上升,从冰淇淋销量和犯罪率的数据上来看,他们有着相同的趋势,因此是相关的,尽管他们之间并没有因果关系。
关联流 associate flow 是对称的,x1 和 x3 相关,x3 也和 x1 相关,即图中红色虚线部分。而因果流是非对称的,只能沿着有向边流动,即 x1 是 x3 的原因,x3 不是 x1 的原因。
独立性:
chain 和 fork 也有着相同的独立性。如果我们把 x2 固定住,即 condition on x2,那么 x1 和 x3 的相关性就会被阻断 block,变的独立。
图片
在 chain中,如果把 x2 固定成一个定值,x1 做任何改变,都不会影响 x2 的变换,因为已经被固定了,那么 x3 也不会发生变化,因此 x1,x3 变的独立。
Proof:
chain 的联合概率分布如下:
图片
然后,condition on x2, 利用 Bayes rule 得到:
图片
再次利用 Bayes rule ,得到:
图片
由此得出结论  。


3.6 对撞结构
对撞结构是指 x1,x3 都是 x2 的原因,x2 又叫做 collider。这种情况下时,x1 和 x3 都影响 x2,但是信息没有从 x2 流向 x1 或者 x3,因此 x1 和 x3 是相互独立的。 的 association flow 被 x2 block 掉了,图中红线只有一半。 
图片
proof:
图片
如果固定 x2,即 condition on x2,此时 x1,x3 从独立变的相关了。举个不恰当的例子,x1 是财富,x2 是长相,x3 是追女孩,长得帅有钱才能追到女孩。如果某个人没有追到女孩,而我们观察到他帅,那他肯定没钱,如果他有钱,那他一定长得不行。
如果 condition on collider 节点的后代节点,x1,x3 也是相关的。可以把 x2 的后代节点想象成 x2 的代理节点。condition on 代理节点和 condition on x2 的效果是一样的。

3.7 d-分离


首先引入 blocked path 的概念,给定条件集合 Z,Z 里面的变量都是固定住值的,如果存在一条路径满足以下两种情况之一,这就是一条 blocked path:

  • 这条路径存在 chain()或者存在 fork(),且 condition on W(
  • 这条路径存在一个 collider W(  ),并且并且 W 的所有后代节点也不固定(


图片
同理,unblocked path 的定义与 block path 相反。blocked path 中不存在从 X 到 Y 的 association flow,被 block 掉了。unblocked path 中存在从 X 到 Y 的 association flow。
下面给出 d-分离的概念:
图片
在给定集合 Z 的条件下,如果 X 和 Y 中的任意两个节点之间的路径都被 block,那么就说 X 和 Y被 Z d-分离。zhiyao 存在一条路径是 unblock 的,则说 X 和 Y 被 Z d-连通。如果 X 和 Y 被 Z d-分离,可以得到 X 和 Y 在给定 Z 时一定是独立的。 表示 d 分离, 表示独立。
图片
小练习:
图片
判断下面几种情况是否是 d-分离

1. Are T and Y d-separated by the empty set?

No


2. Are T and Y d-separated by W2?

No


3. Are T and Y d-separated by {W2 , M1 }?

Yes


4. Are T and Y d-separated by {W1 , M2 }?

Yes


5. Are T and Y d-separated by {W1 , M2 ,X2}?

No


3.8 因果流和关联流


最后,总结下图上的因果流和关联流。关联流沿着 unblock path 流动,因果流沿着有向边流动。我们将沿着有向边的关联流称作因果关联 causal association。总体的 association 包括 causal association 和 non-causal association。一个典型的非因果关联的例子是 confounding association。
常见的贝叶斯网络是纯粹的统计模型,所以我们只谈论贝叶斯网络中的关联流动。不过,关联在贝叶斯网络中的流动方式与在因果图中的流动方式完全相同,关联都是沿着链和叉子流动的,除非 condition on 中间节点,而 collider 会阻止关联的流动,除非 condition on collider。我们可以通过两个节点是否被 d-分离来判断它们是否有关联(两者之间有关联流)。
因果图的特殊之处在于,我们还假设边具有因果意义(因果边假设,假设 3.3)。这个假设将因果关系引入我们的模型,它使一种类型的路径具有全新的意义:有向路径。这个假设赋予了有向路径独特的作用,即沿着它们蕴含因果关系。此外,这个假设是不对称的;“X 是 Y 的原因”和“Y 是 X 的原因”是不一样的。这意味着关联和因果关系之间有一个重要的区别:关联是对称的,而因果关系是不对称的。


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客