跳转到内容
← 返回定理
概率论基础18 分钟阅读

贝叶斯定理

Bayes' Theorem

bayes·1763
概率论贝叶斯条件概率统计推断

一个直觉:99% 准确的检测呈阳性,你患病的概率却只有约 9%

设想一种发病率千分之一的罕见病,检测准确率高达 99%。你拿到一张阳性报告,第一反应多半是"完了,九成九中招了"。可正确答案是:你真正患病的概率大约只有 9%。原因不难理解——病太罕见,在一万个人里只有十个真病人,却有约一百个健康人被误报为阳性,于是阳性人群里假警报远多于真病例。这个反直觉的结论,正是贝叶斯定理算出来的,也是无数医生和病人栽过的跟头。

吉仁泽(Gerd Gigerenzer)主张把百分数改成自然频数。一千人里约一人真有病;检测让这一个人几乎一定呈阳性,同时大约十个健康人也会呈阳性。阳性队伍里十一人,真病人只有一个,大约 9%。同一笔账,不写公式也能走完。百分数把基数藏起来,频数把队伍画出来。教学实验里,医生在频数框架下少踩假阳性。定理没有变,工作记忆的负荷变了。

定理本身的来历同样出人意料。提出它的托马斯·贝叶斯是 18 世纪英国的一位长老会牧师、业余数学家,他生前从未把这个结果发表。论文《论有关机会问题的求解》是他 1761 年去世后,由朋友理查德·普莱斯整理,于 1763 年代为提交给皇家学会的。一位牧师压在抽屉里的手稿,如今支撑着垃圾邮件过滤、医学诊断和自动驾驶的传感器融合。普莱斯不只是邮差。他补写了应用场景,并把手稿送进皇家学会。没有这次整理,抽屉里的逆概率未必叫贝叶斯。拉普拉斯 1774 年的独立重写更一般,十九世纪的人用的其实是拉普拉斯的版本。"贝叶斯"这个姓,是二十世纪追认的品牌。

定理陈述

