跳到主要内容

校准差距:你的 LLM 说有 90% 的把握,但实际上只有 60% 的准确率

· 阅读需 12 分钟
Tian Pan
Software Engineer

你的语言模型告诉你,它有 93% 的把握认为 Geoffrey Hinton 在 2010 年获得了 IEEE Frank Rosenblatt 奖。然而实际的获奖者是 Michio Sugeno。这不是传统意义上的幻觉——模型生成了一个听起来合情合理的答案,并给它附上了一个高置信度分数。问题在于,这个置信度数字本身就是谎言。

这种声称的置信度与实际准确率之间的断层,就是所谓的校准差距。它是生产 AI 系统中被严重低估的故障模式之一。那些在原始模型置信度分数之上构建路由逻辑、升级触发器或用户可见置信度指示的团队,是在沙滩上建楼。

在许多生产场景中,校准差距比原始准确率更为关键。一个正确率 70%、但在出错时能如实说"我没把握"的模型,远比一个正确率 75%、却对所有输出都声称 90%+ 置信度的模型有用得多。前者让你能在它周围构建可靠的系统,后者则会毒化每一个下游决策。

校准究竟是什么意思

当模型的置信度分数与经验准确率相匹配时,该模型就是良好校准的。如果一个模型在 1000 次预测中都说"90% 置信",那么其中大约 900 次应当是正确的。如果只有 600 次正确,模型就存在一个可量化这一差距的预期校准误差(ECE)。

衡量这一点的标准方式是可靠性图。你按置信度区间(0-10%、10-20%,以此类推)将预测分组,计算每个区间内的实际准确率,并绘制置信度与准确率的对比图。一个完美校准的模型会在对角线上产生点——每个级别的置信度都等于准确率。而在实践中,大多数 LLM 在高置信度区域产生的曲线远高于对角线,意味着它们声称确定的频率远超其实际表现。

近期的基准测试呈现出一幅触目惊心的图景。在 SimpleQA 基准上,主流模型的 ECE 值从 0.631 到 0.810 不等。这意味着置信度与准确率之间的平均差距达到 63 到 81 个百分点。即便是最强模型之一的 GPT-4o,在这一基准上也仅能实现 35% 的准确率,同时 ECE 高达 0.45——近乎一半的置信度分数偏差接近一半。

为何 Logprobs 与语言化置信度会出现分歧

从 LLM 提取置信度有两种常见方式,两者开箱即用都不可靠。

Token 级 logprobs 给出模型对每个生成 token 的 softmax 概率。理论上,这是模型"真实"的内部不确定性估计。然而实践中,尽管它在常见 token 上准确率很高,校准却很差。词汇表上的概率分布受训练动态的影响——尤其是 RLHF,它将模型推向自信、肯定的输出,因为人类评分者更偏爱这类回答。一个措辞谨慎的模型会获得更低的评分,所以训练过程系统性地剥除了经过校准的不确定性表达。

语言化置信度 是指让模型以数字形式陈述其置信度:"你有多大把握?请用 0 到 100 分评分。"这种方式有其自身的问题。无论实际表现如何,模型都倾向于将其语言化置信度分数集中在高分端——它们已经学会了,听起来自信的答案会获得奖励,这一点也体现在自我报告的数字中。

研究表明,语言化置信度与正确性的相关性很弱,而且在模型缺乏相关知识的问题上,这种相关性会进一步下降。

这两种信号之间的差异带来了额外的麻烦。Token 级 logprobs 和语言化置信度经常意见相左,而且两者都与真实情况不甚吻合。一个模型可能给某个 token 分配 0.4 的 softmax 概率,同时却对完整答案声称 85% 的语言化置信度。这种不一致性让构建任何单一置信度管道都更加困难。

RLHF 过度自信的陷阱

现代 LLM 校准失准的根本原因并不神秘——就是 RLHF。预训练的基础模型通常校准得相当不错。而微调过程,尤其是来自人类反馈的强化学习,会系统性地损害校准效果。

机制很直接:人类评分者偏爱自信、清晰、直接的答案。措辞迟疑、加以限定以及表达不确定性,都会降低偏好分数。因此 RLHF 无论底层确定性如何,都在优化自信的表达方式。模型学会了:说"答案是 X"比说"我认为答案可能是 X,但我不完全确定"获得更多奖励。

这为生产系统制造了一个悖论。让模型变得实用的那些微调(遵循指令、流畅对话、提供有帮助的回复),同样使其置信度信号变得不可靠。你不能简单地改用基础模型——基础模型很难在生产中部署。而微调模型的自我评估又无法信任。

这个问题比均匀的过度自信还要糟糕。研究表明,大型 RLHF 调优模型在较简单的查询上可能表现出更严重的校准失准——这恰恰是你期望校准最好的任务。在 TriviaQA 上,GPT-4o 的 ECE 从 0.071 实际上上升到了 0.083,尽管准确率有所提升,这表明规模化和 RLHF 共同造就了难以预测的校准模式。

在你的系统中度量校准

大多数团队完全跳过了校准度量。他们评估准确率、延迟和成本,却从不检查置信度分数是否有意义。以下是在不需要研究团队的情况下添加校准度量的方法。

第一步:收集置信度-准确率对。 对于每个事后可以验证正确性的模型调用,将置信度分数与真实标签一并记录。对于分类任务,这很直接。对于生成任务,你需要对样本进行人工评估,或者使用自动化的正确性检查。

加载中…
References:Let's stay in touch and Follow me for more thoughts and updates