AI 技术
#DPO#偏好对齐#RLHF#模型多样性#KL正则

DPO 隐式奖励过拟合:偏好对齐为何压低生成多样性,以及如何缓解

在线客服对话对齐中,DPO 常出现答案越训越像、措辞趋同的现象。文章从隐式奖励的构造出发,解释偏好数据被拟合后策略熵下降的机制,比较 β、length-normalization、IPO、KTO 等缓解手段的适用边界,并给出可观测信号与排查路径。

一个客服对话模型在 SFT 之后回答已经可用,但语气偏长、偶尔给出多余承诺。团队收集了几千条同一问题的两种回答,标注哪一条更好,用 DPO 训练。第一轮评估显示人工偏好胜率上升,第二轮继续训练,胜率还在涨,但线上开始出现一种奇怪的现象:同一个问题问十次,十次回答的结构几乎一样,连“首先……其次……”的措辞都趋同;遇到训练集没覆盖的边界问题,模型不再尝试多种解释,而是硬套一个熟悉的模板。偏好指标没有报警,多样性却已经塌了。

这不是训练脚本写错了。DPO 把奖励模型“折叠”进了策略本身,代价是策略同时承担了拟合偏好和保持分布两个职责。当偏好数据规模有限、覆盖单一,策略会在少数被标注的样本上把隐式奖励推到很高,熵随之下降。下面以这个客服场景贯穿全文,拆开机制、失败模式和缓解手段。

从 RLHF 到 DPO:被折叠掉的奖励模型

RLHF 的经典流程分三步:先做 SFT,再用成对偏好数据训练一个独立奖励模型,最后用 PPO 让策略在奖励模型打分下生成,同时用 KL 惩罚约束它不要偏离参考模型太远。这个流程的痛点是组件多:奖励模型本身可能被策略钻空子,PPO 需要在线采样、优势估计和大量超参,训练不稳定且昂贵。

DPO 的出发点是:在 KL 约束的奖励最大化问题里,最优策略与奖励函数之间存在解析映射。把这个映射代回偏好模型,奖励项被消掉,只剩下策略与参考模型的对数概率比。于是不需要显式奖励模型,也不需要在线采样,直接在成对偏好数据上做一次类似二分类的优化。论文(Rafailov 等,2023)指出 DPO 在情感控制上超过基于 PPO 的 RLHF,在摘要和单轮对话上质量相当或更好,同时实现和训练显著更简单。

关键在于“隐式奖励”这个词。DPO 并没有真的没有奖励,它把奖励定义成策略相对参考模型的对数概率比,再乘上温度系数 β。训练时,模型同时扮演策略和被优化的奖励函数,这就是论文标题所说的“语言模型秘密地是一个奖励模型”。

隐式奖励如何被过拟合

DPO 的损失可以理解为:让被选中的回答相对被拒绝的回答,在策略与参考模型的对数概率比之差上取得更大优势,再用 sigmoid 把它压成分类损失。每个样本的权重由隐式奖励对“错误程度”的估计决定,β 控制这个优势被放大或压缩的尺度。

问题出在训练信号只来自成对比较。偏好数据回答的是“A 比 B 好”,没有回答“好多少”“还有哪些同样好的回答”。当同一 prompt 只有一对样本,模型只要把 A 的概率推高、B 压低就能降低损失。它并不需要理解 A 好在哪,只需要记住 A 的措辞、长度和结构。训练轮数增加后,策略在这些样本上的概率越来越尖锐,其他同样合理的表达被顺带压低。

这就是隐式奖励过拟合:模型拟合的是标注样本的偏好,而不是偏好背后的质量维度。它表现为训练集上的隐式奖励差距持续扩大,而验证集或线上多样性指标下降。资料 2(Azar 等,2023)从理论上指出,DPO 仍然依赖一个近似——把成对偏好替换成逐点奖励,并假设奖励模型能从收集数据泛化到策略采样出的分布外数据。当这个假设不成立,DPO 的行为就会偏离预期。

在客服场景里,这意味着模型学到“先复述用户问题、再分三点回答、结尾加一句‘希望对您有帮助’”这套模板,因为标注者偏好结构清晰的回答。模板本身没错,但当所有回答都收敛到模板,模型对模糊问题的试探能力就消失了。

一个请求在训练中的状态流动

下面用流程图展示一条偏好样本进入 DPO 训练后,策略与参考模型如何共同决定更新方向。

flowchart TD
    A[采样 prompt] --> B[取成对回答 chosen/rejected]
    B --> C[策略模型前向计算两组对数概率]
    B --> D[参考模型前向计算两组对数概率]
    C --> E[计算策略对数概率比]
    D --> F[计算参考对数概率比]
    E --> G[两者相减得到隐式奖励差]
    F --> G
    G --> H[乘 beta 后过 sigmoid 得损失]
    H --> I[反向传播更新策略参数]
    I --> J{验证集多样性是否下降}
    J -->|否| A
    J -->|是| K[降低轮数或调整 beta 与损失类型]

这条链路里有两个容易忽略的细节。第一,参考模型是冻结的,它只提供“原始分布”的基线,不参与更新;如果参考模型本身已经过 SFT 且分布很窄,KL 约束的锚点也会偏窄。第二,chosen 和 rejected 的对数概率是整段回答的累加值,长度直接影响这个数值,这就是后面要谈的 length-normalization。

β 在控制什么,边界在哪里

