条件概率与贝叶斯定理的方阵表示
概率里最反直觉、也最实用的一块,是「知道了某件事之后,另一件事的概率怎么变」。本页用方阵——一个点代表一个人——把抽象的条件概率摊成能数的格子:先建立条件概率的换分母直觉,再用它推出贝叶斯定理,并复现容易误判的假阳性悖论。用可数的点来讲概率并非只是教学花招:Gigerenzer 与 Hoffrage 的实验表明,把同一道贝叶斯题从概率表述换成自然频次表述,正确率从约 16% 升到约 46% [3]。
1 · 条件概率的分母
条件概率 是「已知 B 发生了,这时 A 发生的概率」。它和无条件的 区别只在分母:不再除以全体,而是只在 B 这群里数 A,即 ,其中要求 。
1.1 · 三者的换算关系
把方阵按是否属于 A、是否属于 B 分成四类,三个概率都是从同一张四格表里读出来的:
| 属于 B | 不属于 B | 行合计 | |
|---|---|---|---|
| 属于 A | |||
| 不属于 A | |||
| 列合计 | 100 |
联合概率 ,边缘概率 ,而条件概率 ——分母换成了 B 那一列的合计,不再是 100。恒等式 不过是「先圈出 B,再在 B 里取 A」的两步连乘。
注 · 方阵的点数是整数,与滑块上的概率对不齐。condCounts 先取
,再取
,两次取整叠加。实测把滑块设成
、
时,、,图 1-1 显示的
是 0.67 而非 0.80;、
时显示 0.57。B 越小误差越大,这是用 100 个可数对象表示概率的代价。
1.2 · 两个方向的条件概率
「下雨时我多半带伞」和「我带伞时多半在下雨」是两回事:前者是 ,后者是 ,分母一个是下雨的日子、一个是带伞的日子,数值可以差很远。同一批人、同一个方阵,两个方向的比例一般不相等——在 时, 当且仅当 。把这两者混为一谈,就是检察官谬误 (prosecutor's fallacy) [4] 与误读检测结果的根源。如何从一个换算到另一个,正是 §2 的贝叶斯定理要回答的。
1.3 · 独立与互斥
与 独立的定义式是 。在 时它等价于 ,即知道 B 对 A 没有任何信息;但 时 无定义,而独立性仍然成立,所以定义要落在乘积式上。图 1-1 的 滑块下界就是 0,拖到底即可看到这一格:读数打印一个破折号。
警示 · 独立与互斥是两回事,且方向相反。互斥是 ——四格表里「既 A 又 B」那格清零;在 时它意味着 ,即强负相关,绝不可能独立。两个词都表达「无关」的日常语感,但一个说的是「同时发生的概率等于各自概率之积」,另一个说的是「不可能同时发生」。
1.4 · 条件概率的落点
朴素贝叶斯分类器(垃圾邮件的 )、推荐与广告的点击率 、医学与风控里「出现某症状或某特征后的风险」,以及一切带条件的统计,用的都是这一个分母替换。
2 · 从似然到后验
§1 表明两个方向的条件概率一般不相等,但两者之间有一座桥,这就是贝叶斯定理。最典型的场景:有一种病,检测结果呈阳性,检测本身很准(有病几乎必中),那么真有病的概率是多少?直觉常以为接近检测的准确度,正确答案往往低得多。
检测的准确度给出的是 ,即有病的人里测出阳性的比例;而真正要问的是 ,即测出阳性的人里真有病的比例。分母完全不同,贝叶斯定理负责把前者换算成后者,关键变量是那个最容易被忽略的患病率,即先验概率 (prior)。
2.1 · 方阵到公式的翻译
后验等于真阳除以所有阳性,也就是真阳除以真阳加假阳。写成概率即贝叶斯定理:
分子是「有病且测出阳性」,分母是「所有测出阳性的」,即有病的真阳加没病的假阳。先验 同时出现在分子里:病越罕见,分子越小,后验被假阳性稀释得越严重。
2.2 · 基础比率与假阳性悖论
保持灵敏度 99%、假阳率 5%,把患病率拖到 1%:1000 人里约有 10 个真病人,其中期望 9.9 人被测出(方阵取整后显示 10 个真阳);而 990 个健康人里有约 50 个被误报。于是阳性共 60 人,真有病的只有 10 个,。检测明明很准,阳性里却约八成是误报。
根源在于健康人基数太大:哪怕每人只有 5% 的误报概率,绝对数量也能淹没真正的病人。忽略这个基础比率 (base rate)、直接把检测准确度当成患病概率,就是基础比率谬误 [2]。1978 年的一项调查里,60 名哈佛医学院师生面对同类题目只有 11 人答对,多数人答 95% [1]。
注 · 灵敏度从 99% 拨到 100%,方阵一个点都不变。实测 bayesModel(0.01, 0.99, 0.05) 与 bayesModel(0.01, 1, 0.05) 的真阳都是 10——前者的期望值 9.9 被 Math.round 进位,漏检的那 0.1 人在 1000 点的粒度上根本看不见。原以为会少掉一个绿点,实际没有。
2.3 · 0.1% 患病率下的后验
把参数推到更极端:患病率 (每 1000 人一例)、检测无假阴(灵敏度 )、假阳率 。
例 2.1 先用全概率公式算出分母,即任何人测出阳性的总概率,它由「有病且阳性」与「没病但阳性」两条路径合成:
再代入贝叶斯定理,分子是「有病且阳性」这一条路径:
所以阳性者真有病的概率只有约 1.96%。把图 2-1 的三个滑块拨到患病率 0.1%、灵敏度 100%、假阳率 5%,真阳占全部阳性的比例()会还原出同一个数。
关键仍是基数差:1000 人里只有 1 个病人(灵敏度 100% 时必被测出),而 999 个健康人中有约 人被误报。阳性共约 51 人,真有病的只有 1 个。患病率从前一节的 1% 再降一个数量级到 0.1%,后验也随之从约 17% 跌到约 2%。先验越低,同一份「准」检测给出的阳性结果越不可信。
警示 ·「第一次的后验成为第二次的先验」这句话有前提:两次检测在给定患病状态下条件独立。同一套试剂、同一个体身上的系统性干扰(交叉反应物质、样本本身的性质)会让误报高度相关,对这类人复检往往还是阳性,第二次的似然比远小于 。这正是临床上复检要换一种原理的检测,而不是把同一支试纸再跑一遍的原因。
2.4 · 后验更新的落点
医学筛查(癌症与罕见病的复检策略)、垃圾邮件与风控(贝叶斯过滤、反欺诈打分)、机器学习(朴素贝叶斯、贝叶斯推断与 MAP 估计)、A/B 与在线学习(用数据不断把先验更新成后验)。凡是「拿到新证据,理性地修正原有判断」,底层都是这一个式子。
是定义。把它对 与 各写一遍,两式的分子同是 ,消去它再除以 ,即得 (需 )。左边是看到证据后的置信,右边的 是看到证据前的置信。本页做的事,就是把这一个式子变成方阵上能数出来的东西。
3 · 参考文献
- Casscells, W., Schoenberger, A., & Graboys, T. B. (1978). Interpretation by physicians of clinical laboratory results. New England Journal of Medicine, 299(18), 999–1001.
- Bar-Hillel, M. (1980). The base-rate fallacy in probability judgments. Acta Psychologica, 44(3), 211–233.
- Gigerenzer, G., & Hoffrage, U. (1995). How to improve Bayesian reasoning without instruction: Frequency formats. Psychological Review, 102(4), 684–704.
- Thompson, W. C., & Schumann, E. L. (1987). Interpretation of statistical evidence in criminal trials: The prosecutor's fallacy and the defense attorney's fallacy. Law and Human Behavior, 11(3), 167–187.
相关链接
- Conditional probability Wikipedia 条件概率的定义、与独立性和联合分布的关系, 以及常见谬误 (检察官谬误等)。
- Bayes' theorem Wikipedia 贝叶斯定理的推导、医学检测假阳性例子, 以及在统计推断里的角色。
- Base rate fallacy Wikipedia 忽略基础比率 (患病率) 导致严重高估后验的经典认知偏差——本讲 §2 的主角。
- Seeing Theory Brown University 把概率论做成可视化交互的经典网站, 贝叶斯一章与本讲思路相通。