贝叶斯定理(Bayes' Theorem)是概率论中关于条件概率的基本定理。

$A$$B$ 是两个事件,且 $P(B) > 0$,则

P(AB)=P(BA)P(A)P(B)P(A|B) = \frac{P(B|A) \cdot P(A)}{P(B)}

其中: - $P(A|B)$ 是在 $B$ 发生的条件下 $A$ 发生的概率(后验概率) - $P(B|A)$ 是在 $A$ 发生的条件下 $B$ 发生的概率(似然) - $P(A)$$A$ 的先验概率(先验) - $P(B)$$B$ 的边缘概率(证据

更一般的形式:设 A1,A2,,AnA_1, A_2, \ldots, A_n 是样本空间的一个划分,则

P(AiB)=P(BAi)P(Ai)j=1nP(BAj)P(Aj)P(A_i|B) = \frac{P(B|A_i) \cdot P(A_i)}{\sum_{j=1}^n P(B|A_j) \cdot P(A_j)}

直觉理解

贝叶斯定理的核心思想是:根据新证据更新信念。想象你是一位医生。一种罕见病的发病率为 0.1%(先验概率)。你有一种检测方法,准确率为 99%(如果患病,99% 检测为阳性;如果健康,1% 误检为阳性)。现在一位患者检测呈阳性——他真正患病的概率是多少?直觉上可能会说 99%,但贝叶斯定理告诉我们:

P(患病阳性)=0.99×0.0010.99×0.001+0.01×0.9999%P(\text{患病}|\text{阳性}) = \frac{0.99 \times 0.001}{0.99 \times 0.001 + 0.01 \times 0.999} \approx 9\%

因为疾病本身很罕见,即使检测很准确,阳性结果中仍有大量假阳性。这就是贝叶斯思维的力量:先验信息(发病率)与新证据(检测结果)相结合,得到更新后的判断。

证明思路

贝叶斯定理直接由条件概率的定义推导。由条件概率定义:

P(AB)=P(AB)P(B),P(BA)=P(AB)P(A)P(A|B) = \frac{P(A \cap B)}{P(B)}, \quad P(B|A) = \frac{P(A \cap B)}{P(A)}

从第二个等式解出 P(AB)=P(BA)P(A)P(A \cap B) = P(B|A) \cdot P(A),代入第一个等式:

P(AB)=P(BA)P(A)P(B)P(A|B) = \frac{P(B|A) \cdot P(A)}{P(B)}

对分母使用全概率公式:

P(B)=j=1nP(BAj)P(Aj)P(B) = \sum_{j=1}^n P(B|A_j) \cdot P(A_j)

即得贝叶斯定理的一般形式。

历史背景

贝叶斯定理的发现者托马斯·贝叶斯(Thomas Bayes,约 1701—1761)是一位英国长老会牧师和业余数学家。他从未发表过这一定理——论文《论有关机会问题的求解》在他去世后由朋友理查德·普莱斯整理增补,于 1763 年提交给皇家学会,发表在《自然科学会报》(Philosophical Transactions)上。

拉普拉斯在不知道贝叶斯工作的情况下,于 1774 年的《论事件之原因的概率》(Mémoire sur la probabilité des causes par les événements)中独立、且以完全一般的形式重新发现了这一结果,并将其应用于人口统计和天文学。在拉普拉斯之后近一个世纪里,这套方法被统称为"逆概率"(inverse probability);今天通用的"贝叶斯"之名,是 20 世纪才追认确立的。

贝叶斯方法在 19 世纪和 20 世纪初被广泛使用,但在 20 世纪中期因主观性争议而被打入冷宫。频率学派批评先验概率的主观选择。直到 1990 年代,计算机算力的提升(特别是马尔可夫链蒙特卡洛方法)使得贝叶斯计算变得可行,贝叶斯方法强势复兴。Metropolis 等人 1953 年的抽样、Gelfand 与 Smith 1990 年把它接进统计,高维后验才不必靠手推共轭。先验之争没有消失,只是计算不再是挡路的第一块石头。主观可以建模,不等于主观被取消。无信息先验听起来公平,换一种参数写法后往往不再平坦。"什么都不知道"会偷偷偏向某一侧。把先验写出来给人看,比假装没有假设更接近科学。频率学派的显著性门槛同样是选择,只是印在教材封面上,显得不像选择。p < 0.05 是一条被印出来的先验:愿意把假阳性放在二十次里一次。贝叶斯把这条线改成连续的后验,代价是你必须说出以前信什么。不愿意说,并不表示你没有信。把假设写进公式的分母,比把假设藏进"常识"更可被批评。可被批评,才叫方法。9% 那个例子应当被当课堂仪器反复拆开:改患病率、改假阳性,看后验怎么走。仪器比口号记得牢。改一个数,9% 会跳,直觉才会服。把患病率乘十,后验几乎翻倍,这比背公式更像理解。

应用

贝叶斯定理是现代数据科学的核心工具:

  1. 机器学习:朴素贝叶斯分类器——垃圾邮件过滤的经典算法
  2. 医学诊断:根据检测结果更新患病概率,避免假阳性的误导
  3. 搜索引擎:文档相关性排序——先验(文档重要性)与似然(查询匹配度)的结合
  4. 自动驾驶:传感器融合——将来自摄像头、雷达、激光雷达的数据融合为统一的环境模型
  5. 金融风控:根据市场信号更新违约概率
  6. 自然语言处理:贝叶斯推理用于词性标注、语音识别等

与其他定理的关系

  • 条件概率定义:贝叶斯定理是条件概率定义的直接推论
  • 全概率公式:贝叶斯定理的分母由全概率公式给出
  • 贝叶斯推断:贝叶斯定理是贝叶斯统计推断的理论基础——将参数视为随机变量
  • 信息论:贝叶斯更新与 KL 散度最小化等价
  • 频率学派 vs 贝叶斯学派:统计学中两大范式的根本区别在于对概率的解释

贝叶斯思维的深层含义

贝叶斯定理不仅是一个计算公式,更代表了一种认识论——贝叶斯主义

频率学派 vs 贝叶斯学派

  • 频率学派:概率是事件在大量重复试验中的频率。参数是固定的未知量。
  • 贝叶斯学派:概率是对不确定性的度量(信念度)。参数是随机变量,有先验分布。

贝叶斯定理提供了两种观点之间的桥梁:先验信念 + 数据 → 后验信念。

贝叶斯更新的迭代性质

贝叶斯更新可以迭代使用:今天的后验是明天的先验。

P(θD1,D2)=P(D2θ,D1)P(θD1)P(D2D1)P(\theta | D_1, D_2) = \frac{P(D_2 | \theta, D_1) \cdot P(\theta | D_1)}{P(D_2 | D_1)}

这意味着贝叶斯学习是一个渐进过程——随着数据积累,后验分布越来越集中于真实参数附近。今天的后验明天当先验,是同一条公式的循环调用。数据多了,先验的形状会淡出;数据少时,先验就是结论的一半。罕见病那 9% 之所以反直觉,正是先验太小、证据不够把队伍翻过来。多测一次、换更高特异度,都是在给分母减假阳性,而不是把灵敏度再刷一层金。

先验选择

先验概率的选择是贝叶斯方法中最具争议的部分: - 无信息先验:如均匀分布——表示"不知道" - 共轭先验:与似然函数共轭,使得后验与先验同族——计算方便 - 经验贝叶斯:从数据中估计先验——折中方案

具体计算示例

医学诊断的经典例子(沿用本文开头的参数):

  • 疾病患病率:$P(D) = 0.001$(千分之一)
  • 检测灵敏度:$P(+|D) = 0.99$(患者检测为阳性的概率)
  • 检测特异度:P(Dˉ)=0.99P(-|\bar{D}) = 0.99(健康人检测为阴性的概率)
  • 假阳性率:P(+Dˉ)=0.01P(+|\bar{D}) = 0.01

P(D+)=P(+D)P(D)P(+D)P(D)+P(+Dˉ)P(Dˉ)=0.99×0.0010.99×0.001+0.01×0.9999.0%P(D|+) = \frac{P(+|D)P(D)}{P(+|D)P(D) + P(+|\bar{D})P(\bar{D})} = \frac{0.99 \times 0.001}{0.99 \times 0.001 + 0.01 \times 0.999} \approx 9.0\%

即使检测为阳性,真正患病的概率也只有约 9%——这是因为疾病本身太罕见了。可以看出,假阳性率从 1% 升到 5% 会让这个后验概率进一步跌到约 2%:在罕见病筛查中,特异度(控制假阳性)往往比灵敏度更能左右阳性预测值。

法庭上的"检察官谬误"是同一张表的镜像:把"若无罪,证据这么巧的概率很小"听成"有罪的概率很大"。漏掉的是无罪的人本来就多。DNA 匹配如果先验是"城里随便一个人",后验和"嫌疑人已经锁在屋里"完全不是一个数。条件方向一反,判决跟着反。贝叶斯要你先问:阳性之前,队伍有多长。

贝叶斯定理与信息论

贝叶斯定理与信息论之间存在深刻联系。信息增益(Kullback-Leibler 散度)量化了从先验到后验的信息变化:

DKL(PpostPprior)=Ppost(θ)lnPpost(θ)Pprior(θ)dθD_{KL}(P_{\text{post}} \| P_{\text{prior}}) = \int P_{\text{post}}(\theta) \ln \frac{P_{\text{post}}(\theta)}{P_{\text{prior}}(\theta)} d\theta

这等价于贝叶斯更新中的互信息 I(θ;D)=H(θ)H(θD)I(\theta; D) = H(\theta) - H(\theta|D)——数据提供的信息量等于先验熵减去后验熵。

贝叶斯奥卡姆剃刀:边际似然 P(D)=P(Dθ)P(θ)dθP(D) = \int P(D|\theta)P(\theta)d\theta 自动惩罚过于复杂的模型——复杂模型的参数空间大,先验分散,因此边际似然低。这为模型选择提供了原则性的贝叶斯方法。

贝叶斯网络与因果推断

贝叶斯网络(Bayesian Network)是有向无环图(DAG)表示的联合概率分布——每个节点的条件概率由父节点决定。贝叶斯网络是表示和推理不确定知识的强大工具。

因果推断:Judea Pearl 将贝叶斯网络扩展为因果模型——用 do 算子 do(X=x)\text{do}(X = x) 区分观察到 $X = x$ 和干预使 $X = x$。贝叶斯定理描述的是关联($P(Y|X)$),而因果推断描述的是干预(P(Ydo(X))P(Y|\text{do}(X)))——两者在有混淆变量时不相等。

Pearl 的"梯子"将因果推断分为三个层次:关联(看到什么)、干预(做什么)、反事实(如果当时……)。贝叶斯定理在第一层,因果推断需要更高的层次。

贝叶斯方法的局限性

贝叶斯方法并非万能:

先验敏感性:当数据量小时,后验对先验的选择高度敏感——不同的合理先验可能导致截然不同的后验。这在高维问题中尤为突出。

计算瓶颈:精确贝叶斯推断需要对整个参数空间积分——这在高维中计算上不可行。MCMC 和变分推断是近似方法,但各有局限。

模型误设:如果模型本身错误(似然函数不正确),贝叶斯推断的结果可能严重偏离真实——"垃圾进,垃圾出"。

主观性争议:频率学派批评贝叶斯先验的主观选择——不同的人可能选择不同的先验,得到不同的结论。贝叶斯学派回应说:先验是透明的假设,频率学派的模型选择同样是主观的。

垃圾邮件过滤是这套更新最脏也最成功的现场。先验是"一封随机邮件是垃圾的比例",似然是词在垃圾里出现的频率。每个词都把后验拧一点,阈值一过就进垃圾箱。词表会漂,对手会加空格和同形字,过滤器必须继续更新。这里没有一次算完的 9%,只有一条每天被数据改写的后验。牧师的逆概率,落到收件箱里是一场军备竞赛。自动驾驶的传感器融合是同一张表的干净版:雷达说有障碍的似然,乘上"这条车道出现行人"的先验。摄像头和激光雷达再来一次更新。融合不是投票,是按各自的假阳性率加权。哪一路更容易误报,哪一路的似然就要打折。99% 准确若配上极低先验,后验仍然可以很小——开头那道病的算术,在这里变成该不该刹车。

跨域连接

  • 筛查与早期发现:本文那个千分之一患病率的算例给出约 9% 的阳性预测值,机制是健康人基数太大,1% 的误报率乘以 99.9% 的人群,数量压过了真阳性。推论是筛查阈值必须随目标人群的患病率调整——人群划得越宽,同一台设备产生的误报绝对数就越大。
  • 临床试验:把特异度从 99% 降到 95%,同一算例的后验就从约 9% 跌到约 2%。在罕见病里,控制假阳性比提高灵敏度更能左右阳性预测值——这条量级关系直接决定确证性试验该优先改进哪一端,而它与"先想办法别漏诊"的本能恰好相反。
  • 认知偏差:人们把"患病时检出阳性的概率"直接当成"阳性时患病的概率",先验被整个忽略。可检验后果是把同一问题改成自然频数陈述(一万人里有十个病人),正确率显著上升——出错的是表述格式而非算术能力,该改的因此是沟通方式。
  • 概率论:定理本身只是条件概率定义的代数变形,分母由全概率公式给出。它不制造任何新信息——先验从哪来、似然是否可信,全都是定理之外的问题,所有长久的争议也都落在这两处。
  • 机器学习:朴素贝叶斯把词与词条件独立这个明显错误的假设照单全收,分类精度却很高,因为决策只取决于后验的排序而非数值。推论是校准很差的模型仍可能分类很准,可一旦拿它的概率去算期望效用,误差就直接进入决策:排序对单调变换免疫,期望值不免疫。

参考文献

  1. Thomas Bayes, "An Essay towards solving a Problem in the Doctrine of Chances" (1763).
  2. Pierre-Simon Laplace, Théorie analytique des probabilités (1812).
  3. E.T. Jaynes, Probability Theory: The Logic of Science (2003).
  4. Andrew Gelman et al., Bayesian Data Analysis (3rd ed., 2013).
  5. Sharon Bertsch McGrayne, The Theory That Would Not Die (2011).
  6. Gigerenzer, G., & Hoffrage, U. (1995). How to improve Bayesian reasoning without instruction: Frequency formats. Psychological Review, 102(4), 684–704.

贝叶斯定理 P(AB)=P(BA)P(A)P(B)P(A\mid B)=\dfrac{P(B\mid A)\,P(A)}{P(B)} 给出如何用新证据更新概率。它是垃圾邮件过滤、医学诊断(结合检验灵敏度与患病率)、贝叶斯统计推断与许多机器学习方法的核心,量化了"先验信念如何被数据修正为后验信念"。