引言

如果你关注过 GPT-4 或 Llama 2 等大型语言模型 (LLM) 的爆发,那你一定对 人类反馈强化学习 (RLHF) 这个概念不陌生。它是将一个原始、难以驾驭的文本预测器转变为乐于助人的助手的秘诀。通过使用强化学习 (RL),我们可以让模型与复杂的人类偏好保持一致,而这些偏好通常很难写成简单的代码。

然而,在这个过程的核心存在着一个根本性的低效问题。在典型的 RLHF 设置中,模型会生成整个段落或回复,只有在 完成之后,它才会收到一个奖励信号 (一个表明回复好坏的分数) 。

想象一下,你正在学习弹钢琴,但你的老师只在你弹完一整首协奏曲后给你一个“通过”或“不及格”的成绩,而不告诉你具体哪个音符弹错了。这就是 稀疏奖励问题 (Sparse Reward Problem) 。 它给模型带来了一个巨大的挑战,被称为 时间信用分配 (temporal credit assignment): 模型必须弄清楚在它生成的数百个 Token (词元) 中,具体是哪些导致了高分或低分。

在这篇文章中,我们将深入探讨一篇题为 “Enhancing Reinforcement Learning with Dense Rewards from Language Model Critic” 的研究论文。研究人员提出了一个名为 RELC (Rewards from Language model Critique,源自语言模型评论的奖励) 的新颖框架。这个想法非常优雅: 既然只能在生成结束时依赖单一分数,为什么不使用另一个 LLM 作为“评论家 (Critic)”,用红笔批改草稿,对中间步骤给出具体的、密集的反馈呢?

我们将探讨这种方法的工作原理、其背后的架构,以及为什么它能大幅提高情感控制、去毒 (detoxification) 和摘要等任务的样本效率和生成质量。


背景: 稀疏奖励的瓶颈

要理解这个解决方案,我们首先必须在马尔可夫决策过程 (MDP) 的背景下理解这个问题,这是 RL 的数学框架。

在文本生成中:

  1. 状态 (\(s_t\)): 提示词 (prompt) 加上目前为止生成的所有 Token。
  2. 动作 (\(a_t\)): 从词汇表中选择下一个 Token。
  3. 策略 (\(\pi_\theta\)): LLM 本身,由参数 \(\theta\) 决定,用于确定下一个 Token 的概率。

智能体 (Agent) 的目标是最大化预期回报。在像 近端策略优化 (PPO) 这样的标准方法中,梯度更新如下所示:

Equation 1: Policy Gradient Update

这里,\(G_t\) 代表回报。在文本生成任务中,环境 (或基于人类偏好训练的奖励模型) 通常只在最后的时间步 \(T\) 提供奖励 \(r\)。对于每一个 \(t < T\) 的步骤,奖励都是零。

这种稀疏性导致训练中的高方差。如果模型写了一个优美的 100 字故事,但在结尾使用了一个有毒的词,它可能会得到一个很低的分数。RL 算法可能会错误地惩罚那 99 个优美的词,因为它不知道 具体 是最后一个词导致了问题。

以前解决这个问题的方法包括“奖励塑造 (reward shaping)”或雇佣人工逐步标注每一个句子,但这不仅成本高昂,而且令人望而却步。这篇论文提出了一个问题: 我们能利用 LLM 本身来自动化这种细粒度的反馈吗?


RELC 框架

这篇论文的核心贡献是 RELC 。 它引入了一种自动生成 密集内在奖励 (dense intrinsic rewards) ——即 Token 级或片段级反馈——的机制。

架构

该框架将 RL 智能体分为两个不同的模块:

  1. 策略模型 (Policy Model): 这是我们试图训练的 LLM (例如 GPT-2 或 Llama 2) 。
  2. 评论家模型 (Critic Model): 这是一个 LLM (可能是同一个模型,也可能是像 GPT-4 这样更强的模型) ,负责评估策略模型的输出。

如下图所示,评论家创建了一个内部反馈循环。虽然环境仍然提供最终的“外在 (extrinsic)”奖励,但评论家会分析输出并为生成的特定部分注入“内在 (intrinsic)”奖励。

Figure 1: Illustration of the RELC framework with Policy and Critic modules.

密集奖励是如何生成的

