大语言模型 (LLM) 彻底改变了人工智能,展示了惊人的流畅度和推理能力。然而,即使是最先进的模型也面临着一个长期存在的问题: 校准 (Calibration)

理想情况下,当 LLM 表示它对答案有 80% 的信心时,它应该在 80% 的情况下是正确的。不幸的是,情况很少如此。现代 LLM,尤其是那些经过人类反馈强化学习 (RLHF) 微调的模型,往往表现出臭名昭著的“过度自信”。它们可能会产生完全错误的幻觉 (hallucinate) ,却给出一个 99% 的概率分数。在医学、法律或自动编程等高风险领域,信心与准确性之间的这种脱节是危险的。

虽然无监督预训练通常能产生校准良好的模型,但让模型变得有用的过程——RLHF——却破坏了这种校准。

在这篇深度文章中,我们将探讨斯坦福大学的一篇研究论文 《Calibrating Language Models with Adaptive Temperature Scaling》 (利用自适应温度缩放校准语言模型) 。 研究人员介绍了一种新颖的事后处理方法,称为 自适应温度缩放 (Adaptive Temperature Scaling, ATS) 。 与采用“一刀切”修复的传统方法不同,ATS 会针对模型生成的 每一个特定 token 动态调整其置信度,从而在不牺牲性能的情况下恢复可靠性。

问题所在: RLHF 与校准差距

要理解解决方案,我们必须首先了解微调造成的损害。

基础模型 (如在网络数据上预训练的原始 Llama-2) 通常校准良好。它们学会了基于训练数据中固有的统计可能性来预测下一个 token。然而,这些基础模型并不擅长遵循指令。

为了解决这个问题,我们使用 RLHF。这使模型与人类偏好保持一致,使其变得乐于助人且善于交谈。但最近的研究表明,这种对齐是有代价的。RLHF 将模型分布推离了语言的自然概率,导致 校准失调 (miscalibration) 。 模型变成了一个“讨好者”——它学会了听起来权威和自信,即使它是错的。

为什么传统修复方法会失败

机器学习中解决校准失调的标准方法是 温度缩放 (Temperature Scaling, TS)

在神经网络中,最后一层产生“logits” (未归一化分数) 。这些 logits 通常通过 Softmax 函数转化为概率 (置信度分数) 。温度缩放涉及在 Softmax 之前将这些 logits 除以一个单一的标量值 \(T\) (温度) 。

  • 如果 \(T > 1\),分布变平 (置信度降低) 。
  • 如果 \(T < 1\),分布变尖 (置信度提高) 。

在传统的分类任务 (如识别猫与狗) 中,为整个验证集找到一个最佳的 \(T\) 效果很好。

然而,语言建模不是图像分类。 在语言生成中,“难度”在 token 之间差异巨大。预测“法国的首都是…”后面跟着“巴黎”很容易。预测复杂数学问题的结果或冷门的历史事实则很难。

单一的全局温度参数假设模型的过度自信程度在所有上下文中都是恒定的。对于 LLM 来说,这是一个错误的假设。有些话题会引发巨大的过度自信,而有些则不会。使用单一标量无法捕捉语言的动态特性。

解决方案: 自适应温度缩放 (ATS)

这篇论文的核心创新在于从静态参数转变为动态的、预测的参数。 ATS 不是为整个模型学习一个温度 \(T\),而是为每一个 token 预测一个独特的温度 \(\tau\)。

架构

模型如何知道使用什么温度?它通过观察上下文。

作者建议使用一个“校准头 (Calibration Head) ”——一个位于主 LLM 顶部的小型辅助神经网络。

  1. 输入: 主 LLM 处理输入文本并生成隐藏状态 (代表文本语义含义的向量) 。
  2. 特征: ATS 将模型的 最后隐藏状态 作为其输入特征。研究人员发现,隐藏状态包含的不确定性信息比原始 logits 要丰富得多。
  3. 预测: 校准头处理这些隐藏状态,并输出该特定步骤的标量值 \(\tau\)。
  4. 缩放: 原始 logits \(\hat{z}\) 实际上是通过这个预测的温度进行缩放,以产生校准后的 logits \(\hat{q}\)。 \[ \hat{q} = \hat{z} \circ e^{\tau} \] 因为 \(\tau\) 是根据隐藏状态预测的,所以校准能够适应当前句子的细微差别。如果模型进入了一个它通常会产生幻觉的领域 (比如引用虚假的判例法) ,校准头可以在隐藏状态中检测到这些模式,并降低温度以减少过度自信。

核心秘诀: 选择性平滑损失 (Selective Smoothing Loss)

设计架构只是成功的一半。如何训练这个校准头?你需要一个专门针对校准的损失函数。

标准的交叉熵损失 (用于训练 LLM 本身) 鼓励模型对正确的 token 保持 100% 的自信。然而,在校准时,如果模型从根本上就是错的,简单地最大化似然可能会适得其反。

作者引入了一种称为 选择性平滑 (Selective Smoothing) 的损失函数。

选择性平滑方程。

以下是如何解读这个方程:

  1. 情况 1: 模型是正确的 (\(\arg \max \hat{q} = y\)) 。 如果模型的首选预测确实是正确的 token,我们使用标准的交叉熵项。我们希望模型在这里保持自信。项 \(-(1-\alpha)\) 对这部分损失进行加权。

  2. 情况 2: 模型是不正确的。 如果模型将错误的 token 预测为最可能的选项,我们 希望不加区分地最大化正确标签的概率,也不希望让错误答案的分布变尖。 相反,目标变为 均匀分布 (Uniform Distribution) (1/|V|)。这有效地告诉模型: “如果你错了,你不应该自信。你应该保持不确定。” 这会使分布变平,从而减少过度自信。

