数据科学:因果推断(一)—— 辛普森悖论

There are three kinds of lies: lies, damned lies, and statistics.

——Mark Twain

辛普森悖论——描述

辛普森悖论(Simpson’s paradox)是概率统计中的一种现象:在变量 Z 的每一个分层上,变量 X 和变量 Y 都表现出一致的相关性,但是在 Z 的整体上,X 和 Y 却呈现出与之相反的相关性。该现象于 20 世纪初就有人讨论,但一直到 1951 年 E.H.辛普森在他发表的论文中阐述此一现象后,该现象才算正式地被描述解释,辛普森悖论这个名字是由柯林·布莱斯(Colin R. Blyth)在 1972 年提出的。

以 BBG 药物(Bad/Bad/Good Drug)之谜为例,假设有一种新药 D,这种新药似乎可以降低心脏病发作的风险,我们通过临床观测收集到了如下数据(数据来自观测实验而非随机化实验):

整体来看,服药组和未服药组各有 60 人,男性和女性各有 60 人,不同人群的心脏发病率表现如下:

  1. 对于女性患者:未服药组的心脏病发病率 5% < 服药组的心脏病发病率 8%;
  2. 对于男性患者:未服药组的心脏病发病率 30% < 服药组的心脏病发病率 40%;
  3. 对于所有患者:未服药组的心脏病发病率 22% > 服药组的心脏病发病率 18%;

这种药物似乎对女性有害,对男性也有害,但却对整个人类有益!一个表面的解决方案是,当我们知道病人的性别是男性或者是女性时,我们不采用这种药物疗法,但如果病人的性别是未知的,我们就应该采用这种疗法!但显然,这个结论是荒谬的。这三句话中一定有一句是错的,但错的是哪一句?为什么?这种令人迷惑不解的情况究竟是如何发生的呢?

辛普森悖论——解决

任何声称能够解决悖论的方法都应该能够回答一些关于悖论的基本问题:

  1. 解释悖论让人困惑的原因;
  2. 确定悖论出现的场景类别;
  3. 挖掘悖论掩盖的正确结论;

辛普森逆转

“辛普森逆转”是指在合并样本时,两个或多个不同样本关于某一特定事件的相对频率出现反转的现象。在上面的例子中,我们可以看到两组相对频率:1/20 < 3/4012/40 < 8/20,然而 (1 + 12)/(20 + 40) > (3 + 8)/(40 + 20)

为了直观理解辛普森逆转机制,我们通过混合不同浓度的溶液来类比混合不同性别心脏发病率的场景,其中容器的形状代表性别,女性用圆形容器来表示,男性则用方形容器来表示,患者发病率用黑色阴影来表示,混合前圆形容器和方形容器干预组液体浓度都要大于对照组,混合后干预组液体浓度却高于对照组:

辛普森逆转通常满足两个前提:

  1. 不同 Z 分层对应的 Y 值相差很大:男性患者的发病率(33.3%)远高于女性患者的发病率(6.7%);
  2. Z 在干预组和对照组的分布有明显差异:男性在对照组占比(66.7%)远高于在干预组占比(33.3%);

辛普森悖论

辛普森逆转只是一个纯粹的数字事实,本身并无新奇之处,它最多只是纠正了人们对“平均表现”的错误概念。而悖论的含义不止于此,它应该能够引起两种为绝大部分人深信不疑的信念之间的冲突。在 BBG 药物悖论中,当“对男性有害”“对女性有害”“对人类有益”这三个陈述被简单理解为比例增减时,它们在数学上并不矛盾,但是你可能认为这种情况在现实世界中不可能存在,因为一种药物不可能既导致心脏病发作又防止心脏病发作。幸运的是,你的直觉是对的,BBG 药物确实不存在!

确凿性原则:假如无论事件 C 是否发生,某个行动都会增加某一结果的可能性,则该行动也将在我们不知道事件 C 是否发生的情况下增加这个结果的可能性,前提是该行动不会改变 C 的概率。

根据确凿性原则,以下三种陈述之一必定为假:

  1. 药物 D 增加了男性患者和女性患者的心脏病发作的概率;
  2. 药物 D 降低了整个总体的心脏病发作的概率;
  3. 药物 D 不会改变男性和女性的数量;

因为药物改变病人性别的事不太可能发生,所以前两句陈述中一定有一句为假。那么,哪句陈述是假的?要回答这个问题,我们必须在数据之外探寻数据生成的过程。我们可以通过以下因果图对 BBG 药物数据的产生过程建模,这张图对性别对心脏病发作风险的影响(男性患者的风险更大),以及性别对患者是否选择服用药物 D 的影响(女性更倾向于服用药物 D)进行了编码,性别因素构成了是否服用药物和心脏病发作的混淆因子

为了客观估计药物对心脏病的影响,我们必须对混淆因子进行控制,或按照一般总体中性别分布对不同性别下药物效果进行加权:

  1. 对于女性患者:未服药组的心脏病发病率 5% < 服药组的心脏病发病率 8%;
  2. 对于男性患者:未服药组的心脏病发病率 30% < 服药组的心脏病发病率 40%;
  3. 对于所有患者:未服药组的心脏病发病率 5% × 0.5 + 30% × 0.5 = 17.5% < 服药组的心脏病发病率 8% × 0.5 + 40% × 0.5 = 24%

