患病人数
50 人
每万人 0.50%
阳性报告
149 人
其中假阳性 99
阳性预测值 PPV
33.2%
阳性里真患病的比例
阴性预测值 NPV
99.9%
阴性里真健康的比例
01
一万个人,真的数一遍
真阳性 · 有病且检出
假阳性 · 没病却报警
真阴性 · 没病且判对
02
这个数字是怎么算出来的
P(患病 | 阳性) =
灵敏度 × 患病率
灵敏度 × 患病率 + 误报率 × (1 − 患病率)
分子是「真有病又被检出」的人,分母是「所有拿到阳性报告」的人。
很多人下意识把分母当成病人总数——这就是悖论的起点。
03
同一件事,写进代码只剩四行
1
病人 = 10000 × 患病率
50 人 · 这一万人里真正有病的
2
真阳 = 病人 × 灵敏度
49.5 人 · 有病,也被查了出来
3
假阳 = (10000 − 病人) × 误报率
99.5 人 · 没病,却被报了警
4
后验 = 真阳 ÷ (真阳 + 假阳)
33.2% · 阳性里真患病的比例
这四行里没有一行需要你背贝叶斯定理——它就是上面那条分数线的四则运算。
把鼠标放到第 2、3 行上,上面对应的色块会亮起来:公式、代码、图形说的是同一件事,
只是三种语言。
04
连续五次阳性,信念如何被推着走
当前信念分布
检测之前的先验
人群平均值
中间八成的人落在这一带
平均
—
中位数
—
八成区间
—
较检测前
—
曲线是「四千个不同底子的人」在各自收到 k 次阳性之后的患病概率分布,
竖线是人群加权平均。它和逐次贝叶斯算出的单一数字是同一个答案,
只是顺带告诉了你:这个答案有多确定。
05
逐项拆解
| 人群 | 人数 | 占比 | 含义 |
|---|
检测本身的准确率没有任何问题。问题在于黄段:它是拿
9,950 个健康人乘以 1.0% 的误报率堆出来的,
而红段只有 50 个病人可抓。