卷 III · 认出来CH 13深度 13/24

混淆看不见,也还有一条路

后门准则要求你测到所有混淆变量。如果测不到呢?大多数教科书到这里就说「那就没办法了」。Pearl 1995 年证明了:在一种特定的结构下,办法还有——而且不需要对那个看不见的东西做任何假设。

前门准则不可识别卷 III 收尾

▷ 先判一次

有一个混淆变量,你完全没测到,也永远测不到(比如「基因倾向」)。它同时影响处理和结果,而且很强。这时候能不能从观察数据里算出真实因果效应?

A 不能,这是观察数据的根本极限B 能,只要样本量足够大C 能,但需要图上有一条特定的结构D 能,用机器学习足够复杂的模型可以逼近

直觉上 A 很有说服力。但它是错的——虽然它错得很有分寸。

吸烟与肺癌:一场持续二十年的争论

1950–60 年代,吸烟与肺癌的相关性已经很确凿。但费雪(R. A. Fisher,二十世纪最重要的统计学家之一)提出了一个当时无法反驳的替代解释:

也许存在某种基因,它既让人更容易上瘾抽烟,也让人更容易得肺癌。那么吸烟和肺癌的相关就是这个基因造成的,戒烟并不会降低患癌风险。

这是一个标准的混淆假设。而在当时,它无法被数据反驳:那个基因没人测得到,随机分配人去抽烟又不道德。争论就这样卡了二十年。

Pearl 后来指出:如果我们相信这样一张图,那么这场争论其实可以用数据裁决——

      U(基因,永远测不到)
    ↙                    ↘
  X(吸烟) →  M(肺里的焦油) →  Y(肺癌)

# 关键的两条结构假设:
#   1. U 不直接影响 M —— 基因不会决定你肺里沉积多少焦油,
#                        沉积多少只取决于你抽了多少
#   2. X 只能通过 M 影响 Y —— 吸烟致癌只有焦油这一条通道

为什么这就够了

诀窍是把一条路拆成两段,每一段各自都是干净的

∑ 拆成两段

第一段:X → M。这一段有后门吗?从 M 往回看,唯一能绕的路是 M ← X ← U → Y,但它走不到 M 这一侧——U 不指向 M。所以 X → M 这一段没有后门,直接回归就能识别。

第二段:M → Y。这一段有后门:M ← X ← U → Y。但注意这条路要经过 X,而 X 在这条路上是一个链上的中间节点——控制 X 就能把它堵住。而 X 我们是测得到的。

拼起来:X 对 Y 的总效应 = 第一段 × 第二段。

前门估计 = (X→M 的系数) × (控制 X 之后 M→Y 的系数)

整个论证里,U 从头到尾没有被测量,也没有被假设成不存在。它真真切切地在数据生成过程里,而且很强。我们只是绕开了它。

跑一遍

这台机器里 U 的强度我写得很足:U→X = 1.2U→Y = 1.6。八千个样本:

方法                              估计值      真值 1.2600
──────────────────────────────    ────────    ───────────
朴素回归 Y ~ X(被 U 污染)         2.0714      偏了 +64%
前门 a × b                         1.2557      对
控制 U(作弊,现实中做不到)         1.2583      对

前门估计的 1.2557 和「作弊地把 U 也控制进去」的 1.2583 几乎一样。而它只用了 X、M、Y 三列数据

◆ 前门准则(Pearl, 1995)

一组变量 M 满足关于 (X, Y)前门准则,如果:

  1. M 截断了 X 到 Y 的所有有向路径(没有绕过 M 的直接通道);
  2. X 到 M 没有未被阻断的后门路径
  3. M 到 Y 的所有后门路径都被 X 阻断

满足这三条时,因果效应可以只用 X、M、Y 的观察分布算出来:

P(Y|do(x)) = Σ_m P(m|x) × Σ_x' P(Y|m, x') P(x')

(线性情形下,这个式子就退化成上面那个「两段系数相乘」。)

代价在哪

前门看起来像免费的午餐,其实不是。它把「我测到了所有混淆」这个假设,换成了另外三个假设,而且每一个都可能站不住:

  • 「M 是唯一通道」——吸烟真的只通过焦油致癌吗?一氧化碳呢?其他致癌物呢?只要有一条绕过 M 的直接通道,前门估计就偏了。这是最难满足的一条。
  • 「U 不影响 M」——那个基因真的不影响焦油沉积吗?如果它也影响代谢速度,这条就破了。
  • 「M 测得准」——如果 M 有测量误差,两段系数都会被稀释(第 5 章的回归稀释),乘积会低估。

所以诚实的说法是:前门准则不是「不需要假设」,它是「换一组假设」。它的价值在于,这组新假设可能在某些问题上比「我测到了所有混淆」更容易辩护——因为它关心的是机制(有几条通道),而不是清单(有几个变量没测)。

顺带一提:前门准则在现实研究中用得并不多,因为「唯一通道」这条太苛刻。它的主要价值是概念性的——它证明了「测不到混淆就一定没救」这个信念是错的,从而打开了后来一整套识别理论。

什么时候真的没救

这一节是这门学问最值得尊敬的部分。

Pearl 和后来的研究者把后门、前门这些准则推广成了一套完整的演算——do-演算(do-calculus),只有三条规则:

规则 1  在什么条件下可以【加/删一个观测】
规则 2  在什么条件下可以【把 do 换成观测】     ← 后门准则是它的特例
规则 3  在什么条件下可以【直接删掉一个 do】

然后 Shpitser 和 Pearl(2006)、Huang 和 Valtorta(2006)各自证明了一件很强的事:

◆ 完备性定理

存在一个算法(ID 算法),对任意一张因果图和任意一个因果查询,要么给出一个只用观察数据的表达式,要么证明这个查询在这张图下不可识别

而且 do-演算那三条规则是完备的:如果 ID 算法说不可识别,那就是真的没有任何方法能从观察数据里算出它——不是「我们还没想到」,是不存在

这在工程上有一个很实在的意义:你可以在收集数据之前,先知道这个问题能不能答。

最简单的不可识别情形,就是一个赤裸裸的、没有中介的混淆:

      U(测不到)
    ↙           ↘
  X    ────────→  Y

# 没有 M,没有别的变量。
# 这张图下 P(Y|do(X)) 【不可识别】。
# 数据要多少有多少,答案都不在里面。

这时候唯一的出路是从图外面引入新的东西——一次随机化(第 14 章),或者一个工具变量、一次政策变化、一条分数线(卷 V)。

▸ 在现实里

「我们数据不够,再收集半年」——这句话在一部分场合是自欺欺人。如果你的问题在当前的图下不可识别,那么再收集十年的同类数据也没用,因为缺的不是量,是结构

正确的动作是换一种数据:能不能做一次小规模随机试验?有没有哪次改版是随机推的?有没有一条人为的分界线(比如「注册满 30 天送优惠券」)可以当断点用?找一个新的箭头,比堆同样的数据有用得多。

这也是这门学问对工程实践最直接的贡献:它让「这个问题能不能回答」变成一个可以在动手前判定的问题。

✗ 这个直觉是错的
测不到混淆变量,就一定没办法得到因果结论。 不一定。前门准则、工具变量、双重差分、断点回归,都是在「有未测混淆」的前提下工作的。它们靠的不是测到那个混淆,而是靠图上别的结构。

但反过来的错误同样要防:不是「总有办法」。ID 算法会明确告诉你什么时候没有办法,而这个「没有」是被证明了的,不是暂时的。

这两句话合起来才是完整的立场:可识别性是图的性质,不是数据的性质,也不是你努力程度的性质。

◇ 判词

C能,但需要图上有一条特定的结构。

前门准则要的那条结构是:一个完全截断因果通路、且不受混淆影响的中介。有它,混淆再强也绕得开(真值 1.2600,前门估出 1.2557);没有它,可能就真的无解。

A 「这是观察数据的根本极限」——很多人的默认信念,包括费雪当年。它错在把「后门准则失效」当成了「所有方法失效」。但它错得有分寸:确实存在真正不可识别的图,而且可以被证明。 B 「样本量足够大」——第 2 章那句话第三次出现:偏差不随 n 缩小。这本书里它会一直出现,因为它是最顽固的一个直觉。 D 「机器学习足够复杂」——模型复杂度提高的是拟合能力。拟合的是同一个被污染的关联,拟合得越好,越精确地复现那个偏了的数。第 23 章会把这件事讲透。

这一章的一句话

可识别性是图的性质:有的问题在你的数据下有唯一答案,有的问题被证明了没有答案——而这件事可以在收集数据之前就判定。

卷 III 到此结束。你现在能判断「该控制什么」和「能不能算」了。但你还没真正算过一个数。

卷 IV 开始动手。下一章先回到最贵也最干净的那把剪刀:随机化。你会看到一件很多人搞反的事——随机化并不让两组人一样。n=50 的时候两组的资历还差 0.217 个标准差,最差的一次差到 0.754。它保证的是另外一样东西。