Learning
VOL. VI · NO. 20 · Mathematics · 01 JAN 1970

相关性与因果性:数据不会说谎,但会误导

数学 · 01 JAN 1970 · 11 min read · 2,626 words
· · ·

产品经理的数学课 · 第20讲

相关性与因果性:数据不会说谎,但会误导

冰淇淋销量和溺水人数高度相关——但吃冰淇淋不会导致溺水。相关性不等于因果性,这是产品经理最容易犯的统计错误。


前言

你看到一个数据:「使用新功能的用户,留存率高 20%。」

你的结论:「新功能提高了留存率。」

但真的是这样吗?

也许本来就打算留存的用户更可能使用新功能——新功能没有提高留存,只是被高留存用户使用了。

相关性(Correlation):两个变量一起变化。
因果性(Causation):一个变量导致另一个变量变化。

冰淇淋和溺水的例子

  • 冰淇淋销量 ↑,溺水人数 ↑(正相关)
  • 但吃冰淇淋不会导致溺水
  • 真正的原因:夏天(天气热)→ 冰淇淋销量 ↑,同时游泳人数 ↑ → 溺水人数 ↑

相关性是真实的,但因果性是假的。


核心概念

相关系数:量化的相关性

皮尔逊相关系数(r):衡量两个变量的线性相关程度。

$$ r = \frac{\sum(x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum(x_i - \bar{x})^2 \sum(y_i - \bar{y})^2}} $$

取值范围:-1 到 +1

r 值含义
+1完全正相关
+0.7强正相关
0无相关
-0.7强负相关
-1完全负相关

例子

  • 身高和体重:r ≈ 0.7(正相关,高个子通常更重)
  • 学习时间和游戏时间:r ≈ -0.6(负相关,学习多通常游戏少)
  • 冰淇淋销量和溺水人数:r ≈ 0.8(正相关,但无因果性)

为什么相关不等于因果?

三种情况

情况一:混杂变量(Confounding Variable)

混杂变量(天气热)
    ↓           ↓
冰淇淋销量    溺水人数

天气热是混杂变量,它同时影响冰淇淋销量和溺水人数。冰淇淋和溺水之间没有因果关系。

情况二:反向因果(Reverse Causation)

使用新功能 ←→ 高留存

也许不是「使用新功能 → 高留存」,而是「高留存 → 使用新功能」——高留存的用户更活跃,更可能发现和使用新功能。

情况三:巧合(Coincidence)

两个变量碰巧一起变化,但没有任何关系。

例子:美国 cheese 消费量和「被床单缠住窒息而死」的人数高度相关(r ≈ 0.95)——但这是巧合。

辛普森悖论:整体和分组结论相反

辛普森悖论(Simpson’s Paradox):整体数据显示一个趋势,但分组后趋势反转。

例子

整体数据

组别转化率
新设计5.0%
旧设计5.5%

结论:旧设计更好。

分组数据

用户类型新设计旧设计
新用户3.0%(1000 人)2.5%(100 人)
老用户7.0%(100 人)6.5%(1000 人)

新设计在新用户和老用户中都更好! 但整体数据显示旧设计更好——因为旧设计主要在老用户中测试(老用户转化率本来就高)。

原因混杂变量(用户类型)没有被控制。

如何建立因果关系?

方法一:随机对照试验(RCT)

随机分配用户到实验组和控制组,消除混杂变量。

例子:随机 1000 人用新设计,1000 人用旧设计。如果新设计组转化率更高,可以推断新设计导致了更高的转化

方法二:自然实验

利用自然发生的随机事件(比如地区差异、时间差异)。

例子:A 地区先上线新功能,B 地区后上线。比较 A 和 B 的差异,可以推断功能效果。

方法三:工具变量(Instrumental Variable)

找一个影响处理变量但不直接影响结果的变量。

例子:用「距离商店的距离」作为「是否购买」的工具变量——距离影响购买,但不直接影响用户特征。

方法四:断点回归(Regression Discontinuity)

利用一个明确的阈值(比如年龄、分数)比较阈值两侧的差异。

例子:80 分以上获得奖励,80 分以下没有。比较 79 分和 81 分的用户——他们几乎一样,但一个有奖励一个没有。


产品经理的应用

应用场景一:功能效果评估

数据显示:使用新功能的用户留存率高 20%。

可能的因果关系

  • 新功能 → 高留存(功能有效)
  • 高留存 → 使用新功能(高留存用户更活跃)
  • 第三方变量 → 新功能使用 + 高留存(比如用户活跃度)

如何验证

  1. 随机对照试验:随机 50% 用户使用新功能,比较留存
  2. 倾向得分匹配:匹配使用和未使用新功能的用户,控制混杂变量

应用场景二:用户行为分析

你发现:「周末下单的用户,客单价高 15%。」

可能的解释

  • 周末用户更放松,愿意花更多钱(因果)
  • 周末用户有更多时间浏览,发现更多商品(因果)
  • 高客单价用户更可能在周末下单(反向因果)
  • 周末有促销活动(混杂变量)

