Uncertainty Quantification
不确定性量化(UQ)估算每个模型预测的可信程度,并区分偶然不确定性和认知不确定性。
不确定性量化(UQ)是估计机器学习模型对每项预测有多不确定,并检查这些估计是否可靠的做法。具有 UQ 的模型除了返回标签、数值或边界框,还会返回概率分布、预测区间、可能标签的集合或方差。系统会利用这些估计来决定何时自动执行操作、何时交由人工处理,以及收集哪些新数据。置信度分数就是一种此类估计;UQ 还会检查该分数是否经过校准,也就是说,置信度为 80% 的预测是否有约 80% 的概率正确。
偶然不确定性与认知不确定性#
预测不确定性有两个来源。Alex Kendall 和 Yarin Gal 在 2017 年的论文 What Uncertainties Do We Need in Bayesian Deep Learning for Computer Vision? 中将这种划分引入了计算机视觉深度学习领域:
- 偶然不确定性:数据本身的噪声,例如运动模糊、传感器噪声、遮挡,或标注人员意见不一的标签。增加训练数据无法消除这种不确定性,因为输入中缺少相关信息。模型可以将其作为额外输出进行学习,例如为每个深度估计预测一个方差。
- 认知不确定性:模型知识不足所带来的不确定性。当输入与训练数据中的样本完全不同,例如来自新摄像头、新季节或新物体类别时,这种不确定性较高。随着加入相关数据,这种不确定性会降低,因此它可以提示数据漂移和分布外输入。
这种区分决定了如何处理不确定的预测:
不确定性的估计方法#
- 预测概率:分类器的 softmax 输出是成本最低的估计方式,但 Chuan Guo 及其同事在 2017 年的研究发现,现代深度网络系统性地过度自信。在留出数据上进行温度缩放可以修正其中大部分偏差。
- 蒙特卡洛 dropout:推理时保持 dropout 启用状态,多次运行同一输入,并将输出的离散程度视为贝叶斯不确定性的近似值;Yarin Gal 和 Zoubin Ghahramani 在 2016 年展示了这一方法。
- 深度集成:从不同的随机初始化开始训练多个相同网络,并测量它们的预测分歧;DeepMind 的 Balaji Lakshminarayanan 及其同事在 2017 年提出了这种方法。Google 在 2019 年对 UQ 方法进行的大规模比较中发现,面对数据集偏移时,集成模型表现最好。
- 保形预测:对任意模型进行封装,使其输出预测集合或区间,并确保其中以选定比例(例如 95%)包含真实答案。
- 语义熵:从大型语言模型(LLM)中采样多个答案,并衡量这些答案表达了多少种不同含义;这可以用于检测幻觉。
在一维回归任务中,深度集成会直接展示认知不确定性:
import numpy as np
from sklearn.neural_network import MLPRegressor
# Noisy samples of sin(x), observed only between -3 and 3
rng = np.random.default_rng(0)
x = rng.uniform(-3, 3, (200, 1))
y = np.sin(x).ravel() + rng.normal(0, 0.1, 200)
# Deep ensemble: the same network trained from five random initializations
ensemble = [MLPRegressor(hidden_layer_sizes=(32, 32), max_iter=3000, random_state=seed).fit(x, y) for seed in range(5)]
# Members agree where data exists and diverge where it does not
for x_new in (1.0, 8.0):
preds = np.array([m.predict([[x_new]])[0] for m in ensemble])
print(f"x={x_new}: mean {preds.mean():+.2f}, std {preds.std():.2f}")在训练范围内的 x = 1 处,五个网络预测的均值为 0.86,而真实值为 0.84,标准差为 0.01。在远远超出训练范围的 x = 8 处,网络预测值为 -1.17,而真实值为 0.99;此时标准差跃升至 0.59,因此集成模型能标示出这个错误预测。
评估不确定性估计#
校准情况可以通过可靠性图检查:图中按置信度对预测分组,并绘制每组的实际准确率;预期校准误差或 Brier 分数则可用于汇总校准情况。评估预测区间时,要看覆盖率(真实值落在区间内的比例)和宽度,因为宽到足以覆盖所有值的区间不包含任何信息。分布外检测会通过ROC 曲线下面积来衡量区分熟悉与陌生输入的能力;如今的基准测试也会在准确率旁报告校准情况:Humanity's Last Exam 发现,刚发布时的 LLM 校准误差在 73% 到 89% 之间。
应用场景#
- 医学图像分析:医疗保健领域的诊断模型会将不确定性较高的扫描结果转交给放射科医生审核,这样自动化系统可以处理明确的病例,而人工负责检查有歧义的病例。
- 自动驾驶汽车:当深度或检测的不确定性升高时,例如遇到雾或眩光,感知系统会扩大安全余量或将控制权交还给驾驶员。
- 主动学习:不确定性决定哪些未标注图像值得进行标注,因为模型最没把握的样本往往最能帮助模型学习。
在主动学习中,检测流水线会最直接地利用不确定性。Ultralytics Platform Agents 中的 Collect Uncertain Detections 模板会让部署的 YOLO26 模型处理数据集中的图像,并将至少包含一个置信度落在指定范围(例如 0.25 到 0.5)内的检测结果的每张图像,复制到一个未标注的审核数据集中,供标注和重新训练使用。










