一句话定义:反事实推理(counterfactual reasoning)是虚构一个“本来可能发生”的平行版本,再和已发生的现实做比较,用来判断某件事到底是不是原因。
它的核心动作很像吃药。你头疼,吃了一片止痛药,半小时后不疼了。药真的起作用了吗?你能观察到的只有一条时间线。于是你问自己:如果当时没吃药,会不会也一样不疼?如果会,那药就没功劳;如果不会,药才可能是原因。问题是,人不可能同时活在两个世界里,那个“没吃药的世界”永远缺失,只能靠实验、模型或数据去估计。
日常生活里也一样。考完试分数涨了,是因为多刷了十套题,还是那几天睡得好?你没法重来一次,只能在脑子里“换一个变量、其他都不动”,这就是反事实的基本姿势。
它和相邻概念的区别,可以用因果推断里常说的三层阶梯来看:
| 层级 | 问的问题 | 典型做法 | 主要局限 |
|---|---|---|---|
| 相关(correlation) | A 和 B 是不是一起变? | 看统计、看数据 | 分不清谁导致谁 |
| 干预(intervention) | 如果我改变 A,B 会怎样? | 随机对照试验、A/B 测试 | 很多场景做不了实验 |
| 反事实 | 对这一个已发生的事,换个选择会怎样? | 因果模型、模拟、估计 | 无法直接观测,依赖假设 |
冰淇淋销量和溺水人数夏天一起涨,这是相关;禁售冰淇淋不会减少溺水,说明它不是原因。干预是主动去改;反事实则是针对已经发生的那一次,回头问“如果当时……”。
对从业者来说,这个视角很实用。做 A/B 测试,本质上就是人为造出一个反事实对照组。做推荐、风控或定价时,你只能看到已执行策略的结果,想评估新策略,就得用反事实估计的方法,否则很容易被历史数据带偏。做模型解释时,“把收入这项改成某个值,模型就会拒绝”这类反事实解释,往往比“收入权重很高”更能让人信服。
对普通人,它也值钱:复盘时少问“为什么失败”,多问“如果当时换个做法会怎样”,能少把巧合当成经验。需要提醒的是,反事实不是凭空算出来的,它建立在假设之上;假设错了,结论也会错。具体方法的实现细节,以官方文档和权威教材为准。
