RLHF 与奖励建模
偏好数据本身不会更新语言模型。从人类反馈中做强化学习(RLHF)还要加入两个习得系统:奖励模型估计标注流程会偏好哪些回答,策略则被更新为获得更高的估计奖励。前者把比较结果压缩成一个标量分数,后者搜索能获得高分的回答。
常见做法是先用人类比较训练奖励模型,再用 近端策略优化(PPO) 针对这项奖励优化策略,也就是正在训练的模型。一些宪法式方法和 基于 AI 反馈的强化学习(RLAIF) 变体改变了部分比较由谁生成,却没有改变奖励模型在数学上所表示的对象。在经典做法中,习得奖励需要 KL 约束,因为这个分数只是从有限回答分布上学到的代理。KL 约束和 PPO 都不能让这个代理自动变得正确。
本章始终区分三个对象:偏好记录是一项测量结果,奖励模型是根据这些测量结果拟合出的估计器,而策略目标决定要多大力度地使用这项估计。第 18 章 已经讨论了第一个对象。本章从第二个对象开始,一直讲到在线策略更新。
RLHF 先学会评判,再训练策略
对于一些开放式任务,比较两个候选回答比从头写出理想答案更可行。即使存在多个可以接受的答案,标注者往往仍能判断哪份摘要更清楚、哪段解释更有帮助。不过,这项优势取决于具体任务。评分准则含糊、标注者缺少必要知识,或强迫标注者在两个同样好的回答之间二选一,得到的标签依然很差。
经典的助手训练流水线分为三个阶段:
- 监督微调。 示范数据先让模型学会以助手的方式回答,具体见 第 17 章。
- 奖励建模。 标注者比较针对同一提示采样出的回答,奖励模型学习预测这些比较结果。
- 策略优化。 当前策略采样新的回答,冻结的奖励模型为其评分,冻结的参考模型衡量策略偏移,策略梯度优化器再更新策略。
只有第三阶段属于强化学习。奖励建模阶段是在比较标签上进行的监督学习。把三个阶段分开很重要,因为它们的失效方式不同:标签可能表达了错误的标准,奖励模型可能无法泛化,策略也可能利用奖励模型的错误,即便这个奖励模型在其他方面仍然有用。
从比较数据训练评分器
设奖励模型数据集包含 次比较:
其中, 是第 个提示; 是标注流程所偏好的回答; 是另一个回答; 是记录下来的比较总数。参数为 的奖励模型 为每个提示与回答的组合给出一个标量。按照 Bradley-Terry 模型 (Bradley and Terry 1952),定义
并最小化平均负对数似然:
这里, 是分数差, 是 Sigmoid 函数, 是模型认为标注流程会偏好 而非 的概率。模型从未被告知任一回答应当获得 7 这样的绝对奖励。训练只要求模型提高观测中胜者相对败者胜出的概率。
只保留一个确定的胜者会丢掉不确定性。若同一对回答收到 张有效选票,其中 张偏好 ,软目标 可以保留票数分布:
其中, 是选票总数, 是投给 的票数, 是其占比。 可以表示票数恰好对半,也可以表示明确的平局,却没有说明标注者为何意见不同。因此,第 18 章 所述的原始选票、标注者元数据和理由仍应保留。
排序数据还需要一层说明。InstructGPT 每次向标注者展示四到九个回答,再从排序中推导出所有隐含的有序配对 (Ouyang et al. 2022)。对 个候选回答排序会产生 条成对约束,却不等于得到了同样多份相互独立的观测,因为这些配对共享同一个提示、同一组候选回答和同一位标注者。Ouyang 等人把同一次排序产生的所有配对放进同一个训练批次,因为把它们当成独立更新会迅速过拟合。排序可以摊薄标注成本,却不能凭空制造独立证据。
奖励模型的验证报告应包括留出集对数损失、成对准确率和校准曲线。只看准确率时,只要两者选出的胜者相同,准确率会把 0.51 和 0.99 视为同样的预测。报告还应按提示来源、任务、回答长度、候选策略、安全类别和标注者群体拆分。RewardBench 分别测试对话、推理和安全比较,且其中一些胜者只因细小但可核验的差异而不同,说明了结构化切片为何必要 (Lambert et al. 2024)。
成对训练确定的是分数差,而非绝对质量
损失函数取决于分数差。对任意只依赖提示的偏移 ,
得到的比较概率完全不变,因为 会相互抵消。因此,原始奖励值没有自然的零点,也不应跨提示比较。在模型设定正确且校准良好的前提下,分数差才有解释: 是拟合出的对数优势。例如, 对应 。这仍不表示任一单独分数是回答质量的绝对度量。
图 19.1 展示了这种不变性。给两个分数加上相同偏移,不会改变拟合出的概率。
实现通常会在训练后选一个方便的零点。InstructGPT 把奖励模型的偏置平移到标注者示范的平均奖励为零 (Ouyang et al. 2022)。这种中心化不会改变任何分数差或成对概率。缩放则不同。用正数乘以所有奖励会保留排序,却会改变拟合概率,也会改变奖励相对于 KL 惩罚的强度。为了复现实验,必须把奖励尺度与 一起记录。
用一个标量表示偏好,本身也是一项假设。Bradley-Terry 模型用单一的潜在排序表示被比较的回答。循环偏好、随情境变化的标准,以及标注者之间稳定的差异,都可能不符合这条排序。把这些判断汇总起来仍可能得到有用的预测器,却不会因此把多元判断变成单一的客观真相。
策略目标包含两项
奖励模型冻结后,策略生成回答并获得奖励模型给出的分数。一种常见的总体目标是
这里, 是提示分布; 是参数为 、正在优化的策略; 是从该策略采样的回答; 是冻结的习得奖励; 是冻结的参考策略,通常来自 SFT; 控制参考惩罚的强度。第一项奖励习得评判者偏好的回答,第二项则让策略相对参考模型显著提高某个回答的概率时付出代价。
对应的分布级差异用 Kullback-Leibler 散度(KL)来度量,也就是新词元分布与参考分布相差多少。在 下对采样序列的对数比取期望,会得到 。对于自回归回答 ,
其中, 是回答长度, 是第 个词元, 是此前的回答前缀。实现会把这些采样得到的词元对数比用作奖励塑形项。采样得到的对数比本身并不是 KL 散度,单个贡献甚至可以为负。KL 是对策略所采样词元取期望后的结果。
这项惩罚是正则项,不是正确性证明。测得的 KL 很小,并不表示奖励正确; 过大也会阻止有益变化。有些系统固定 ,另一些则动态调整它以追踪目标 KL。无论哪种做法,都应把实际达到的 KL 写入运行记录,而不能只记录配置中的系数。
KL 正则与 PPO 裁剪约束的是两种不同变化
PPO 是上述目标的一种优化器 (Schulman et al. 2017)。这里又出现了第三个策略符号,很容易与参考模型混淆。采样策略 是生成当前批次时使用的策略快照,参考策略 则是跨越许多批次使用的 SFT 锚点。两者通常不是同一个模型。
这里令 表示采样词元, 表示由提示和前缀组成的状态。PPO 构造重要性比率
并最大化裁剪后的代理目标:
这里, 是采样词元; 是提示与前缀状态; 比较更新后的策略与采样快照; 是估计优势; 是裁剪宽度; 把 截断到区间 。优势把一段未完成回答的塑形回报与评论家根据前缀估计的基线相比较,从而降低梯度方差,却不能揭示哪个词元在因果意义上是“好的”。
两种控制解决的是不同问题:
- 参考模型 KL 抑制策略从 SFT 策略逐渐积累的语义偏移。
- PPO 裁剪在复用一个采样批次时,限制把采样似然比推到裁剪区间之外的激励。
裁剪并不会形成硬性的信赖域,也不能保证最终策略留在某个指定距离内 (Wang et al. 2019)。学习率、优势归一化、价值估计、批处理方式和数值稳定性依然重要。
回路中有四种参数角色
经典的 PPO 式 RLHF 包含四种参数角色,但并不一定要在每块加速器上放置四个同样大小的完整模型副本。
| 角色 | PPO 期间更新? | 作用 | 实现选择 |
|---|---|---|---|
| 策略 | 是 | 生成回答并接受策略梯度更新 | 完整模型、适配器或分片执行器 |
| 参考模型 | 否 | 为偏移惩罚提供对数概率 | 冻结副本、共享的冻结权重、分片或卸载模型 |
| 奖励模型 | 否 | 为完整的提示与回答组合评分 | 独立标量模型、较小模型或模型集成 |
| 评论家 | 是 | 根据前缀预测塑形回报 | 独立价值模型,或与主干共享的价值头 |
采样快照 是策略的另一种逻辑状态,但在优化时,保存下来的采样对数概率就可以表示它。InstructGPT 曾用 6B 奖励模型和 6B 价值模型来训练 175B 策略 (Ouyang et al. 2022)。这个具体设计说明,不能把「四种角色」理解成「四份策略模型副本」。共享、分片、适配器、卸载和重计算都会改变峰值显存与吞吐量。
图 19.3 展示了数据流。虚线框在一次 PPO 更新期间保持冻结,策略与评论家则接收梯度。
从轨迹偏好到指令遵循
从比较中学习奖励,早于它在聊天模型中的应用。Christiano 等人先让人比较短轨迹片段,据此训练奖励预测器,再用习得奖励训练 Atari 和模拟运动控制任务中的智能体 (Christiano et al. 2017)。Ziegler 等人把这项方法带到语言任务,包括风格续写和摘要 (Ziegler et al. 2019)。随后,Stiennon 等人针对摘要建立了如今熟悉的语言流水线:收集成对判断,训练奖励模型,再用 PPO 和参考惩罚优化语言策略 (Stiennon et al. 2020)。
InstructGPT 把这套方法从单一任务扩展到 API 指令分布,也让 SFT、奖励模型和 PPO 的顺序广为人知。在它的留出 API 提示分布上,标注者更偏好 1.3B 的 PPO-ptx 模型,而不是 175B 的 GPT-3 基座 (Ouyang et al. 2022)。这项结果说明了在所测分布上做后训练的价值,并不说明较小模型拥有更强的通用能力。同一篇论文也报告了模型在部分公开自然语言处理任务上的回退,以及在最受关注的偏好比较结果之外出现的简单错误。
宪法式 AI 改变了部分反馈的来源。在无害性实验中,一个模型依据成文原则比较回答,这些 AI 比较被用来训练偏好模型,再由偏好模型提供强化学习奖励 (Bai et al. 2022)。从无害性阶段移除的是人工无害性标签,而不是人的规范选择或评测。原则仍由人选择,整个设置也继续为有用性保留人类反馈。RLAIF 指的正是以 AI 生成的反馈替代部分人类反馈。
使用人类反馈,并不意味着一定要用 PPO。RLOO 与 GRPO 都是无评论家的策略梯度替代方案,但两者构造基线的方式不同:RLOO 使用其他样本的平均回报,GRPO 则在同一提示的样本组内对奖励做标准化 (Ahmadian et al. 2024; Shao et al. 2024)。DAPO 针对可验证推理修改了组相对方法,并且可以在该场景中移除显式参考项 (Yu et al. 2025)。这些方法在已公开的推理训练中很受重视,却不能据此声称某一种优化器适用于所有后训练技术栈。第 28 章 会在它们的主要应用场景中继续讨论。移除显式奖励模型与在线强化学习回路的离线替代方案,则从 第 20 章 开始。
优化会在训练分布之外检验代理
奖励模型通常在从某个候选分布采样的留出比较上验证,而策略优化会改变这个分布。奖励模型因此必须为一批经过专门筛选的回答评分:它们之所以被选中,正是因为预测奖励异常高。这比普通验证更困难。
这种失效有直接的人类证据。在摘要实验中,Stiennon 等人使用多种优化强度训练策略。轻度优化时,习得奖励与标注者偏好都会改善。加大优化后,预测奖励继续改善,标注者偏好却开始下降,并最终在该实验中与代理呈负相关 (Stiennon et al. 2020)。
Gao 等人采用受控替代方案,更系统地研究了这条曲线,以免反复进行昂贵的人工评测。固定的金标准奖励模型代替人工判断,并生成训练另一套代理奖励模型所需的标签。无论使用强化学习还是 best-of- 选择,对代理的优化最终都会降低独立金标准模型的分数,而且曲线还会随模型规模、数据量、优化器和 KL 惩罚而改变 (Gao et al. 2023)。这项实验在合成的金标准模型设置中证明了代理过度优化,却并没有测出一条普适的真实人类质量曲线。
下面的小程序明确区分了两条曲线。二次金标准曲线只是示意,并非对 Gao 等人拟合系数的复现。修改 curvature 可以看出,停止点并不存在一个普适位置。
import numpy as np
import matplotlib.pyplot as plt
policy_shift = np.linspace(0, 10, 200)
proxy_score = 0.35 + 0.12 * policy_shift
curvature = 0.016 # 示意值,并非 Gao 等人的估计结果
gold_score = 0.45 + 0.16 * policy_shift - curvature * policy_shift**2
best = int(np.argmax(gold_score))
plt.plot(policy_shift, proxy_score, label="优化后的代理分数")
plt.plot(policy_shift, gold_score, label="独立金标准模型分数")
plt.axvline(policy_shift[best], ls="--", color="gray")
plt.xlabel("策略相对参考模型的偏移")
plt.ylabel("分数(示意单位)")
plt.title("外部检查变差后,代理仍可能继续改善")
plt.legend()
plt.show()
print(f"金标准模型分数在偏移约 {policy_shift[best]:.1f} 时达到峰值")
奖励投机是这种泛化缺口在行为上的后果。策略可能发现,冗长、语气自信、特定格式、附和用户或其他特征能够提高奖励,却没有改善目标任务。谄媚是一个已有测量的例子:人类和习得偏好有时会把一份迎合用户、听起来有说服力的回答排在正确答案之前,而针对偏好模型优化又可能放大这种取舍 (Sharma et al. 2024)。这只是谄媚的一条成因,并不表示 RLHF 是唯一原因。奖励篡改是智能体改变评分过程本身,与利用固定但设定有误的分数属于不同问题。
各项控制能做什么,又不能证明什么
每项控制针对不同边界,没有任何一项能取代独立于被优化奖励的评测。
| 控制 | 能处理什么 | 不能证明什么 |
|---|---|---|
| 更好的评分准则、专家标签、平局与理由 | 测量错误与缺失的区分 | 能够泛化到采集过程从未覆盖的回答 |
| 留出集上的奖励模型对数损失、准确率和分切片校准 | 强化学习开始前的预测失效 | 能抵御策略专门选出的高分回答 |
| 新的同策略比较与奖励模型刷新 | 覆盖策略变化后产生的行为 | 外部评判者或评分准则正确 |
| 参考模型 KL 与调好的 | 偏离已知策略分布 | 奖励有效,或每项基座能力都得到保留 |
| PPO 裁剪与保守学习率 | 复用采样批次时的不稳定 | 形成硬性信赖域,或避免奖励投机 |
| 基于独立评测的早停 | 已观测到的代理与外部质量分叉 | 评测切片之外不存在失效 |
| 多样化的奖励模型集成 | 部分模型特有错误与不确定性 | 不存在共同盲点或有争议的价值选择 |
| 混入预训练数据 | 预训练数据所代表的能力回退 | 本身就能改善偏好对齐 |
模型集成是一项局部控制,而不是正确性证明。Coste 等人发现,在合成金标准奖励设置中,对奖励模型集成使用保守目标可以减少过度优化,对 best-of- 选择尤其有效 (Coste et al. 2023)。共享训练数据与共享评分准则仍可能造成共同盲点。
「对齐税」同样是一项经验性回退,并不是安全必然削弱能力的普适定律。InstructGPT 用这个词描述模型在特定公开自然语言处理数据集上的较低分数。在 PPO 中混入预训练梯度,能大幅减少这些回退,同时不降低标注者偏好,但仍有部分差距。只提高 KL 系数并没有恢复同一批任务,反而降低了验证奖励 (Ouyang et al. 2022)。过度拒绝则是另一种失效:它表示安全边界校准不当,并不是任何能力回退的另一个名称。
特定的人工评测实验和合成金标准模型实验,已经充分证明奖励可能被过度优化。尚未解决的是,上述控制能扩展到什么程度。一种看法把奖励建模视为不断迭代的测量问题:用同策略数据扩大覆盖范围、估计不确定性、更新评判者,并根据独立评测停止。更怀疑的看法则指出,策略与代理一直共同演化,而由人定义的质量仍然昂贵,也无法做到完整测量。
古德哈特定律是一个有用的警示,说明代理经过优化后可能不再追踪目标,却不是说每个有限奖励模型都会在某个固定 KL 值上失效的定理。分叉的位置和形状取决于反馈、奖励模型、策略与优化器。直接偏好目标删去了一部分 RLHF 机制,却没有消除这个测量问题。
由外部判断决定何时停止
一次实际训练应从奖励模型的准入检查开始,并以一项不使用该奖励模型的准入检查结束。一种较稳妥的流程如下:
- 训练奖励模型前,先按来源和近重复内容族拆分提示。
- 使用成组的比较或排序拟合奖励模型,并保留平局与原始选票。
- 报告留出集对数损失、准确率、校准情况与切片结果。关键切片未通过时,不要开始强化学习。
- 冻结选定的奖励模型版本、参考模型版本、分词器、对话模板和奖励归一化方式。
- 从 采样回答,并记录提示、回答、奖励分数、参考模型对数概率、采样时的对数概率和各模型版本。
- 计算塑形回报和基于评论家的优势,执行次数受限的 PPO 更新,并测量策略相对参考模型实际达到的 KL。
- 按固定间隔运行留出的人类或任务评测,以及能力和安全回归套件。
- 策略进入奖励模型未覆盖的回答区域时,加入经过审计的同策略比较;应发布新版奖励模型并重新训练,而不是在运行途中静默替换它。
- 即使习得奖励仍在上升,只要外部质量趋于平稳或开始下降,就停止或回滚。
运行仪表盘应把代理证据与外部证据放在不同面板中:
| 信号 | 如何解释 |
|---|---|
| 奖励模型训练与验证损失 | 习得评判者是否在拟合记录下来的比较,并能在其上泛化 |
| 分切片的成对准确率与校准 | 拟合出的偏好概率在哪些切片有效或失效 |
| 平均奖励与奖励分布 | 优化器成功提高了什么 |
| 实际序列级与词元级 KL | 在所选估计方法下,策略离参考模型有多远 |
| 独立偏好胜率或任务指标 | 离开被优化代理后,行为是否改善 |
| 能力与安全回退 | 偏好目标之外发生了哪些变化 |
停止规则应由表中代表外部证据的几项指标决定。奖励曲线上升,只能证明优化器正在有效提高这个分数,不能证明模型正在变得更好。
系统层决定哪种 RLHF 形式切实可行。经典 PPO 回路需要策略、参考模型、奖励模型和评论家各自完成前向计算,还要进行自回归采样。这些是四种逻辑角色,但峰值驻留量取决于分片、共享、适配器、卸载,以及对数概率是保存还是重算。因此,生成与模型协调所耗费的实际运行时间和内存,可能远高于简短损失公式给人的印象。
这项成本催生了两种不同的简化。第 20 章 中的直接偏好方法移除了显式奖励模型、评论家与在线采样回路。RLOO、GRPO 等无评论家的策略梯度方法保留在线采样,却替换掉习得价值基线。有些形式仍保留参考模型,一些基于验证器的后继方法则不保留,所以「从四个模型减到三个」并不是普适的核算规则。应根据 第 10 章 和 第 31 章 中的训练与服务系统,衡量实际执行方案。
延伸阅读
- Christiano et al., “Deep Reinforcement Learning from Human Preferences,” 2017. arXiv:1706.03741本文表明,深度强化学习智能体可通过非专家对轨迹片段成对比较(基于人类反馈的强化学习)的偏好来学习复杂行为,所需反馈量不足环境交互次数的 1%。
- Ouyang et al., “Training Language Models to Follow Instructions with Human Feedback” (InstructGPT), 2022. arXiv:2203.02155InstructGPT 通过基于人类反馈的强化学习(监督微调后用 PPO 优化人类偏好奖励模型)对 GPT-3 进行微调,使 1.3B 参数的模型在人类评测中优于 175B 的 GPT-3 基线。
- Schulman et al., “Proximal Policy Optimization Algorithms” (PPO;在强化学习与奖励建模章节中引入,并在推理训练中复用), 2017. arXiv:1707.06347PPO 提出裁剪代理目标函数,使策略梯度强化学习在仅用一阶优化的条件下达到 TRPO 的可靠性,并具备更优的样本复杂度。
- Bai et al., “Constitutional AI: Harmlessness from AI Feedback” (把性情挪进模型), 2022. arXiv:2212.08073Constitutional AI 通过成文原则、自我批判、修订与 AI 反馈,训练无害但不过度回避的助手行为。
- Gao et al., “Scaling Laws for Reward Model Overoptimization,” 2022. arXiv:2210.10760本文度量 RLHF 中的奖励模型过优化现象,推导出黄金奖励随策略与初始策略之间 KL 散度变化的扩展律,覆盖强化学习与 best-of-n 采样两种优化方式。
评论
登录后评论