第10章 用概率处理不确定性

一项疾病检测的灵敏度是 99%,也就是患病者中约有 99% 会得到阳性结果。现在,一位检测阳性的人问:“我有多大概率真的患病?”

答案不是自动等于 99%。它还取决于疾病原本有多常见、未患病者出现假阳性的比例,以及接受检测的人群是否与统计数据相同。

这个例子展示了不确定性推理中最常见的错位:我们知道“患病时检测阳性的概率”,却被问到“检测阳性时患病的概率”。两者看起来只交换了条件顺序,数值却可能相差很远。

搜索和规则系统主要追问哪些行动合法、哪些结论可推出。机器学习还经常面对另一种情况:信息不完整,观测有噪声,同样的输入不总对应同一个结果。此时系统不只要选一个类别,还要表达证据支持各种可能性的程度。

概率必须带着条件读

概率用 0 到 1 之间的数表示事件的不确定程度。\(P(A)=0\) 表示事件在模型中不可能,\(P(A)=1\) 表示确定;中间数值表示不同程度的不确定性。

但概率几乎总依赖一个背景。天气预报说“明天下雨概率 70%”,隐含了地点、时间范围、气象资料和预报模型。模型说“这张图片是猫的概率 90%”,隐含了训练数据、候选类别、输入处理和当前参数。离开这些条件,数字很容易显得比实际更确定。

两个事件同时发生的概率叫作联合概率,写作 \(P(A,B)\)\(P(A\cap B)\)。在已经知道 \(B\) 发生的条件下,\(A\) 的概率叫作条件概率

\[ \begin{aligned} P(A\mid B)&=\frac{P(A,B)}{P(B)} \\ P(B)&>0 \end{aligned} \]

分母 \(P(B)\) 把范围缩到所有满足 \(B\) 的情况,分子再数其中同时满足 \(A\) 的部分。

条件概率通常不对称。\(P(\text{阳性}\mid\text{患病})\) 描述检测对患病者有多敏感;\(P(\text{患病}\mid\text{阳性})\) 描述阳性结果对当前人的含义。两者通过基准率联系,但不能直接互换。

用一千人看懂基准率

假设某病在人群中的比例是 1%,检测对患病者有 99% 的阳性率,对未患病者有 5% 的假阳性率。取 1000 个与这组人群相似的人:

人群 人数 检测阳性 检测阴性
患病 10 约 10 约 0
未患病 990 约 50 约 940
合计 1000 约 60 约 940

阳性者约有 60 人,其中真正患病约 10 人。因此,在这些假设下:

\[ P(\text{患病}\mid\text{阳性})\approx\frac{10}{60}\approx16.7\% \]

检测本身并不差。意外结果来自低基准率(base rate):未患病者远多于患病者,即使假阳性比例只有 5%,人数仍能超过真阳性。

自然频数表常比直接套公式更容易发现条件方向错误。它也迫使我们说明样本来自什么人群。若在高风险门诊使用同一检测,患病基准率更高,阳性后的患病概率也会更高。

核心机制

概率判断必须把当前证据与原有基准率一起考虑。新证据改变不同假设的相对支持,但后验结论同时取决于证据有多能区分假设,以及假设在观察证据前有多常见。

贝叶斯公式:从先验走到后验

由条件概率定义可以得到贝叶斯公式:

\[ P(H\mid E)=\frac{P(E\mid H)P(H)}{P(E)} \]

其中:

  • \(H\) 是假设,例如“患病”;
  • \(E\) 是证据,例如“检测阳性”;
  • \(P(H)\) 是观察证据前的先验概率(prior);
  • \(P(E\mid H)\) 是假设成立时出现该证据的概率;
  • \(P(H\mid E)\) 是结合证据后的后验概率(posterior);
  • \(P(E)\) 负责把所有假设下的结果归一化,使后验概率总和为 1。
图 1: 以基准率百分之一、患病者阳性率百分之九十九、未患病者假阳性率百分之五为例:先验分别乘以似然后得到百分之零点九九与百分之四点九五的未归一化支持,归一化后阳性者患病的后验概率约为百分之十六点七。

