引言

想象一下你正在参加一场高难度的考试。你遇到一道题,脑海里浮现出两个可能的答案,但你无法确定哪一个是正确的。当你写下答案时,你可能会加个注: “我有大约 60% 的把握,但我可能把它和第 4 章里的一个类似概念搞混了。”

这个注释至关重要。它区分了单纯的运气猜测和真正的知识掌握。

然而,大型语言模型 (LLM) 在这方面却是出了名的差劲。它们通常是“自信的骗子”。它们可能会产生幻觉——完全编造信息——同时听起来却权威无比。反过来说,它们也可能对自己完全掌握的事实含糊其辞。对于使用 AI 的学生和研究人员来说,这种缺乏可靠“校准” (即置信度与准确度之间的一致性) 的情况,是建立信任的主要障碍。

在这篇文章中,我们将深入探讨 SaySelf , 这是一篇提出新型训练框架的研究论文,旨在解决这个问题。SaySelf 不仅仅教 LLM 给出一个置信度分数 (例如“我有 80% 的把握”) ;它还教模型生成自我反思性的理由 (self-reflective rationales) 。 它迫使 AI 进行内省,识别特定的知识缺口,并用自然语言解释为什么它是不确定的。

问题所在: 为何获取置信度如此困难?

在理解解决方案之前,我们需要看看目前我们是如何尝试从 LLM 获取置信度分数的,以及为什么这些方法往往效果不佳。

目前通常有两种估算 LLM 置信度的方法:

  1. 基于提示的方法 (Prompting-based approaches) : 你只需问模型,“你确定吗?”或者“给我一个从 1 到 10 的分数。”或者,你要求模型多次解答同一个问题 (自洽性,Self-Consistency) ,看看它重复相同答案的频率。
  • *缺点: * 直接提示通常不准确。自洽性在计算上非常昂贵 (你需要让模型为一个答案运行 10 次以上) ,并导致高延迟。
  1. 基于训练的方法 (Training-based approaches) : 你在包含“我确定”或“我不确定”等标签的数据集上微调模型。
  • 缺点: * 这些通常是二元的 (确定/不确定) ,缺乏细微差别。它们不会告诉你模型为什么*犹豫。

SaySelf 的研究人员清晰地展示了这种对比。

SaySelf 与以往置信度获取方法的对比。

如图 1 所示,虽然以前的方法 (如 R-Tuning 或直接提示) 可能只给出一个二元的“我确定”或一个原始数字,但 SaySelf 提供了一个细粒度的分数 (8/10) 以及一个具体的理由: “根据我的知识,现任总统是特朗普的可能性很小。” 这种具体的推理让用户能够理解模型是因为产生了幻觉还是依赖了过时的数据,而不是单纯的盲目猜测。

解决方案: SaySelf 框架

SaySelf 是一个两阶段的训练框架。它的目标是教 LLM 为每个问题输出一个包含三要素的元组:

  1. 响应 (Response) : 实际的答案。
  2. 自我反思理由 (Self-Reflective Rationale) : 对知识缺口的解释。
  3. 置信度估计 (Confidence Estimate) : 一个分数 (例如概率或 1-10 的量表) 。

该架构分为监督微调 (SFT)强化学习 (RL)

SaySelf 架构概览,展示了两阶段训练过程。

让我们详细拆解这两个阶段。

第一阶段: 监督微调 (SFT)

训练模型“解释其不确定性”的最大挑战在于缺乏数据。目前没有包含问题与“内省式 AI 思维”配对的海量数据集。研究人员必须利用模型本身来构建这样一个数据集。

数据生成流程

为了创建训练数据,研究人员使用了一种巧妙的“采样与聚类”方法:

  1. 采样: 对于特定问题 (来自 HotpotQA 等数据集) ,他们要求原生 LLM 生成答案和推理链 100 次。
  2. 聚类: 由于 LLM 具有重复性,这 100 个答案中会有许多是相同或语义相似的。系统将这些响应分组为聚类。
  3. 分析不一致性: 这是核心创新点。如果模型生成某个答案 70 次,而生成另一个不同的答案 30 次,就存在不一致性 。 这种不一致性是模型内部不确定性的代理指标。
  4. 理由生成: 他们将这些相互冲突的聚类输入到一个更高级的模型 (如 GPT-4) 中,并使用特定的提示词: 从第一人称视角分析这些组之间的不一致性并总结不确定性。

例如,如果一个聚类说某栋建筑建于 1903 年,而另一个聚类说是 1920 年,GPT-4 就会生成一个训练标签: “我不确定成立年份,因为关于该建筑是位于莱奇沃思 (Letchworth) 还是韦林花园城 (Welwyn Garden City) ,我有相互矛盾的信息。”

训练目标