至此,我们找到了关于 BBG 药物最清晰、明确的答案:药物 D 不是 BBG 药物,而是 BBB 药物,对女性有害、对男性有害、对人类有害。

至此,我们回答了 BBG 药物悖论中的基本问题:

  1. 解释悖论让人困惑的原因:从心脏病发病率来看,BBG 药物似乎对男性有害、对女性有害、对全体人类有益,这是荒谬的,违反了绝大多数人的直觉;
  2. 确定悖论出现的场景类别:BBG 药物悖论产生的前提有三,① 性别因素既是影响是否服用药物的原因,又是影响患者发病率的原因,即性别是药物服用和发病的混淆因子;② 不同性别下,发病率差别较大;③ 不同性别下,药物服用比例差别较大;
  3. 挖掘悖论掩盖的正确结论:控制混淆因子,分层看数据或者按混淆因子在一般总体中的分布情况对统计数据进行修正,可得正确结论,BBG 药物对男性有害、对女性有害、对人类有害;

分合取决于因果而非数据

关于辛普森悖论,还应明确:

  1. 辛普森悖论的存在并不意味着聚合数据总是错的:是分是合取决于数据的生成过程,而非数据本身;
  2. 辛普森悖论没有出现也不意味着混淆因子不存在:潜在的混淆因子仍然会干扰统计推断,只是没有达到辛普森悖论的极端表现;

假设高血压是心脏病发作的可能原因,而药物 B 能降低血压,研究人员向看看这种药物是否也能降低心脏病发作的风险,因此他们在病人服药后测量了病人的血压,并观察病人是否会出现心脏病发作的情况:

这些数据看起来非常熟悉,其中的数字和 BBG 药物的统计数据是完全一致的。我们可以通过以下因果图对服用药物 B、血压、心脏病发作三者建模,与 BBG 因果图不同的是,血压不再是药物服用和心脏病发作的混淆因子,而是二者之间的中介物:

“服用药物 B -> 心脏病发作”这一因果关系中没有混杂因子,所以数据分层是不必要的。事实上,如果控制血压会使其中一条因果路径失效(而且可能是最重要的那条因果路径),导致药物无法通过这条路径发挥作用。鉴于此,我们得出的结论与在 BBG 药物的例子中得到的结论完全相反:药物 B 能有效预防心脏病发作。

辛普森悖论——实例

肾结石疗法

1996 年发表的一篇观察性研究报告表明,对于摘除小型肾结石而言,开腹手术比内窥镜手术的恢复率高,对于摘除较大的肾结石而言,开腹手术也有更高的恢复率。然而就总体而言,开腹手术的恢复率反而较低。

小肾结石被认为是不太严重的病例,开腹手术比内窥镜手术更加激进,因此对于小肾结石,医生更有可能推荐保守内窥镜手术,因为病情不太严重,患者也更有可能首先成功恢复。对于严重的大肾结石,医生往往选择更激进的开腹手术,较大肾结石的病人本身的恢复率较低。

吸烟者存活率更高?

在 1995 年发表的一份关于甲状腺疾病的研究报告中,数据显示吸烟者的存活率(76%)比不吸烟者的存活率(69%)更高,寿命平均多出20年。然而,在样本的7个年龄组中,有6个年龄组中不吸烟者的存活率更高,而第7个年龄组中二者的差异微乎其微。年龄显然是吸烟和存活率的混杂因子:吸烟者的平均年龄比不吸烟者小(很可能是因为年老的吸烟者已经死了)。根据年龄来分割数据,我们就可以得出正确的结论:吸烟对存活率有负面影响。

运动水平与体内胆固醇水平

逆转也可能发生在包含连续变量的情况,假设有一项关于各年龄段群体每周的运动时间与其体内胆固醇水平之关系的研究。如左图所示,我们以 x 轴表示运动时间,以 y 轴表示胆固醇水平。一方面,我们在每个年龄组中都看到了向下的趋势,表明运动可能的确有降低人体胆固醇水平的效果。另一方面,如果我们使用相同的散点图,但不按年龄对数据进行分层,如右图所示,那么我们就会看到一个明显向上的趋势,表明运动得越多,人体胆固醇水平就越高。看起来我们再次遇到了 BBG 药物的情况,其中运动就是那个药物:它似乎对每个年龄组都产生了有益的影响,却对整个总体有害。

像往常一样,要决定运动是有益的还是有害的,我们需要考察数据背后的故事。数据显示,总体中年龄越大的人运动得越多。因为更可能发生的是年龄影响运动,而不是反过来。同时,年龄可能对胆固醇水平也有因果效应。因此我们得出结论,年龄可能是运动时间和胆固醇水平的混杂因子,我们应该对年龄进行变量控制。换言之,我们应该看的是按照年龄组别进行分层后的数据,并据其得出结论:无论年龄大小,运动都是有益的。

参考

坚持原创技术分享,您的支持将鼓励我继续创作!