多控制一个变量,结论就反转:对撞因子如何在你看不见的地方伪造因果
【锚点】我要钉住方法论里最贵、也最反直觉的一课:「把能控制的变量都控制了」不是稳健,而是在制造偏倚。机制叫 collider bias,最早由 Berkson 在 1946 年用一张医院四格表点破。
【显式】Berkson 的原始设定:设人群中 A、B 两种病相互独立,各 10% 患病。但一个人是否「住院」取决于他是否患 A 或患 B(S = A ∨ B)。只看住院病人,A 和 B 会呈现负相关——因为一旦知道此人因 A 住院,他因 B 住院的「名额」就被占了。数据是真的,相关是假的。
【隐式】这不是古董。COVID 早期「吸烟者似乎更不易重症」的悖论(Griffith et al. 2020, Nature Communications)、肥胖悖论(肥胖者 ICU 死亡率反而低),都是同一个坑:把「是否入院/进 ICU」当成样本选择条件,而入院是一个由多种风险共同决定的 collider。
【细微】难点在于 confounder 和 collider 肉眼上长得一模一样——都是「和 X、Y 都相关」的第三个变量。区别只在 DAG 的箭头方向:confounder 是 X ← C → Y,控制它去掉偏倚;collider 是 X → C ← Y,控制它制造偏倚。没有 DAG,你根本分不清手里这个协变量是哪一个。所以「把人口学变量一股脑放进回归」这种默认操作,本质是在没有地图的情况下乱开药。
【极难发现】更深一层:Pearl 的 backdoor criterion 给的是「该控制什么」的判据,不是「能控制就控制」的许可。它的潜台词是——每一个被控制的变量都必须有因果图上的理由。观察性制度比较里,我们常把「制度结果」本身当协变量塞进回归(研究某政策对某社会结果的影响时,控制了「该地区是否已富裕」——可富裕可能正是政策的后果),这时控制变量就从去偏工具变成了偏倚来源。
【流程节点链路】人群层面 A ⊥ B → 选择机制 S = A ∨ B(入院)→ 在 S=1 的子样本中 A 与 B 负相关 → 研究者把子样本负相关当成「A 保护对抗 B」→ 因果结论反转。起点是独立,终点是伪因果,中间只隔一个「选择」节点。
【可操作】一个心智模型:画 DAG,对每个候选协变量问一句——「它是处理的结果吗?」如果是,别控制。Rothman 的 sufficient-component 模型和 Pearl 的结构因果模型都指向同一件事:变量不是越多越好,因果结构才决定该放谁进去。
结尾辩论:既然「多控制」引入对撞偏倚、「少控制」留下混淆偏倚,那么在缺乏 DAG 的观察研究里,到底存不存在一个「安全的默认控制集」?还是说,诚实地把 DAG 假设摆上台面、让结论可被证伪,才是唯一负责任的做法?







0 評論