这个过程将评论家视为一个高级的标注员。以下是分步工作流程:

  1. 生成: 策略模型接收提示词并生成完整的回复。
  2. 外在评分: 环境 (或外部分类器) 给回复一个单一的标量分数 (例如,“正面”或“有毒”) 。
  3. 评论: 评论家模型接收一个提示词,其中包含:
  • 任务描述。
  • 关于如何评论的少样本示例 (Few-shot examples)。
  • 策略模型生成的文本。
  • (可选) 收到的外在奖励。
  1. 标注: 评论家生成文本解释,指出哪些具体的文本片段是好的 (有助于获得高奖励) 或坏的 (导致低奖励) 。
  2. 奖励映射: 这些文本评论被映射回具体的 Token。
  • 在“正面”片段内的 Token 获得 +1 的内在奖励。
  • 在“负面”片段内的 Token 获得 -1 的内在奖励。

这个过程将单一的最终分数转化为一系列的反馈信号。

一个具体的例子: 情感控制

假设我们希望模型生成正面的电影评论。模型生成了: “The movie boasts breathtaking visuals, but the story falls flat.” (这部电影拥有惊人的视觉效果,但故事情节平淡无奇。)

在标准设置中,情感分类器可能会看到负面的结尾,并给整个句子一个 -2 的分数。模型会感到困惑: 是视觉效果不好吗?还是“电影”这个词用错了?

有了 RELC,评论家会分析这个句子。它将“breathtaking visuals” (惊人的视觉效果) 识别为正面,将“story falls flat” (故事情节平淡无奇) 识别为负面。

Figure 2: Example of reward calculation in sentiment control.

如上图所示,系统为“breathtaking visuals”中的 Token 分配 +1 的内在奖励,为“story falls flat”分配 -1 的内在奖励。每个 Token 的最终奖励 \(r_t\) 是外在奖励 (\(r^{ex}\)) 和内在奖励 (\(r^{in}\)) 的加权和:

\[ r(s, a) = \alpha_1 r^{ex}(s, a) + \alpha_2 r^{in}(s, a) \]

其中 \(\alpha_1\) 和 \(\alpha_2\) 是平衡这两个信号的超参数。这使得 RL 算法能够强化好的部分 (“惊人的视觉效果”) ,即使整个句子的任务失败了。

与 PPO 的集成

RELC 的美妙之处在于它不需要重新发明 RL 算法。它只是修改了输入到标准算法 (如 PPO) 中的奖励信号。优势函数 \(\hat{A}_t\) (用于估计某个动作比平均水平好多少) 是使用这些新的密集奖励计算的:

Equation 2: Generalized Advantage Estimation

为了确保稳定性,策略更新使用了标准的截断代理目标 (clipped surrogate objective):

Equation 3: PPO Objective Function


实验结果

研究人员在三个不同的文本生成任务上测试了 RELC: 情感控制、去毒 (Detoxification) 和摘要。他们探索了两种配置:

  1. 师生模式: 一个较小的策略模型 (GPT-2 Large) 由一个强大的评论家 (GPT-3.5) 指导。
  2. 自我评论模式: 一个单一模型 (Llama 2 7B) 既充当策略模型又充当评论家。

1. 情感控制

任务: 从中性或负面提示词开始,生成具有正面情感的文本 (使用 IMDB 数据集) 。

结果: RELC 展示了显著更好的样本效率。“样本效率”指的是模型需要多少训练数据 (或多少步) 才能达到一定的性能水平。

Figure 3: Learning curves for sentiment control.

在上图 (图 3a) 中,请看红线 (RELC) 与蓝线 (仅标准外在奖励) 的对比。RELC 智能体的学习速度要快得多,几乎立即就能达到高奖励。这证实了告诉模型 哪些 词是好的,比只在最后告诉它“干得好”能让它学得快得多。

下表 1 详细列出了定量指标。RELC 实现了最高的正面续写百分比 (59.06%),同时保持了流畅性 (低困惑度) 。

Table 1: Automatic evaluation results for sentiment control.

2. 语言模型去毒 (Detoxification)

任务: 给定一个可能触发有毒输出的提示词 (来自 RealToxicityPrompts 数据集) ,生成一个无毒的续写。

结果: 这是一个更难的任务,因为“毒性”可能很微妙。研究人员发现,RELC 比基线方法更有效地降低了毒性。

Figure 4: Detoxification learning curves.