Thomas Bayes 去世后发表的论文研究了从观测结果反推未知机会的问题。(Bayes 1763年) Pierre-Simon Laplace 等人随后广泛发展了相关思想。今天所谓“贝叶斯方法”涵盖许多模型与计算技术,但共同骨架仍是:用概率表达先前不确定性,再用观测更新。

贝叶斯公式不是一台把主观意见自动变成真理的机器。先验从哪里来、似然模型是否正确、候选假设是否遗漏,都会影响后验。如果检测灵敏度来自不同年龄人群,直接用于当前患者就可能不合适;如果所有候选诊断都没有包含真正病因,归一化也不会创造正确答案。

似然不是“参数为真的概率”

贝叶斯公式中的 \(P(E\mid H)\),在把观测 \(E\) 固定、把假设或参数 \(H\) 当作变量比较时,称为似然(likelihood)。这一区别容易被符号掩盖。

假设抛一枚硬币 10 次,观察到 8 次正面。令 \(\theta\) 表示每次出现正面的概率。在给定 \(\theta\) 时,观察到这组数据的概率为:

\[ P(D\mid\theta)=\binom{10}{8}\theta^8(1-\theta)^2 \]

数据已经观察到后,我们把右边看作 \(\theta\) 的函数 \(L(\theta;D)\)。它回答:“不同参数值对这份数据提供多大相对支持?”

它并不自动等于 \(P(\theta\mid D)\)。要讨论参数的后验概率,还需要参数的先验分布并使用贝叶斯公式。似然可以比较 \(\theta=0.8\)\(\theta=0.5\) 哪个更能解释数据,却不能在没有额外假设时说“\(\theta=0.8\) 的概率是多少”。

Ronald Fisher 在 20 世纪早期系统发展了似然在统计推断中的作用。(Fisher 1922年) 频率学派与贝叶斯学派对参数和概率的解释不同,但现代机器学习会同时使用两边发展出的工具。

最大似然:选择最能解释数据的参数

最大似然估计(maximum likelihood estimation, MLE)选择使已观察数据概率最大的参数:

\[ \hat{\theta}_{\mathrm{MLE}} =\arg\max_{\theta}P(D\mid\theta) \]

如果训练样本在给定参数后被假设为相互独立,整个数据集的似然是每个样本概率的乘积:

\[ P(D\mid\theta)=\prod_{i=1}^{n}P(y_i\mid x_i,\theta) \]

许多小于 1 的数相乘会变得极小,也不便于求导。取对数后,乘积变成求和,而最大值位置不变:

\[ \hat{\theta}_{\mathrm{MLE}} =\arg\max_{\theta}\sum_{i=1}^{n} \log P(y_i\mid x_i,\theta) \]

因此,最小化负对数似然等价于最大化似然。上一章逻辑回归的交叉熵,正是伯努利标签模型的负对数似然。这建立了一条重要连接:损失函数并不总是任意惩罚,它常对应一组关于数据怎样生成的概率假设。

技术深潜:损失函数背后的噪声假设

若回归模型假设:真实目标等于预测均值加上方差固定的高斯噪声,

\[ \begin{aligned} y_i&=f_\theta(x_i)+\varepsilon_i \\ \varepsilon_i&\sim\mathcal{N}(0,\sigma^2) \end{aligned} \]

那么最大化数据似然,忽略与参数无关的常数后,等价于最小化平方误差:

\[ \sum_{i=1}^{n}\left(y_i-f_\theta(x_i)\right)^2 \]

若改用另一种噪声分布,可能得到绝对误差等不同目标。选择损失函数,就是在表达“哪些错误更可能、哪些错误代价更大”的假设。

最大似然也会过拟合。一个足够灵活的模型可能给训练样本极高概率,却在新数据上很差。加入参数先验、正则化或模型复杂度约束,仍然需要第 8 章的泛化检查。

朴素贝叶斯:一个有用的强假设

假设要判断一封邮件是否为垃圾邮件。根据贝叶斯公式,可以比较:

\[ \begin{aligned} P(\text{垃圾}\mid\text{词语}) &\propto P(\text{词语}\mid\text{垃圾}) \\ &\quad\times P(\text{垃圾}) \end{aligned} \]