β 是 DPO 损失里的温度系数,工程上常取 0.1~0.5。它同时影响两件事:隐式奖励的尺度,以及策略偏离参考模型的惩罚强度。

β 偏大时,KL 约束更强,策略更贴近参考模型,多样性保留较好,但偏好信号的推进变慢,可能欠拟合。β 偏小时,参考模型的影响减弱,策略更自由地追逐偏好数据,训练集胜率上升更快,但更容易过拟合、熵下降更快。资料 4 的学习笔记提到,当 β 趋近 0 时相当于忽略参考模型,此时 DPO 退化成在偏好数据上做无约束的对数概率调整。

β 不是唯一的旋钮。把它调大只能延缓过拟合,不能改变“成对比较只提供相对信号”这个事实。如果偏好数据本身覆盖窄,β 再大也只是让模型在窄分布里更慢地收敛。

缓解手段的对比与适用边界

围绕隐式奖励过拟合,社区提出了几种改动损失或数据形式的方案。它们在“保留多少偏好信号”和“约束多强”之间做不同取舍。

方案核心改动对多样性的作用数据要求主要代价
标准 DPO对数概率比之差过 sigmoid基线,易随轮数下降成对偏好简单,但过拟合风险高
length-normalization对数概率按回答 token 数归一削弱长回答被系统性偏好成对偏好改变隐式奖励尺度,需重调 β
IPO把损失改成对优势的平方误差抑制优势被无限放大成对偏好需要合适的正则强度
KTO只用“好/坏”二元信号,按效用建模降低对成对结构的依赖单点好/坏标注丢失成对比较信息
cDPO引入 label smoothing 容忍标注噪声减少对噪声样本的尖锐拟合成对偏好平滑过强会削弱信号

length-normalization 针对的是一个具体偏差:DPO 用整段回答的对数概率累加值,长回答的累加项更多,数值更容易被拉开。如果不归一,模型可能学到“更长即更好”,而长度和多样性往往负相关。归一之后,隐式奖励的量纲改变,β 需要重新调整,否则等效约束强度会变化。

IPO(资料 2)把目标从“让优势尽可能大”改成“让优势接近一个目标值”,相当于给隐式奖励差加了平方惩罚,避免它在少数样本上被推到极端。资料 4 指出 IPO 正是针对 DPO 的过拟合问题提出的替代损失。

KTO(Ethayarajh 等,2024)走得更远:它不要求成对数据,只需要一个输出“好或坏”的二元信号,并用前景理论中的效用函数建模。论文报告在 1B 到 30B 规模上匹配或超过基于偏好的方法。它的优势是数据门槛低——客服团队更容易标注“这条回答可以/不可以”,而不是每次都凑一对。代价是丢掉了成对比较里的相对信息,在偏好差异细微的场景可能不够敏感。

需要强调的是,资料 3 明确表示没有一个 HALO 损失在所有场景都更优,最佳损失取决于具体设定最合适的归纳偏置。选择哪种方案,取决于你手里有什么数据、更怕哪种失败。

生产环境该看哪些信号

偏好胜率是滞后指标,等它下降时多样性往往已经塌了。更早的信号包括:

  • 隐式奖励差距:训练日志里 chosen 与 rejected 的奖励差持续单调扩大,而验证集差距停滞,说明在拟合训练样本。
  • 生成熵或 distinct-n:对固定 prompt 集多次采样,统计不同回答的比例。这个指标下降通常早于人工评估报警。
  • 回答长度分布:如果长度均值上升且方差收窄,可能是 length bias 叠加模板化。
  • KL 散度:策略相对参考模型的 KL 若在后期加速上升,说明约束正在被突破。

排查顺序上,先确认多样性下降是训练轮数问题还是数据问题。把同一 checkpoint 在固定 prompt 集上采样,如果换一批训练集外的 prompt 多样性正常,问题在数据覆盖;如果所有 prompt 都趋同,问题在损失和轮数。

什么时候这套方法会退化

DPO 及其变体的有效性依赖几个前提,前提不成立时收益会消失甚至反转。

偏好数据覆盖不足时,模型只能记住标注样本的表面特征。参考模型分布过窄时,KL 锚点无法提供足够的多样性保护。标注噪声大时,模型会把噪声当成信号,cDPO 的 label smoothing 可以缓解,但平滑本身也会削弱真实偏好。任务本身允许多种正确答案时——比如开放式客服建议——成对偏好天然只覆盖两个选项,模型没有动力保留其他合理路径。

一个实用的判断是:如果业务更看重稳定、可控、格式统一,多样性下降未必是坏事,此时可以接受较小的 β 和较多轮数。如果业务需要模型在模糊问题上给出多种可能,或者要用于后续的搜索、投票、数据合成,就必须把多样性当作一等指标来监控,并考虑 IPO、KTO 或更严格的长度归一。

DPO 把奖励模型折叠进策略,换来了实现简单和训练稳定,但也把“拟合偏好”和“保持分布”两件事压到同一组参数上。缓解手段本质上都是在重新分配这两者的权重,没有一种能在所有数据条件下同时最大化偏好胜率和生成多样性。

资料来源

  1. Direct Preference Optimization: Your Language Model is Secretly a Reward Model
  2. A General Theoretical Paradigm to Understand Learning from Human Preferences
  3. KTO: Model Alignment as Prospect Theoretic Optimization
  4. DPO: Direct Preference Optimization 直接偏好优化(学习笔记) - kkzhang - 博客园