图 4 显示了学习曲线。有趣的是,图 4b (使用 Llama 2 的自我评论) 表明模型可以自我提升。Llama 2 能够识别自己以前输出中的毒性,并利用该评论来更新自己的策略。

表 2 中的结果令人震惊。RELC 将生成有毒内容的概率降低到了 0.8% , 而标准 PPO 为 4.4%。

Table 2: Detoxification evaluation results.

作者还将 RELC 与一种名为“细粒度 RLHF (Fine-Grained RLHF)”的方法进行了比较,后者使用昂贵的 API 查询来获得部分奖励。RELC 的表现也优于这种方法 (表 3) ,实现了更低的毒性分数。

Table 3: Comparison with Fine-Grained RLHF.

3. 生成式摘要

任务: 总结 Reddit 帖子 (TL;DR 数据集)。这是一个复杂的任务,需要内容理解、连贯性和真实性。

设置: 基于人类偏好训练的奖励模型作为外在信号。评论家 (GPT-3.5) 就覆盖率和准确性提供内在反馈。

结果: RELC 再一次在样本效率上证明了其优越性。

Figure 5: Summarization evaluation results.

在图 5 中,我们可以看到 RELC 方法 (5b 中的蓝线) 的偏好分数 (奖励模型对摘要的喜爱程度) 相比仅外在奖励的基线 (橙色) 直线上升。

但是 人类 真的更喜欢这些输出吗?像 ROUGE 这样的自动指标在摘要任务中是出了名的不可靠。作者进行了人工评估 (图 6) ,评估了覆盖率、真实性 (Factuality) 和连贯性。

Figure 6: Human evaluation of summary quality.

红色条形 (Ours/RELC) 始终击败 PPO 基线 (橙色) 和监督微调 (绿色) 。 真实性 方面的提升尤为显著——这表明评论家通过在训练期间指出不受支持的陈述,帮助模型减少了幻觉。


为什么这行之有效? (分析)

你可能会想: 这种提升仅仅是因为我们在奖励函数中注入了 更多 的数字吗?评论家真的需要很聪明吗?

准确评论的必要性

为了测试这一点,研究人员进行了一项消融研究,他们随机分配内在奖励 (随机内在奖励) 。

Figure 7: Performance with random intrinsic rewards.

如图 7 所示,随机奖励 (橙色线) 的表现比标准基线还要差。这证明了 评论的准确性至关重要 。 这不仅仅是关于信号密度,更是关于 正确的 信用分配。评论家必须准确地识别出好和坏的片段。

计算效率

增加一个评论家模型 (尤其像 GPT-3.5 或 Llama 2 这样的大模型) 会增加训练期间的推理成本,因为你必须运行第二次前向传播来生成评论。这值得吗?

Figure 8: Performance as a function of FLOPs.

图 8 绘制了性能与 FLOPs (浮点运算次数,总计算量的度量) 的关系图。尽管 RELC 每一步的成本更高,但它每一步学到的东西要多得多,因此 总体效率更高 。 红线 (RELC) 在比基线 (蓝线) 更少的总 FLOPs 下获得了更高的分数。你在评论家身上多花了一点计算量,却在训练步骤上节省了大量的计算量。


结论

RELC 框架解决了 NLP 强化学习中最令人头疼的问题之一: 奖励的稀疏性。通过在循环中引入一个评论家 LLM,研究人员成功地自动化了密集奖励塑造的过程。

关键要点:

  1. 密集奖励有效: 对特定 Token/片段提供反馈比单一的句子级分数能更好地解决信用分配问题。
  2. 评论家可以自动化: 我们不需要人类来标注每一步。强大的 LLM (甚至策略模型本身) 可以充当有效的评论家。
  3. 效率与质量并重: 该方法生成的模型学习速度更快 (样本效率高) ,并且产出更好的结果 (更高的人类偏好得分) 。

这种方法为“自我修正”AI 开辟了令人兴奋的途径。如果模型能够有效地评论自己的输出并通过 RL 从这些评论中学习,我们就离不需要无限量人工标注数据的自主进化更近了一步。

参考文献与超参数

对于那些有兴趣复现这些结果的人,论文提供了实验的详细超参数。

情感控制超参数: Table 7: Hyperparameters for sentiment control.

去毒任务超参数: Table 8: Hyperparameters for detoxification.

摘要任务超参数: Table 9: Hyperparameters for summarization.