问题在于,所有词语组合的联合概率很难估计。朴素贝叶斯(naive Bayes)作出强假设:在给定类别后,各特征条件独立。于是:

\[ P(x_1,\ldots,x_d\mid y) =\prod_{j=1}^{d}P(x_j\mid y) \]

现实中的词当然不独立,“机器”与“学习”经常一起出现。这个假设之所以仍可能有效,是因为分类不要求联合概率的每个细节都精确,只要求不同类别的相对分数常能把样本排到正确一侧。

这展示了归纳偏置(inductive bias)的作用:模型通过假设缩小可能规律的范围,才能从有限数据中学习。假设完全符合现实最好;即使不完全符合,只要对当前决策足够有用,也可能取得良好分类结果。第 11 章将比较更多算法携带的不同偏置。

不过,朴素贝叶斯的概率值常需要谨慎解释。条件独立假设错误时,重复或相关特征可能让证据被多次计算,使输出过度自信。分类准确率不错,不代表概率已经校准。

准确率回答不了“有多确定”

设两个模型在 100 场比赛中都猜对 80 场。

  • 模型 A 每次都报胜率 0.8;
  • 模型 B 对猜对的 80 场报 0.99,对猜错的 20 场也自信地报 0.99 给错误一方。

若只看最终类别,两者准确率相同;若这些概率用于下注、医疗分诊或风险控制,模型 B 的过度自信会造成更大损失。

一个二分类模型若在所有预测约为 0.7 的样本中,实际约有 70% 为正类,就在这一段上具有良好概率校准(calibration)。校准关注长期频率与预测概率是否一致,不要求单个事件的真假能由概率预先确定。

天气预报是直观例子。不能因为某天预报降雨概率 70% 却没有下雨,就断言预报错误;应观察许多类似的 70% 预报,其中是否大约七成真的下雨。

技术深潜:用适当评分奖励诚实概率

对二分类事件,Brier 分数是预测概率与结果之间的平方误差:

\[ \mathrm{Brier}=\frac{1}{n}\sum_{i=1}^{n}(p_i-y_i)^2 \]

\(p_i\) 是正类预测概率,\(y_i\) 为 0 或 1。分数越低越好。Glenn Brier 在天气预报评价中提出了这种概率评分。(Brier 1950年)

它会同时惩罚方向错误和过度自信。真实结果为 1 时,报 0.9 的损失是 \(0.01\),报 0.1 的损失是 \(0.81\)。若评测只看阈值后的类别,这两次预测可能一个对、一个错;Brier 分数还保留了置信程度。

适当评分规则的关键性质是:当预测者按自己真实相信的概率报告时,期望得分最好。它减少了故意把不确定预测夸成 0 或 1 的激励。对数损失也是常见的适当评分规则,对把真实事件赋予接近零概率的行为惩罚尤其大。

校准与区分能力并不相同。一个模型总报总体阳性率,可能校准尚可,却不能区分谁风险更高;另一个模型排序能力强,却整体过度自信。可靠评价需要同时检查准确率或排序、校准曲线、具体决策阈值与错误成本。Dawid 对概率预报的校准性质作过经典讨论。(Dawid 1982年)

两种不确定性不要混在一起

模型不确定可能来自不同来源。

第一类来自现象本身的随机性或未观测因素。即使知道很多信息,同样条件下结果仍可能不同,例如掷骰子、量子测量,或我们没有记录所有影响病情的变量。这常称为数据不确定性或偶然不确定性。

第二类来自知识不足。某类样本训练中很少见,模型参数证据不足,或输入远离训练分布。这常称为模型不确定性或认知不确定性。收集更相关的数据可能降低它。

一个普通分类器输出的单个概率常把两者混在一起。看到 0.5,可能是相似样本本来就一半一半,也可能是模型从未见过这种输入。两种情形需要不同动作:前者可能要求接受不可消除的风险,后者可能要求补数据、请人复核或拒绝预测。

概率怎样进入决策

概率本身不决定行动。还需要不同结果的成本或效用。

假设模型估计某设备在一周内故障的概率是 10%。要不要立刻停机检修,取决于故障损失、检修成本、安全要求和替代设备。对低风险广告推荐,阈值可以较低;对漏诊代价很高的筛查,可能宁愿增加假阳性。

