Home / 强化学习 / InstructGPT:从预测下一个词,到学习人类更偏好的回答

第 47 天|InstructGPT:从预测下一个词,到学习人类更偏好的回答

系列首页 · 上一篇 · 下一篇

原论文与版本:Ouyang 等,Training language models to follow instructions with human feedback,2022。正文。

先接住前作的问题

第27天 PPO提供了控制策略更新幅度的优化器,却没有告诉语言模型什么回答值得奖励;第49天 DPO以后才会重写偏好优化接口。本篇先看InstructGPT怎样把人类示范、排序奖励、PPO和预训练保持组合起来。这是模块组合的历史关系,与上一篇IQL的离线控制没有直接继承关系。

五个前置概念

  1. SFT:用示范监督微调语言模型。
  2. 奖励模型:从偏好比较学习评价函数。
  3. 参考策略:固定的漂移约束基准。
  4. Critic:预测RL训练中的未来回报。
  5. 对齐代价:改善偏好指标伴随其他能力下降。

一、问题设定:怎样把用户偏好变成语言模型的训练信号

预训练语言模型擅长延续文本,但用户要的是遵循指令、有帮助且尽可能真实的回答。扩大模型不自动把这两个目标变成同一个目标,因此本篇引入人类示范和同提示回答排序,研究这些反馈能否改变输出。

生成过程可以按token视为策略,但奖励模型评价的是完整回答。接下来的关键不只是“使用RLHF”,而是辨清每个网络、每类数据和每项约束的职责,避免把人类偏好分数、Critic价值与基础语言能力混成一个指标。

要素 本文设定
研究场景 语言模型RLHF;提示条件的序列策略学习
状态/观测 用户提示和已生成token前缀
动作 下一个token
奖励或学习信号 奖励模型终局评分减参考策略KL;PPO-ptx另加预训练目标
终止/边界 EOS或生成长度上限,截断的奖励语义需明确

二、接通SFT、排序奖励与两种策略参照

InstructGPT不是一个新策略梯度公式,而是把三个不同监督接口接起来。SFT先学示范回答;奖励模型用同一提示下的人类排序拟合相对偏好;PPO再从当前策略采样,让输出获得更高的学习奖励。奖励模型评估完整回答的好坏,PPO的价值函数预测后续训练回报,二者即使初始化相关也承担不同统计任务。

从排序概率推导RM损失

LRM=−Elog⁡σ(rϕ(x,yw)−rϕ(x,yl)).L_{RM}=-E\log\sigma(r_\phi(x,y_w)-r_\phi(x,y_l)). RL目标示意 E[rϕ(x,y)−βlog⁡(πθ(y∣x)/πref(y∣x))]E[r_\phi(x,y)-\beta\log(\pi_\theta(y|x)/\pi_{ref}(y|x))];PPO-ptx再加入预训练文本log似然。并非直接对离散采样后的RM分数穿透求导。

偏好标签怎样变成RM损失:xx 是提示,yw/yly_w/y_l 是同提示下被排在更前/更后的回答,rϕr_\phi 是奖励模型标量,σ(u)=1/(1+e−u)\sigma(u)=1/(1+e^{-u})。令模型预测“前者胜出”的概率为 p=σ(rw−rl)p=\sigma(r_w-r_l),观察到前者胜出后最小化负对数似然 −log⁡p-\log p,就得到上式。梯度推动奖励差增大,但同一提示下所有奖励同时加一个常数不会改变比较概率,所以排序监督本身不提供绝对奖励零点。随后PPO使用这个学得的评价信号,RM损失不等于策略损失。见原文§3.2奖励模型训练。

在RL阶段还要分清两个比较对象。πold\pi_{old} 是本轮采样策略,用于PPO的重要性比与更新控制;πref\pi_{ref} 是SFT参考策略,用于逐token的对数概率差惩罚。前者随采样轮次变化,后者在这段训练中提供行为锚点。裁剪旧策略比率不能代替参考KL,参考KL也不能代替PPO更新稳定机制。

PPO-ptx进一步在目标中混入预训练文本的对数似然。它不是把预训练文本伪装成人类奖励,而是在偏好优化之外保留语言建模梯度。奖励偏好、参考约束、预训练保持分别回答“朝哪里走”“离起点多远”“哪些基础能力别丢”,三个系数的作用不能压缩成一个所谓对齐强度。

新一轮更新开始时,哪个概率比应等于1

刚用当前策略完成采样、尚未进行参数更新时,新策略与采样旧策略相同,PPO比率应为1;它与SFT参考的对数比却可能非零。这个同批次检查能发现把参考概率误放进PPO分母的问题,前提是两次概率计算使用相同的token掩码与计算设置。

分别算参考惩罚、旧策略裁剪与ptx梯度

以下是可手算的教学构造,不是论文实验。

把一条两token回答的偏好奖励设为2,策略相对参考的逐token对数比为0.4与0.6,参考KL系数为0.1。该采样回答的整段惩罚是0.1(0.4+0.6)=0.1,正则化回报为1.9。单条轨迹的对数比和不保证非负,KL的非负性是适当分布下的期望性质。

现在令某token的新旧概率比为1.3、优势为1、PPO ε=0.2,则该token裁剪代理贡献为1.2;这里分母是旧策略,不是刚才的SFT参考。即使PPO比率保持在附近,累计多轮也可能远离参考策略。

最后加入一条预训练文本,其梯度独立来自正确下一个token的似然。它可以缓解能力遗忘,但不会自动提高当前回答的人类排序分数,这正是多目标训练可能发生权衡的地方。

三、冻结RM与参考策略,交替生成和PPO更新

