全概率公式与贝叶斯公式
层级:A|必学
1. Bayes 公式做的事
我们常容易知道“某原因下观察到证据的概率”P(E∣H),却真正想知道“看到证据后原因成立的概率”P(H∣E)。Bayes 公式通过先验与所有可能原因对证据的解释,把条件方向反转。
2. 事件划分
B1,ldots,BK 若满足:
- 两两互斥;
- 并集为样本空间;
- P(Bk)>0;
称为样本空间的一个划分。任何结果恰落入一个 Bk。
例如类别事件 Y=1,ldots,K 构成划分。
3. 全概率公式
事件 A 可分解成互斥部分:
A=k=1⋃K(A∩Bk).
因此
P(A)=k=1∑KP(A∩Bk)=k=1∑KP(A∣Bk)P(Bk).
它对所有可能情形加权平均。机器学习中:
p(x)=y∑p(x∣y)p(y),
即把类别边缘化。
4. Bayes 公式
由乘法公式:
P(Bj∣A)=P(A)P(A∣Bj)P(Bj).
用全概率展开分母:
P(Bj∣A)=∑kP(A∣Bk)P(Bk)P(A∣Bj)P(Bj).
四个角色:
- P(Bj):先验;
- P(A∣Bj):似然(把观察 A 视为参数/假设函数);
- P(A):证据/边缘似然;
- P(Bj∣A):后验。
5. 医学检测基准率例子
患病率 P(D)=0.01,灵敏度 P(+∣D)=0.99,假阳性率 P(+∣Dc)=0.05。
总阳性概率:
P(+)=0.99×0.01+0.05×0.99=0.0594.
阳性后患病概率:
P(D∣+)=0.05940.99×0.01=61≈0.167.
即使检测很灵敏,低基准率使大多数阳性可能是假阳性。这是 base-rate fallacy 的典型反例。
6. Odds 形式
二假设 H1,H0:
P(H0∣E)P(H1∣E)=P(E∣H0)P(E∣H1)P(H0)P(H1).
即
posterior odds=likelihood ratio×prior odds.
取对数后变成相加。朴素 Bayes、多次独立证据与序贯检验常用 log-odds 累积。
7. 连续形式
参数 θ、数据 D:
p(θ∣D)=p(D)p(D∣θ)p(θ),
p(D)=∫p(D∣θ)p(θ)dθ.
常写
p(θ∣D)∝p(D∣θ)p(θ),
因为分母对 θ 是常数。要计算归一化后验概率、模型比较或边缘似然时不能忽略它。
8. 生成分类器
p(y=k∣x)=∑jp(x∣y=j)p(y=j)p(x∣y=k)p(y=k).
分类只需比较各类未归一化得分:
y^=argkmaxp(x∣y=k)p(y=k).
取对数:
argkmax[logp(x∣y=k)+logp(y=k)].
这避免小概率连乘下溢。
9. 先验不是“随便加的偏见”
先验可来自历史、物理限制、层级共享或正则偏好。它也可主观,需要敏感性分析。数据少时先验影响大,数据多且模型可识别时似然通常更主导。
错误强先验会误导;完全“无信息”先验也不是总能无歧义定义,并可能在重参数化后改变含义。
10. 似然不是参数的概率
固定观察到的数据 D 后,L(θ)=p(D∣θ) 是参数的函数,不要求对 θ 积分为 1。后验 p(θ∣D) 才是给定数据后的参数分布(Bayesian 语境)。
似然比
p(D∣θ0)p(D∣θ1)
比较两个参数对数据的解释力,但不含先验。
11. 数据集偏移与先验变化
若训练与部署的类别先验 p(y) 变化,但 p(x∣y) 近似不变(label shift),可用 Bayes 结构调整后验。若 p(x∣y) 也变,简单改阈值/先验不够。
病例对照抽样、正负样本重采样会改变训练集类别比例;模型概率若要用于部署,需恢复真实先验或重新校准。
易错点
- P(A∣B) 不等于 P(B∣A)。
- 分母必须包含所有互斥原因的证据贡献。
- 似然作为参数函数不必归一化。
- 写 ∝ 后只能做与参数无关常数可忽略的操作。
- 重采样改变类别先验,预测概率可能不再校准。
常见问答
Q1:最大似然与 MAP 有何区别?
MLE 最大化 p(D∣θ);MAP 最大化 p(D∣θ)p(θ),加入先验。数据多时可能接近,但不总相同。
Q2:证据 p(D) 为什么难算?
它要对所有参数积分,高维模型通常没有闭式解。MCMC、变分、Laplace 和桥采样等用于近似。
Q3:Bayes 公式是否等于因果推断?
不是。它是观察条件概率的恒等式;因果效应需要干预、反事实与结构假设,不能仅反转条件概率。
练习
- 工厂 A/B 产量比例 0.7/0.3,次品率 0.01/0.04,求随机产品次品概率。
- 已知是次品,求来自 B 的概率。
- 写出多分类生成模型后验。
- 解释
posterior ∝ likelihood × prior 省略什么。
- 为什么低基准率会让阳性预测值低?
答案与提示
- 0.7(0.01)+0.3(0.04)=0.019。
- 0.3(0.04)/0.019≈0.632。
- p(x∣y=k)p(y=k)/∑jp(x∣y=j)p(y=j)。
- 证据/归一化常数 p(D)。
- 健康人基数大,即使假阳性率不高,假阳性数量也可能超过真阳性。