如何验证:控制促销活动,比较同样促销条件下周末和工作日的客单价。

应用场景三:渠道归因

数据显示:「社交媒体带来的用户,7 日留存高 10%。」

可能的解释

  • 社交媒体用户质量更高(因果)
  • 社交媒体用户本来就是你的品牌粉丝(混杂变量)
  • 社交媒体渠道的用户更年轻,年轻人留存本来就高(混杂变量)

如何验证:用随机分配或倾向得分匹配,控制用户特征。


常见误区

误区一:看到相关就推断因果

「A 和 B 相关,所以 A 导致 B」

反例:「公鸡打鸣 → 太阳升起」——公鸡打鸣和太阳升起相关,但公鸡不会导致太阳升起。

误区二:忽略混杂变量

「新功能和高留存相关,所以新功能有效」

可能的混杂变量:用户活跃度、使用时长、用户特征。如果不控制这些变量,相关性可能是假的。

误区三:辛普森悖论

「整体数据显示旧设计更好,所以选旧设计」

分组数据显示新设计更好。整体数据的结论可能是被混杂变量扭曲的。看分组数据,不只看整体数据。

误区四:用观察数据推断因果

「观察数据显示 A 和 B 相关,所以 A 导致 B」

观察数据只能告诉你相关性,不能告诉你因果性。要推断因果,需要随机对照试验或自然实验。


PM/BA 应用

场景相关性/因果性工具决策价值
功能效果随机对照试验证明功能有效
用户行为倾向得分匹配控制混杂变量
渠道归因自然实验准确归因
辛普森悖论分组分析避免误导结论
因果推断工具变量/断点回归建立因果关系

课后测验

题目 1

数据显示:喝咖啡的人,心脏病风险高 20%。以下哪种解释最合理?

A. 咖啡导致心脏病
B. 喝咖啡的人更可能熬夜,熬夜导致心脏病
C. 咖啡和心脏病没有关系,只是巧合
D. 所有选项都有可能

查看答案与解析

答案:B(喝咖啡的人更可能熬夜,熬夜导致心脏病)

这是一个典型的混杂变量问题:

  • 喝咖啡和熬夜相关(喝咖啡的人更可能熬夜)
  • 熬夜和心脏病相关(熬夜导致心脏病风险增加)
  • 喝咖啡和心脏病的相关性可能来自熬夜这个混杂变量

如何验证:控制熬夜变量,比较同样熬夜程度下喝咖啡和不喝咖啡的人的心脏病风险。

题目 2

你的 A/B 测试显示:新设计转化率 8%,旧设计 6%。但你发现新设计组有更多老用户。这可能是什么问题?

A. 样本量太小
B. 辛普森悖论(混杂变量)
C. p 值不显著
D. 随机分配失败

查看答案与解析

答案:D(随机分配失败)

如果随机分配成功,两组的用户特征应该相似。新设计组有更多老用户,说明随机分配没有成功控制混杂变量

可能的原因

  • 随机分配执行不严格
  • 用户自选择(不是真正的随机)
  • 分层随机没有做好

解决方案:用倾向得分匹配或分层分析控制用户类型。

题目 3

以下哪种情况最适合推断因果关系?

A. 观察数据:使用新功能的用户留存高
B. 随机对照试验:随机分配用户使用新功能
C. 相关性分析:新功能使用和留存相关 r = 0.8
D. 回归分析:控制用户特征后,新功能和留存相关

查看答案与解析

答案:B(随机对照试验)

随机对照试验(RCT) 是推断因果关系的黄金标准:

  1. 随机分配消除混杂变量
  2. 两组只有处理不同,其他都一样
  3. 如果处理组结果更好,可以推断是处理导致的

A 和 C 只能说明相关性
D 比 A 和 C 好(控制了混杂变量),但仍然可能有未观测的混杂变量

RCT 是最强的因果推断方法。


本课要点

  1. 相关性 ≠ 因果性:两个变量一起变化,不代表一个导致另一个
  2. 混杂变量:真正的原因可能是第三个变量
  3. 辛普森悖论:整体和分组结论可能相反——看分组数据
  4. 随机对照试验:推断因果的黄金标准——随机分配消除混杂变量
  5. 观察数据只能说明相关性:要推断因果,需要实验或自然实验

延伸阅读

  • Pearl, 《The Book of Why》 — 因果推断的通俗读物
  • Holland, 《Statistics and Causal Inference》 — 因果推断的统计理论
  • Angrist & Pischke, 《Mostly Harmless Econometrics》 — 因果推断的实践方法

下一步

Group C 完成!下一课开始 Group D:概率分布:用数学描述不确定性 — 常见的概率分布及其应用场景。


工具提示:每次看到「相关性」数据时,问自己三个问题:(1) 有没有混杂变量?(2) 因果方向是什么?(3) 能做随机对照试验吗?这三个问题能避免大多数因果推断错误。