你训的 DPO 模型为什么"答非所问越来越像但质量越来越差"?——arXiv 2609.19144 给出了范式级解药
- 关联论文:2609.19144
如果你是做 LLM 后训练(post-training)的工程师,大概率遇到过这种崩溃:
你用一批人类偏好数据训 DPO(一种主流的"让模型按人类偏好学"的算法),训练 loss 在下降、reward 在涨、看着挺美——可等你把训好的模型拿去做用户测试,发现输出确实越来越像偏好数据的"风格",但实际质量、事实正确性、甚至语言流畅度都反降了。
更诡异的是:你用的是同一批偏好数据、同一个基座模型、连超参数都没动,可效果就是上不去。
你开始怀疑是不是偏好数据本身有问题——查了一遍,发现确实有些偏好对质量差不多、噪声挺大;可又没法扔掉,因为这就是公开数据的常态。
你的模型正在被一种叫 "likelihood displacement(似然位移)" 的现象系统性伤害。
2026 年 9 月来自 arXiv 2609.19144(ComPO 论文,NeurIPS 2025 已接收)的工作,从一个全新角度重新定义了这个问题——不是"修 DPO",而是"换一种思路做偏好对齐"。
一句话故事
ComPO 把 LLM 偏好对齐从「在偏好对(被偏好的回答 vs 被拒绝的回答)上做可微优化(用梯度下降直接调参数)」转换为「调用 comparison oracle(比较器)取方向」的零阶优化范式,既绕开 likelihood displacement,又保留了离线 / 在线两个版本与可证明的收敛 / 性能保证,在 NeurIPS 2025 上被接收为对齐方法学的新分支。
翻译成人话:不要硬把两个本来就差不多的回答拉开距离——让一个"裁判"告诉你"该往哪儿走",然后沿着方向慢慢挪。
为什么这件事值得你关注
这件事对所有做大模型对齐的人都直接相关——尤其是你正在被噪声偏好数据折磨:
- 🛠️ RLHF 工程团队:遇到 DPO 训练效果差、怀疑是 likelihood displacement 时,ComPO 是直接相关的解药
- 🧪 对齐方法研究者:偏好对齐是 LLM 后训练主线,ComPO 是范式级补充
- 📊 偏好数据团队:噪声偏好对的诊断和处理有了实用工具(pair-level diagnostics)
- 🧮 理论派读者:零阶优化与对比 oracle 的结合本身有学习价值
- 🤖 训练基础设施:可与现有 reward model 拼接,工程迁移成本低
更关键的是:打开了一扇新门——把零阶优化(一种古老的数学工具)和偏好对齐(最热门的工程任务)缝起来。
一个直觉解释:DPO 到底哪里出问题了?
DPO 是当前 LLM 偏好对齐的事实标准方案。优势是不需要在线采样、不需要显式 reward model——工程成本低、训练稳定。
它的核心思路是:拿到一对偏好数据(被偏好的回答 y_w、被拒绝的回答 y_l),让模型学增加 y_w 的概率、降低 y_l 的概率——学得越多越好。
但这里有个微妙问题。
想象你正在学一种菜系:
- 情况 A:老师给了你两道菜,一道明显好吃(红烧肉)、一道明显不行(白水煮面)。你能学到东西——这两道菜的差距本来就大,老师标注得也准。
- 情况 B:老师给了你两道菜,两道水平差不多(都是 7 分),但老师硬说"红烧肉比清蒸鱼好"。你硬按老师的要求学——但这两道菜本来就该差不多,你学完之后发现:红烧肉的味道确实更"像"老师说的,但味道变奇怪了;清蒸鱼也变奇怪了,因为你想把它往"不好"的方向推。
DPO 在 B 这种情况下的反应就是——强制把两个本来就差不多的回答拉开距离。
学术上叫 likelihood displacement:
- 被偏好的回答被压低概率(你越学,它越不像原本的"红烧肉")
- 被拒绝的回答被拉高概率(你越学,它越不像原本的"清蒸鱼")
- 但这些都不是为了让"对的更对",而是为了让 loss 变小
结果就是:模型输出的"形式"越来越像偏好数据,但实际质量下降。
ComPO 的判断非常直接:我们不需要在 y_w / y_l 上做可微优化(用梯度硬拉),我们只需要在偏好对上调用"比较 oracle(裁判)"拿方向信息。
ComPO 怎么工作?——三步走
第一步:找一个"裁判"(comparison oracle)
ComPO 不直接优化偏好数据,而是引入一个裁判——它可以是:
- 现有的 reward model:零额外成本,复用已校准 RM
- LLM judge(如 GPT-4o):表达能力强,可处理开放式响应
- 规则/标量 reward:完全可复现、无偏差(只适合代码/数学类任务)
裁判只做一件事:给定两个回答,告诉模型"哪个更好、好多少的离散信号"。
第二步:让模型沿方向小步挪动(零阶梯度)
经典 RLHF:用 reward model + 策略梯度,可计算被训模型对每个输出的导数——这是一阶。
ComPO:只允许通过 oracle 查询函数值,不读梯度——这是零阶。
直觉上:
- 一阶:你站在山坡上,看一眼指南针,知道"东边是下坡"——你直接往东走。
- 零阶:你蒙着眼站在山坡上,往前后左右各试一步,问"哪一步我变矮了?"——然后往"变矮"的方向挪一小步。
零阶慢一些,但对噪声更鲁棒——因为你不依赖精确的梯度信息,只用离散的方向信号。
第三步:在线版用 reverse-KL(一种"不离参考太远"的正则化)防漂移
为了防止模型越学越偏离原始分布(反而学坏),在线版 ComPO 引入一个"参考策略",告诉模型"别走太远"。这个机制叫 reverse-KL——鼓励策略保持在参考分布的高概率区域。
实验结果有多强?
论文在 NeurIPS 2025 上接收,扩展版 39 页,在 5 个模型家族验证:
| 模型 | 任务 | 关键结果 |
|---|---|---|
| Mistral-7B / Llama-3-8B | 多次关系推理 | 超过现有直接对齐方法 |
| Gemma-2-9B / Qwen3 / Gemma-3 | 代码 / 推理 / 对话 | 鲁棒性 在噪声偏好对上保持稳定 |
| 全部 | AlpacaEval 2 / MT-Bench / Arena-Hard | 长度可控 win rate + pair-level likelihood displacement 同步改善 |
最反直觉的发现:在噪声偏好数据上,ComPO 比 DPO 更稳定——这是"零阶更抗噪"的理论预期被实证支持。
三大工程坑:上线前必须想清楚
坑 1:Oracle 的偏差会注入策略
用 LLM judge 当 oracle 时,judge 的偏差会直接传给策略——上线前必须测 oracle 自身的校准曲线。
具体方法:拿一批金标准偏好对问 oracle,对比 oracle 判断与人类判断的吻合率,< 80% 一律不上生产。
坑 2:扰动幅度 ε 决定训练稳定性
ComPO 在偏好对附近做小扰动——ε 太大 → oracle 分辨不出差异 → 训练震荡;ε 太小 → 梯度估计方差大 → 收敛极慢。
工程建议:从 ε ∈ [0.05, 0.2] 开始 grid search。
坑 3:在线版 reverse-KL 权重调度
在线 ComPO 需要策略采样 + oracle 调用 + reverse-KL 控制——算力显著高于 DPO。
权重太高 → 策略不敢探索(退化为跟参考太像);权重太低 → 跟原设计不符、方向信号失真。建议从 0.01–0.1 开始调。
适合谁立刻用
- 🛠️ 正在被噪声偏好数据折磨的 RLHF 团队:ComPO 是值得立刻评估的工程论文
- 🧪 对齐方法研究者:这是一篇值得精读并扩展的范式级工作
- 📊 偏好数据团队:pair-level diagnostics(单偏好对诊断工具)是实用工具
- 🤖 Agent + RLHF 双重背景的团队:ComPO 与现有 RM 拼接的迁移成本最低
- 🧮 理论派读者:论文的收敛与 coverage(覆盖假设)证明值得一读
一段话总结
ComPO 的关键判断是不要在偏好对上硬做梯度优化,要用 oracle 拿方向。
它把"零阶优化"这种古老的数学工具缝到"偏好对齐"这个最热门的工程任务上,既绕开了 likelihood displacement,又给了可证明的理论保证。
对正在被噪声偏好对折磨的 RLHF 团队,ComPO 是值得立刻评估的工程论文;对方法论研究者,这是一篇值得精读并扩展的范式级工作。
下次你的 DPO 训练效果上不去,先问一句:是数据噪声大?还是 likelihood displacement 在悄悄伤害你的模型?
科普改写:Stephen · 基于 flyP 深度解读 + Jay 精修工程节。原文 arXiv:2609.19144(NeurIPS 2025 Poster 120289)。
三个标题变体
- 数字钩子版:NeurIPS 2025 已接收——arXiv 2609.19144 用"零阶优化"绕开 DPO 训练中隐藏的似然位移陷阱
- 拟人化版:你的 DPO 模型为什么"风格越来越像、质量越来越差"?——arXiv 2609.19144 给出了范式级解药
- 类比版:相当于让"裁判"告诉你往哪儿挪,而不是硬把两个差不多的菜拉开距离——arXiv 2609.19144 重新定义偏好对齐
📱 小红书风格卡片文案(直接可用)
📱 你的 DPO 模型为什么"风格越来越像、质量越来越差"?NeurIPS 2025 已接收的 arXiv 2609.19144 给出了范式级解药。
做 LLM 后训练(post-training)的人大概率遇到过这种崩溃:
用一批人类偏好数据训 DPO(一种主流的"让模型按人类偏好学"的算法),训练 loss 在降、reward 在涨、看着挺美——可等你拿去做用户测试,发现输出确实越来越像偏好数据的"风格",但实际质量、事实正确性、甚至流畅度都反降了。
更诡异的是:同一批数据、同一个基座、连超参数都没动,效果就是上不去。
📍 2026 年 9 月,arXiv 2609.19144(ComPO,NeurIPS 2025 Poster 120289) 给出了原因+解药。
🧠 为什么 DPO 会出问题?——"似然位移"(likelihood displacement)
想象你学做菜:
🍳 情况 A:老师给两道菜,一道明显好吃(红烧肉)、一道明显不行(白水煮面)。你学到东西——差距本来就大,老师标注得也准。
🍲 情况 B:老师给两道水平差不多的菜(都是 7 分),硬说"红烧肉比清蒸鱼好"。你硬按要求学——结果红烧肉变奇怪、清蒸鱼也变奇怪。
DPO 在 B 这种情况下的反应:强制把两个本来就差不多的回答拉开距离—— - 被偏好的回答被压低概率(不像原本的"红烧肉") - 被拒绝的回答被拉高概率(不像原本的"清蒸鱼") - 但这些都不是为了让"对的更对",而是为了让 loss 变小
结果:形式越来越像偏好数据,实际质量下降。
💡 ComPO 的核心思路:换一种思路做对齐
不要在偏好对上硬做梯度优化,要用 oracle 拿方向。
🔧 三步走:
👨⚖️ 第一步:找"裁判"(comparison oracle) - 现有 reward model(零额外成本) - LLM judge(表达强,但 judge 偏差会污染策略) - 规则/标量 reward(只适合代码/数学)
🧭 第二步:让模型沿方向小步挪动(零阶梯度)
直觉对比: - 一阶:看一眼指南针,知道"东边是下坡"——直接往东走 - 零阶:蒙着眼往前后左右各试一步,问"哪一步我变矮了"——往"变矮"的方向挪一小步
零阶慢一些,但对噪声更鲁棒——不依赖精确的梯度信息,只用离散方向信号。
🛡️ 第三步:在线版用 reverse-KL 防漂移 防止模型越学越偏离原始分布——鼓励策略保持在参考分布的高概率区域。
📊 实验结果(NeurIPS 2025 接收,扩展版 39 页):
| 模型 | 任务 | 关键结果 |
|---|---|---|
| Mistral-7B / Llama-3-8B | 多次关系推理 | 超过现有直接对齐方法 |
| Gemma-2-9B / Qwen3 / Gemma-3 | 代码/推理/对话 | 噪声偏好对上保持稳定 |
| 全部 | AlpacaEval 2 / MT-Bench / Arena-Hard | 长度可控 win rate + 位移诊断同步改善 |
最反直觉的发现:在噪声偏好数据上,ComPO 比 DPO 更稳定——"零阶更抗噪"的理论预期被实证支持。
⚠️ 三大工程坑(上线前必看):
1️⃣ Oracle 偏差注入策略——用 LLM judge 当 oracle 时,judge 偏差直接传给策略;上线前必须用金标准集测 oracle 校准曲线,< 80% 一律不上生产
2️⃣ 扰动幅度 ε 决定稳定性——ε ∈ [0.05, 0.2] grid search;太大训练震荡,太小收敛极慢
3️⃣ 在线版 reverse-KL 权重调度——0.01–0.1 起步;太高策略不敢探索,太低方向信号失真
🎯 适合谁立刻用:
- 🛠️ 正在被噪声偏好数据折磨的 RLHF 团队(值得立刻评估的工程论文)
- 🧪 对齐方法研究者(值得精读并扩展的范式级工作)
- 📊 偏好数据团队(pair-level diagnostics 是实用工具)
- 🤖 Agent + RLHF 双重背景(与现有 RM 拼接迁移成本最低)
- 🧮 理论派读者(收敛与 coverage 证明值得一读)
🔑 可推广的洞察:
当评估信号充满噪声时,"硬拉"(梯度优化)会放大噪声;"问路"(零阶方向)反而能稳住。
这和人类决策惊人相似: - 📊 绩效考核"打分平均"→ 优秀员工没被识别 - 🎓 标准化考试追求"公平"→ 反而掩盖真实差异 - 🤖 AI 对齐的 reward hacking → 优化目标跑偏
ComPO 的本质洞察:方向比梯度更鲁棒。
🔔 评论区聊聊:你做 DPO 训练时遇到过"loss 在降但 reward 不涨 / 质量反降"吗?诊断出来是什么问题?