Conformal Prediction
发现保形预测如何为 AI 提供无分布的不确定性估计。使用 Ultralytics YOLO26 实现预测集,确保模型结果可靠。
一致性预测(conformal prediction)是机器学习 (ML)中的一个统计框架,可为模型预测提供无分布的不确定性度量。一致性预测器输出的不是单个点预测(例如某个特定的类别标签),而是包含真实值的预测集或区间,且该真实值包含在用户指定的概率(例如 90% 或 95%)之内。该框架可以包装任何人工智能 (AI) 模型,在无需更改模型架构的情况下提供形式化的统计保证。有关最新工具和研究的完整列表,你可以探索 Awesome Conformal Prediction 仓库。
共形预测的工作原理#
其基本机制依赖于使用非一致性评分来评估新预测与过去示例相比的异常程度。
- 模型训练:首先,使用标准训练数据集训练基线模型。
- 校准阶段:将单独的、保留的校准数据集输入训练好的模型中。为每个预测计算不一致性得分,例如图像分类中的逆概率。
- 分位数计算:确定目标置信水平(例如 95%),并找到这些校准得分的对应分位数,以构建预测集。
- 推理应用:在实时推理期间,评估新的输入,并包含其得分低于校准分位数的的所有可能标签。
你可以在 A Gentle Introduction to Conformal Prediction 教程中探索该方法的数学证明,或者了解时间序列预测方法以处理时间不确定性。
区分共形预测与相关术语#
将此框架与模型测试期间使用的标准指标区分开来至关重要:
- 一致性预测与置信度得分:标准的置信度得分反映了模型的内部确定性,但通常校准较差且缺乏数学保证。一致性预测将这些原始得分转换为有保证的集合。有关传统的调整,请参阅 scikit-learn 的概率校准。
- 一致性预测与准确率:准确率是一个全球历史指标,描述模型在整个数据集上正确的频率,而一致性推断则为每个新的预测提供局部的、实例特定的区间。
实际应用#
在那些了解模型盲点至关重要的高风险领域,共形预测是不可或缺的。
- 医疗诊断:在医疗保健领域利用 AI 分析扫描时,模型可能会输出一组合理的诊断结果,而不是单个可能不正确的类别。这确保了临床医生能够调查所有可行的可能性,为近期关于可靠基因组医学和成像的研究提供支持。
- 自动驾驶:在汽车系统的 AI 中,将预测区间应用于目标检测会在行人周围生成空间置信区域,从而使车辆的制动系统能够安全地应对最坏情况下的移动。
实现预测集#
诸如 MAPIE (Model Agnostic Prediction Interval Estimator) 之类的库为 Python 提供了内置工具,回归任务通常会利用一致性分位数回归。你还可以使用来自高级模型(如 Ultralytics YOLO26)的概率来实现基本的一致性预测逻辑。以下示例使用 YOLO26 分类概率构建预测集,模仿了包含顶级类别直到满足累积阈值的逻辑。
from ultralytics import YOLO
# Load an Ultralytics YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Perform inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Simple conformal-style prediction set logic based on cumulative probability
target_coverage = 0.95
prediction_set = []
cumulative_prob = 0.0
# Sort probabilities in descending order using the results object
probs = results[0].probs
sorted_indices = probs.top5
for idx in sorted_indices:
class_name = results[0].names[idx]
class_prob = probs.data[idx].item()
prediction_set.append((class_name, round(class_prob, 3)))
cumulative_prob += class_prob
# Stop adding to the set once we reach the 95% coverage threshold
if cumulative_prob >= target_coverage:
break
print(f"95% Prediction Set: {prediction_set}")开发可靠的系统需要强大的数据实践,以防止数据偏移破坏校准。诸如 Ultralytics Platform 之类的工具简化了收集新鲜分类数据集、重新训练模型以及安全管理模型部署的过程。你可以在我们的理解数据集偏差指南中阅读有关策划平衡数据的更多信息,或者跟踪年度 COPA 会议上展示的最新进展。






