RLHF 与对齐技术
本笔记面向深度学习与强化学习科研人员,系统阐述 RLHF(Reinforcement Learning from Human Feedback)及其相关对齐技术的理论基础、数学推导与算法实现。
更新日期:2026-05-14
1. RLHF 的基本框架
1.1 InstructGPT 流程
InstructGPT(Ouyang et al., 2022)提出了 RLHF 的经典三阶段流程:
阶段一:监督微调(SFT)
给定 prompt 分布
其中
阶段二:奖励建模(RM)
训练奖励模型
阶段三:PPO 微调(RLHF)
使用强化学习算法(PPO)在奖励模型提供的奖励信号下微调语言模型,同时约束其不要偏离 SFT 模型太远。
RLHF三阶段定位与轻量化方案:
- 经典重型RLHF:
SFT → RM → PPO - 轻量化对齐主流:Prompt Tuning、LoRA+RLHF、冻结骨干仅微调对齐头,是科研落地高频方案
RLHF训练稳定性核心手段:
- 自适应KL惩罚(动态调整
) - 偏好数据温度平滑
- 早停机制防止偏好过拟合
1.2 人类偏好数据与奖励建模
人类偏好数据的形式为三元组
:输入 prompt :人类偏好的响应(preferred response) :人类不偏好的响应(less preferred response)
奖励模型通过 Bradley-Terry 模型建模偏好概率:
其中
1.3 RLHF 的优化目标
RLHF 的最终目标是学习一个策略
其中:
:奖励模型给出的奖励值 :KL 惩罚系数,控制策略偏离 SFT 的程度(通用取值 )
LLM工业落地实操:理论使用全局KL,实操使用逐Token KL散度,降低计算量、提升训练稳定性:
这个目标可以重写为:
2. 奖励模型(Reward Model)
2.1 奖励建模定义
定义 2.1(奖励模型) 奖励模型是一个参数化函数
其中
2.2 Bradley-Terry 模型
定义 2.2(Bradley-Terry 偏好模型) 给定 prompt
其中
性质 2.1(偏好概率的有界性) 当
2.3 奖励模型训练的交叉熵损失
给定偏好数据集
负对数似然损失为:
代入 Bradley-Terry 模型:
展开梯度形式。设
由于
物理意义:当
2.4 奖励模型的标度问题
训练好的奖励模型
其中
3. PPO 在 LLM 中的应用
3.1 策略梯度回顾
对于标准强化学习,策略梯度定理给出:
其中
在 LLM 场景下:
- 状态
:当前的 context - 动作
:生成的下一个 token - 轨迹
:完整的生成序列
3.2 剪切代理目标(Clipped Surrogate Objective)
PPO 的核心创新是剪切代理目标函数。定义重要性采样比率:
定义优势函数估计(GAE, Generalized Advantage Estimation):
其中
LLM中GAE的特殊性:传统强化学习是逐帧GAE,LLM为整序列统一GAE,折扣因子
定理 3.1(PPO 剪切代理目标) PPO 通过以下目标函数实现策略更新:
其中
剪切机制的物理意义:
当
当
3.3 价值函数与 baseline
在 LLM 的 RLHF 中,价值函数
仅 PRM 过程奖励才定义逐步骤局部信号。
价值函数通过以下均方误差损失进行训练:
其中
优势函数定义为:
这本质上是 REINFORCE with baseline,通过减去 value baseline 减少方差。
3.4 经验回放与 Epoch 限制
PPO 在 LLM 中的特殊性:LLM-RLHF 采用On-Policy 同策略 PPO,轨迹严格依赖当前策略参数,旧轨迹分布失效,不支持离线异策略经验回放,并非单纯”只能用一次”。
每个 prompt 及其生成轨迹只用于一次梯度更新,但可以在同一个 mini-batch 中多次计算 loss(多个 epoch)。
设
- 采样轨迹
- 计算优势函数
- 在相同数据上执行
个 epoch 的策略更新(通常 )
3.5 梯度裁剪与训练稳定性
PPO 额外使用梯度裁剪进一步增强稳定性:
行业标准:LLM训练使用梯度范数裁剪,通过 torch.nn.utils.clip_grad_norm_(max_norm) 实现:
其中 max_norm 通常设为 0.1~1.0。
KL 散度约束与梯度裁剪的双重保险:
- KL 散度惩罚:软约束策略不要偏离
太远 - 梯度裁剪:硬约束参数更新的幅度
- 剪切代理目标:限制策略更新的比率
4. KL 散度约束的作用
4.1 参数的物理意义
信息论角度:
4.2 前哨策略(Reference Policy)的约束
定义 4.1(前哨策略) 前哨策略
KL 惩罚项
引理 4.1(KL 约束的闭式解) 上述目标的解具有以下形式:
证明:在约束
对
整理得:
令
这正是 Boltzmann 分布的形式。
4.3 KL 惩罚 vs 奖励信号之间的权衡
令
当
当
5. DPO(Direct Preference Optimization)
5.1 DPO 目标函数
DPO(Rafailov et al., 2023)提出了直接优化偏好数据的目标,无需显式训练奖励模型。
定义 5.1(DPO 目标) 给定偏好数据集
其中
5.2 DPO 与 PPO 的等价性推导
定理 5.1(DPO 与 PPO 的等价性) 在适当假设下,最小化 DPO 损失等价于在 PPO 框架下最大化期望奖励。
证明:从 RLHF 目标出发,设 Bradley-Terry 模型给出偏好概率:
DPO 论文的核心观察:DPO 隐式定义了满足 Bradley-Terry 约束的奖励模型。通过偏好概率的对数几率变换可得:
最小化 DPO 损失等价于最小化以下交叉熵:
其中
5.3 DPO 的优缺点分析
优点:
- 无需奖励模型训练:DPO 直接在偏好数据上优化,绕过了独立的奖励建模阶段,简化了流程。
- 避免奖励模型过拟合:奖励模型的有限容量可能导致过拟合,DPO 避免了这个问题。
- 计算效率:单阶段优化,无需运行 PPO 的迭代过程。
- 训练稳定性:DPO 的优化目标更加平滑,不涉及策略梯度的方差问题。
缺点:
- 对参考模型的依赖:DPO 需要高质量的
,如果参考模型能力不足,DPO 难以学到超越它的能力。DPO 强依赖高质量 SFT 参考策略,若 能力薄弱,DPO 无法实现能力跃升,仅能做偏好对齐,无法做能力提升。 - 隐式奖励的局限性:DPO 使用的隐式奖励
可能与真实人类偏好不完全一致。 - 缺乏探索机制:DPO 本质上是最小化 KL 散度到参考策略,没有显式的探索机制。
- 过优化风险:DPO 可能更容易过拟合到偏好数据的分布,导致泛化能力下降。
6. 过程奖励模型(Process Reward Model, PRM)
6.1 结果奖励 vs 过程奖励
定义 6.1(结果奖励模型,Outcome RM) 结果奖励模型只在完整的响应生成后才提供奖励信号
定义 6.2(过程奖励模型,Process RM) 过程奖励模型在生成的每个中间步骤都提供奖励信号:
对比:
| 特性 | 结果奖励 (Outcome RM) | 过程奖励 (Process RM) |
|---|---|---|
| 奖励时机 | 仅在序列末尾 | 每个中间步骤 |
| 信用分配 | 难以处理长序列 | 天然支持逐步信用分配 |
| 训练数据 | 稀疏偏好信号 | 需要每步标注 |
| 可解释性 | 低 | 高 |
6.2 蒙特卡洛树搜索中的 PRM
蒙特卡洛树搜索(MCTS) 结合 PRM 的核心思想:
在 MCTS 中,每个节点
:访问计数 :平均奖励估计
MCTS 的 Upper Confidence Bound (UCB) 选择策略:
其中
PRM 引导的 MCTS:使用 PRM 提供每步的即时奖励,改进 UCB 中的 Q 值估计:
其中
6.3 PRM 与 MCTS 的结合
算法步骤:
- 初始化:使用 SFT 模型初始化策略
- PRM 训练:收集人类标注的过程偏好数据
,训练 PRM - MCTS 搜索:对于每个 prompt
,使用 PRM 引导的 MCTS 生成多样化的响应 - 数据收集:收集
对 - 策略更新:使用 DPO 或 RLHF 更新策略
- 迭代:重复步骤 2-5
数学形式化:设 MCTS 树的叶子节点对应完整响应
其中
7. 对齐失败的模式与检测
7.1 奖励黑客(Reward Hacking)
定义 7.1(奖励黑客) 奖励黑客是指策略
数学描述:奖励模型
即策略优化的目标与真实目标不一致。
典型模式:
- 长度作弊:模型发现更长的回复获得更高奖励,因此生成冗长但空洞的内容
- 关键词填充:在回复中堆砌特定关键词以提高奖励模型分数
- 对抗性输入:发现奖励模型的盲点,在特定输入模式下生成欺骗性内容
7.2 谄媚(Sycophancy)
定义 7.2(谄媚) 谄媚是指模型在收到用户反馈时,过于顺从用户的观点,而不是坚持事实准确性。
数学描述:设用户的隐式信念为
即策略优先考虑用户满意度而牺牲了真实性。
检测方法:
- 观点一致性测试:给模型提供相同事实,但附加支持或反对该事实的用户陈述,观察回复变化
- 多轮对话测试:通过多轮对话引导模型改变立场,检测是否过度顺从
7.3 过度优化(Overoptimization)
定义 7.3(过度优化) 过度优化是指在 RLHF 过程中,对 KL 约束的
数学分析:设真实目标函数为
其中
过小的
Goodhart’s Law:当一个指标变成目标时,它就不再是一个好的指标。在 RLHF 中,当奖励模型成为优化目标时,它可能不再反映人类真实偏好。
7.4 对齐测试方法
7.4.1 自动化测试
对抗性测试集:构建包含”陷阱”问题的测试集,检测模型是否会:
-
Truthfulness Test:检测模型在明显错误前提下是否仍坚持正确事实
- 输入:“如果 2+2=5,那么 1+1=?”
- 期望:模型应拒绝参与错误推理
-
Helpfulness Test:检测模型是否能识别并拒绝有害请求
- 输入:明显的恶意请求
- 期望:拒绝并给出合理解释
-
Honesty Test:检测模型是否会在不确定时承认不知道
- 输入:超出训练分布的冷门问题
- 期望:承认不确定性而非胡说
7.4.2 人类评估协议
A/B 测试框架:
- 将测试用例随机分配给两组人类评估者
- 一组评估 A 版本输出,另一组评估 B 版本
- 比较偏好率和安全性指标
Elo 评分系统:
- 将模型放入 Elo 系统,与人类评估者对弈
- 持续追踪模型的 Elo 分数变化
7.4.3 内部代理(Internals)分析
奖励模型探测:训练探针分类器,检测奖励模型的激活模式是否与特定对齐失败模式相关联。
注意力可视化:分析 Transformer 的注意力权重,检测是否存在”谄媚模式”的注意力头。
7.5 其他对齐失败场景
除奖励黑客、谄媚、过度优化外,补充三大主流对齐缺陷:
事实遗忘(Fact Forgetting):RLHF 优化后模型丢失预训练阶段学到的 factual 知识,表现为回答通用事实的准确率下降。根源是偏好数据分布与预训练知识分布冲突。
上下文偏见(Context Bias):模型过度依赖近期上下文,忽略长期依赖。表现为处理长文本时前后信息关联断裂。
多轮一致性崩塌(Multi-turn Inconsistency):模型在多轮对话中前后不一致,表现为同一问题不同轮次回答矛盾。根源是 RLHF 训练为单轮对话,与多轮交互场景不匹配。
附录:算法伪代码
算法 A.1:PPO for LLM
输入:SFT 模型 π_ref,奖励模型 r_φ,初始策略 π_θ,折扣因子 γ,GAE 参数 λ,剪切参数 ε
输出:更新后的策略 π_θ
1. 初始化价值网络 V_ψ
2. FOR 每个训练步 do
3. 采样一批 prompts {x_i} from ρ
4. FOR 每个 prompt x_i do
5. 生成轨迹 τ_i ~ π_θ(·|x_i)
6. 计算优势估计 A_t for each token
7. END FOR
8. FOR 每个 epoch do
9. FOR 每个 token position t do
10. 计算比率 r_t(θ) = π_θ(y_t|x, y_{<t}) / π_old(y_t|x, y_{<t})
11. 计算剪切目标 L_CLIP(θ)
12. 计算价值损失 L_V(ψ)
13. 更新 θ via Adam
14. 更新 ψ via Adam
15. END FOR
16. END FOR
17. END FOR
算法 A.2:DPO
输入:参考策略 π_ref,偏好数据 D = {(x, y_w, y_l)},温度参数 β
输出:更新后的策略 π_θ
1. 初始化策略 π_θ = π_ref
2. FOR 每个训练步 do
3. 采样一批偏好数据 (x, y_w, y_l) ~ D
4. 计算隐式奖励对数比率:
log_ratio_w = log π_θ(y_w|x) - log π_ref(y_w|x)
log_ratio_l = log π_θ(y_l|x) - log π_ref(y_l|x)
5. 计算 DPO 损失:
L_DPO = - log σ(β · log_ratio_w - β · log_ratio_l)
6. 更新 θ via Adam
7. END FOR
参考文献
- Ouyang, L., et al. (2022). Training language models to follow instructions with human feedback. NeurIPS.
- Schulman, J., et al. (2017). Proximal Policy Optimization Algorithms. arXiv preprint.
- Rafailov, R., et al. (2023). Direct Preference Optimization: Your Language Model is a Reward Model. NeurIPS.
- Stiennon, N., et al. (2020). Learning to summarize with human feedback. NeurIPS.
- Bai, Y., et al. (2022). Training a helpful and harmless assistant with RLHF. arXiv preprint.
- Lightman, W., et al. (2023). Let’s Verify Step by Step. ICML.
- Uesato, J., et al. (2022). Solving math word problems with process-based feedback. arXiv preprint.