若行动 \(a\) 在结果 \(y\) 下的损失为 \(C(a,y)\),理想决策会比较每种行动的期望损失:

\[ \mathbb{E}[C(a,Y)\mid x] =\sum_y C(a,y)P(y\mid x) \]

选择概率模型与选择决策规则是两件事。概率估计可以相同,不同机构因成本、资源和价值判断不同而选择不同阈值。把阈值藏在模型里,会让技术判断与政策判断难以区分。

概率模型也有边界

概率语言能让系统表达不确定性,却不会自动解决以下问题:

  • 候选类别是否包含真实情况;
  • 训练数据是否代表当前人群;
  • 似然或独立性假设是否合适;
  • 模型在分布外输入上是否知道自己不知道;
  • 预测概率是否经过外部校准;
  • 决策成本是否由合适的人明确承担。

一个小数点后三位的概率可能来自脆弱假设。数字精确不等于知识精确。

下一章将打开经典机器学习工具箱。线性模型、决策树、朴素贝叶斯、支持向量机和集成方法都能从数据中学习,但它们选择了不同表示、假设与优化目标。没有一种算法在所有数据上都占优势,原因并不只是“调参技巧不同”,而是每种模型都带着自己的归纳偏置。

本章小结

  • 条件概率 \(P(A\mid B)\)\(P(B\mid A)\) 通常不同;基准率决定证据反转后的结论。
  • 贝叶斯公式把先验与证据的似然结合为后验,但结果仍依赖先验、似然模型和候选假设是否合理。
  • 固定数据后,似然用于比较不同参数对观测的支持,不等同于参数的后验概率。
  • 最大似然选择最能解释训练数据的参数;负对数似然连接了概率假设与常见损失函数。
  • 朴素贝叶斯用条件独立假设降低估计难度,分类可能有效,但概率可能过度自信。
  • 准确率只评价阈值后的类别;校准检查预测为某个概率的事件是否以相应频率发生。
  • Brier 分数和对数损失能评价概率质量,并惩罚自信的错误。
  • 概率预测必须结合行动成本才能形成决策;技术模型不能替代阈值背后的价值与责任选择。

思考问题

  1. 如果一种疾病基准率从 1% 上升到 20%,检测灵敏度和假阳性率不变,阳性结果的意义会怎样改变?
  2. 一个模型准确率很高却严重过度自信,在什么应用中尤其危险?
  3. 当模型输出 0.5 时,怎样判断是现象本身难预测,还是模型缺少相关经验?

延伸阅读

  • Bayes 的原始论文篇幅不算短,建议关注它解决的反问题,而不只寻找现代公式的原样写法。(Bayes 1763年)
  • Fisher 1922 年的论文是理解似然与参数估计历史的重要材料,数学要求较高。(Fisher 1922年)
  • Bishop 的教材系统连接贝叶斯推断、最大似然、分类与决策理论。(Bishop 2006年)
  • Brier 与 Dawid 的论文分别适合继续理解概率评分和校准;阅读时注意“单次事件错误”与“长期概率可靠性”的区别。(Brier 1950年; Dawid 1982年)

参考文献

Bayes, Thomas. 1763年. 《An Essay towards Solving a Problem in the Doctrine of Chances》. Philosophical Transactions of the Royal Society of London 53: 370~418. https://doi.org/10.1098/rstl.1763.0053.
Bishop, Christopher M. 2006年. Pattern Recognition and Machine Learning. Springer.
Brier, Glenn W. 1950年. 《Verification of Forecasts Expressed in Terms of Probability》. Monthly Weather Review 78 (1): 1~3. https://doi.org/10.1175/1520-0493(1950)078%3C0001:VOFEIT%3E2.0.CO;2.
Dawid, A. Philip. 1982年. 《The Well-Calibrated Bayesian》. Journal of the American Statistical Association 77 (379): 605~10. https://doi.org/10.1080/01621459.1982.10477856.
Fisher, Ronald A. 1922年. 《On the Mathematical Foundations of Theoretical Statistics》. Philosophical Transactions of the Royal Society of London. Series A 222: 309~68. https://doi.org/10.1098/rsta.1922.0009.