一旦数据集构建完成,原生 LLM 就会被微调以产生这些输出。数学目标是在给定问题 (\(q\)) 的情况下,最大化生成正确答案 (\(s\))、理由 (\(r\)) 和置信度分数 (\(c'\)) 的似然概率。

方程 1 展示了监督微调的目标函数。

这个方程确保模型学会在一个流畅的生成过程中同时生成答案、解释其思路并分配置信度分数。

第二阶段: 基于任务监督的强化学习

监督微调让模型学会了表达不确定性,但这并不一定能让置信度分数变得准确。模型可能仅仅因为训练数据中经常出现“我有 90% 的把握”,就学会了对所有事情都这么说。

为了解决这个问题,研究人员采用了强化学习 (具体来说是 PPO) 。他们需要惩罚模型“自信但错误”的行为,并奖励其“自信且正确”的表现。

奖励函数

研究人员设计了一个特定的二次奖励函数来校准置信度。

方程 2 展示了强化学习的奖励函数。

让我们解析这个方程 (\(R\)):

  • \(\mathbb{I}(\mathrm{response})\) 是正确性指示函数 (正确为 1,错误为 0) 。
  • 如果模型正确 (1)置信度高 (1.0) :
  • \(R = 1 - 2 * (1 - 1)^2 = 1\)。 (最大奖励)
  • 如果模型错误 (0)置信度高 (1.0) :
  • \(R = 1 - 2 * (0 - 1)^2 = 1 - 2 = -1\)。 (最大惩罚)
  • 如果模型错误 (0)置信度低 (0.0) :
  • \(R = 1 - 2 * (0 - 0)^2 = 1\)。 (奖励这种“有自知之明”的行为!)

这个函数迫使模型在极有可能出错时降低置信度,从而有效地对其进行“校准”。

优化

随后,使用标准 RL 算法——近端策略优化 (PPO) 来更新模型,以最大化这些奖励。

方程 3 展示了 PPO 优化目标。

实验与结果

SaySelf 真的有效吗?研究人员在多个数据集上测试了该框架,包括 HotpotQA (分布内) 和 TruthfulQA (分布外) ,并使用 Mistral-7B 作为基座模型。

他们使用了两个对不确定性估计至关重要的主要指标来衡量成功:

1. ECE (预期校准误差) : 这衡量了预测置信度与实际准确度之间的差距。如果你说你有 70% 的自信 100 次,你应该恰好对 70 次。如果你只对了 50 次,你的校准误差就很高。 该数值越低越好。

方程 4 定义了预期校准误差 (ECE)。

2. AUROC (受试者工作特征曲线下面积) : 这衡量了置信度分数区分正确答案和错误答案的能力。满分 (1.0) 意味着正确答案的置信度总是高于错误答案。 该数值越高越好。

方程 5 定义了 AUROC。

校准性能

结果显示,SaySelf 显著优于现有的基准方法。

表 1 比较了不同数据集的 ECE 分数。

在表 1 中,请看 HotpotQA 一栏。基准方法“直接提示” (DP) 的误差高达 0.6667。SaySelf 将其降至 0.3558 。 这种改进在 TruthfulQA 和 StrategyQA 等分布外数据集中也是一致的。星号表示这些改进具有统计学显著性。

同样,在观察 AUROC (区分对错的能力) 时,SaySelf 取得了最高分。

表 5 展示了 AUROC 评估结果。

校准会损害准确性吗?

不确定性训练中的一个普遍担忧是,模型可能会变得过于谨慎而不再回答正确,或者额外的训练会干扰其一般推理能力。

表 2 比较了各方法的准确率分数。

如表 2 所示,SaySelf 保持了与基准相当的准确性。虽然“自洽性” (SC) 有时能达到更高的准确率,但它需要对模型进行多次采样 (推理速度慢) 。SaySelf 通过一次推理就达到了具有竞争力的准确率,这使得它在实际应用中更加实用。

理由的质量

也许 SaySelf 最有趣的部分是定性输出。模型生成了“自我反思理由”。但它们忠实吗?它们真的代表了模型的困惑吗?

研究人员使用 GPT-4 来评估生成理由的忠实度 (打分 1-10) 。

表 3 展示了忠实度评估结果。

与基准相比,SaySelf 的得分显著更高 (HotpotQA 上为 8.3) 。这表明理由不仅仅是通用的文本;它们准确地描述了知识缺口。

让我们看一个具体的例子来了解实际效果。

案例研究展示了模型关于霍华德中心 (Howard Centre) 的理由。

在这个例子 (图 3) 中,模型被问及“霍华德中心”所在城镇的成立年份。

  • 聚类 1 认为它在韦林花园城 (Welwyn Garden City,成立于 1920 年) 。
  • 聚类 2 认为它在莱奇沃思 (Letchworth,成立于 1903 年) 。
  • SaySelf 理由: 模型明确指出: “我不确定霍华德中心是在莱奇沃思还是韦林花园城……这种模糊性导致了不同的成立年份。”

这比模型简单输出“置信度: 0.5”有了巨大的飞跃。它使用户能够验证具体的模糊点 (霍华德中心的位置) ,而不是从头开始检查整个事实链。

结论

SaySelf 代表了迈向“诚实 AI”的重要一步。通过结合基于自生成不一致性的监督微调和专为校准定制的强化学习,该框架教会了 LLM:

  1. 更准确地估计其置信度 (校准) 。
  2. 保持其推理能力 (准确性) 。
  3. 用人类可读的术语解释为什么它们感到困惑 (可解释性) 。

对于学生和开发者来说,这篇论文强调了 AI 的可靠性不仅仅在于得到正确的答案;还在于知道什么时候得到的答案可能是错的。随着 LLM 越来越多地融入决策工作流,像 SaySelf 这样允许模型“知其不知”的机制,对于建立信任将是必不可少的。

SaySelf 没有让黑盒自信地断言谬误,而是推动我们将黑盒变成“透明盒子”,它可以说: “我不确定,这就是具体原因。”