收集人类示范,训练SFT策略
收集同提示候选的人类排序,训练RM
固定参考策略与RM,初始化Actor/Critic
每轮:
  冻结π_old并生成回答
  用RM终局评分、参考KL形成奖励
  Critic估计价值,计算优势
  PPO更新Actor并训练Critic
  PPO-ptx版本同时学习预训练文本
用独立人类评价及能力任务检查效果
输出:对齐策略

四、读人类偏好图,并把ptx的能力与成本另列

实验要素 原文设定与证据范围
环境与任务 API提示、人类偏好评估与NLP能力测试
数据来源与规模 示范、比较标签、未标注提示与预训练文本
对比基线 GPT-3、SFT、PPO、PPO-ptx
训练预算与资源 RL约256k episodes、约31k不同提示;基座规模分开
指标及其含义 人类偏好胜率、有帮助/真实性及能力回退
随机性与不确定性 人类评价含95%CI;这不是训练种子CI
实际验证的假设 偏好优化是否改善用户感受,混合预训练能否缓解回退

图1:模型规模与相对SFT偏好胜率

不同规模GPT、SFT、PPO和PPO-ptx相对175B SFT的人类偏好胜率
原论文图形摘引;Ouyang等,2022,Figure 1;原HTML图形。核对原文。原版权保留。

横轴是模型参数规模1.3B、6B、175B,按对数尺度排布;纵轴是相对同一个175B SFT参考回答的偏好胜率,0.5虚线表示打平参考。不同颜色区分训练方式,因此应先在同一规模比较训练改变,再跨规模比较;图中的误差条是评价的95%置信区间,不是三种规模训练出来的方差。小模型偏好更高可支持“训练方式很重要”,却不能把纵轴换成知识或推理总能力。

偏好图必须结合提示分布与标注者群体阅读。真实性与偏差还需独立测试;下面的PPO-ptx对照进一步检查偏好优化是否伴随基础能力回退。核对原文。

PPO-ptx缓解回退时新增了多少训练

附录E.6将对齐税与PPO-ptx联系起来:混入预训练梯度改善部分DROP/SQuAD能力回退,而仅增大KL系数并未获得同样修复。报告配置中预训练样本量为RL episode数量的8倍,带来额外计算,因此PPO与PPO-ptx不能只按RL步数比较成本。

五、偏好改善的范围由谁评价、评什么来界定

特定API提示分布上,1.3B对齐模型可在人类偏好中优于175B基础模型,跨规模比较仍须计入新增监督与训练算力。偏好来自特定标注群体,胜率又受盲评、回答长度和问题分布影响;奖励投机、能力回退与真实性要另测,不能扩写成全面能力超越。

六、三个值得继续追问的问题与参考答案

1. RM和Critic为何不能混为一谈?

RM 把提示和回答映射为由偏好数据学习的奖励,用来定义优化信号;Critic 预测当前策略在前缀后能获得的未来回报,用于基线和优势估计,随策略训练而变化。它们可以有相似架构甚至初始化来源,监督对象和更新时机仍不同。省去Critic不代表不需要RM,RM分数也不等于对当前策略价值的无偏估计。

2. 如何检查回答变长造成的评价偏差?

记录并分层比较回答长度、内容正确性、信息密度与盲评偏好,做长度匹配或在相近长度区间比较;还可加入无信息冗长控制回答,检测评审是否奖励篇幅。统计校正不能自动证明因果,因为长度也可能承载真实解释价值。应报告原始与长度控制结果,并用独立评审或客观任务分数复核。

3. 小对齐模型优于大基础模型的结论边界在哪?

结论限定于所选API提示分布、标注群体、模型版本和人类偏好评价,小对齐模型更贴合指令并不意味着知识、推理、代码或所有语言能力全面超过更大的基础模型。还要区分PPO与PPO-ptx,后者混入预训练目标以缓解部分能力回退。应查分项任务与标注分歧,不能把一个偏好胜率扩写成通用智能排名。

七、沿未解决的问题继续读

  • DPO:必须先训练显式RM,再做在线PPO循环吗?DPO从这类KL正则奖励目标的解析策略关系导出直接偏好损失,改变的是优化接口。(后作问题承接)

  • DeepSeekMath/GRPO:如果仍做在线策略优化,独立Critic的基线能否由同题多回答替代?GRPO沿PPO裁剪路线改变优势估计,是优化模块的后续发展,仍需奖励来源。(后续模块路线)

原文核对与路线出处

  • 原论文与图表入口。三阶段训练方法、PPO-ptx目标及附录E.6能力回退与预算讨论。

  • 模块组合:PPO。InstructGPT将PPO作为策略优化器,与奖励模型和参考约束组合。

  • 后作承接本篇:DPO。后作DPO重新参数化这类KL正则偏好目标,省去显式奖励模型与在线RL循环。

  • 教学阅读:Illustrating Reinforcement Learning from Human Feedback。仅借用本节的解释顺序与接口视角;具体算法、版本和实验以本篇原论文为准。

自测两题

第一题考查核心机制,第二题考查边界与辨析。建议先自行作答,再对照参考答案。以下数值小例子均为教学构造。

问题 1:奖励模型与 Critic 都输出分数,为什么不是同一个东西?

参考答案:奖励模型依据人类比较学习“回答是否被偏好”,提供优化信号;Critic 估计当前策略未来会获得多少训练回报,用于优势估计。前者定义反馈,后者辅助优化;参考策略则用于限制策略偏离原行为。

问题 2:奖励模型分数升高,为什么不能证明回答更真实?

参考答案:奖励模型拟合的是有限标注中的偏好,可能偏爱风格、长度或自信语气。策略还可能利用它的盲点。真实性、任务正确率与人类偏好需要分别评估,不能把其中一个指标当作所有能力的替代。

系列首页 · 上一篇 · 下一篇