这种“选择性”本质有助于模型区分合理的自信和不合理的过度自信。

实验结果

研究人员使用 Llama-2-Chat (7B 和 13B) 和 Qwen-Chat-7B 评估了 ATS。他们在 Alpaca GPT-4 数据集上训练了校准头,该数据集包含多样化的指令跟随数据。

至关重要的是,他们在完全不同的下游基准上测试了校准效果: MMLU (大规模多任务语言理解) 、TriviaQATruthfulQA 。 这测试了校准是否能泛化到新任务中。

定量改进

使用的指标是 预期校准误差 (ECE) (越低越好) 和 Brier 分数 (BS) (越低越好) 。

如下所示,结果令人震惊。

显示模型校准比较的表格。ATS 显著优于温度缩放、向量缩放和缩放分箱。

让我们看看 Llama-2-7b-Chat :

  • 未校准 ECE: 0.298 (严重失调)
  • 标准温度缩放 ECE: 0.270 (微小改善)
  • ATS (我们的) ECE: 0.125

与未校准的模型相比,ATS 将校准误差降低了 50% 以上,并且显著优于向量缩放和分箱方法。这种模式在不同的模型和数据集中都成立。值得注意的是,ATS 在不改变模型准确率的情况下实现了这一点——它只是让置信度分数变得诚实。

可视化校准: 可靠性图 (Reliability Diagrams)

数字固然好,但可靠性图展示了完整的故事。在这些图表中:

  • X 轴: 模型声称的置信度 (例如,“我有 90% 的把握”) 。
  • Y 轴: 实际准确率 (例如,“我有 90% 的情况是对的”) 。
  • 蓝线: 完美校准 (置信度 = 准确率) 。
  • 柱状图: 模型在这些置信度区间内的实际表现。

Llama-2-7b-Chat (校准前) :

未校准的 Llama-2-7b-Chat MMLU 可靠性图,显示柱状图远低于蓝线。

在上面的未校准 MMLU 图中,请注意红色柱状图始终位于蓝线 下方。当模型说它有 90% 或 100% 的自信时 (最右边) ,它的实际准确率要低得多。这是典型的过度自信。

Llama-2-7b-Chat (ATS 校准后) :

校准后的 Llama-2-7b-Chat MMLU 可靠性图,显示柱状图与蓝线对齐。

应用 ATS 后,柱状图与蓝色对角线完美对齐。当模型声称高置信度时,它实际上是正确的。当它不确定时,它会降低其置信度分数。

这种改进在 TriviaQA 上更为明显,这是一个需要特定事实知识的数据集。

之前 (TriviaQA) : 未校准的 Llama-2-7b-Chat TriviaQA 可靠性图。

之后 (TriviaQA) : 校准后的 Llama-2-7b-Chat TriviaQA 可靠性图。

注意在“之后”的图像中,置信度的分布是如何展开的。模型不再盲目自信;当遇到困难问题时,它更频繁地利用低置信度区间 (图的左侧) 。

为什么它有效?消融实验

研究人员进行了消融实验来证明他们的设计选择是正确的。他们测试了不同的平滑方法、损失权重和头部架构。

1. 选择性平滑的重要性

他们将“选择性平滑”与标准交叉熵 (无平滑) 和全标签平滑 (无论正确与否始终平滑) 进行了比较。

比较平滑类型的表格。选择性平滑实现了最低的 ECE 0.125。

数据显示 选择性平滑 更优越 (ECE 0.125 vs 无平滑的 0.226) 。标准交叉熵之所以表现挣扎,是因为为了最小化错误预测的损失,它可能会自相矛盾地增加对错误答案的信心,或者无法充分地使分布变平。

2. 损失权重 (\(\alpha\))

超参数 \(\alpha\) 控制当模型出错时给予均匀分布目标的权重。

显示损失权重扫描的表格。较高的 alpha 通常会改善 ECE。

较高的 \(\alpha\) (约 0.5) 是必要的。这表明,为了纠正 RLHF 模型的极度过度自信,校准方法必须在模型犯错时严厉惩罚其自信心。

3. 头部架构

最后,校准头的复杂性重要吗?我们能只用一个简单的线性层吗?

比较头部架构的表格。Transformer 头表现最好。

使用 Transformer 层 效果最好。这证实了校准需要上下文。校准头需要聚合来自先前 token 的隐藏状态值,以理解当前预测的细微差别。仅仅对当前 token 的状态进行简单的线性投影不足以捕捉模型“为什么”不确定的复杂性。

更广泛的影响与结论

“自适应温度缩放”方法在使大语言模型值得信赖方面迈出了重要一步。

通过接受 LLM 的不确定性是动态且依赖于上下文的这一事实,ATS 超越了静态温度缩放的局限性。它将校准视为一个监督学习问题,利用模型丰富的内部表示来预测它 应该 有多自信。

关键要点:

  1. RLHF 破坏了校准: 让模型变得“有用”会让它们变得过度自信。
  2. 上下文很重要: 你不能对每个 token 使用单一的温度。有些 token 比其他 token 更难预测。
  3. 隐藏状态是关键: 模型的内部状态包含了预测其自身可靠性所需的线索。
  4. 选择性损失: 训练校准头需要一种特殊的损失函数,专门在模型出错时惩罚其自信。

对于学生和从业者来说,这篇论文强调了 AI 技术栈中至关重要的一层: 可靠性 。 随着我们将这些模型部署到现实世界中,仅仅让它们变得聪明是不够的;它们还必须知道自己不知道什么。ATS 提供了一种计算效率高 (仅增加一个小层) 的方法来实现这种自我意识。