偏好优化算法的几何统一理论 2026
约 31 分钟9086 字0 次阅读

偏好优化算法的几何统一理论 2026:从 DPO 到 GRPO 的隐式奖励恒等与损失景观同伦
一句话摘要:把 RLHF 之后的偏好优化算法家族——DPO、IPO、KTO、ORPO、SimPO、GRPO、RLVR——放到同一个损失景观里去看,会发现它们本质上是同一个 Bradley-Terry 对偶目标在参考策略附近的不同切平面投影,区别不在于"偏好信号的强度",而在于"哪一类正则化项被允许进入梯度"。本文沿着"BT 偏好 → DPO 重参数化 → 取消参考策略 → 组内相对优势"的递降路径,给出这七种算法的统一形式化,并讨论工程上如何据此选择算法。
一、问题的提出:RLHF 的工程脆弱性与后训练范式分叉
自从 InstructGPT 把 RLHF 推上工业标准之后,"人类反馈强化学习"在大模型后训练里一度几乎是默认选项。但到 2026 年回看,RLHF 的工程脆弱性远比想象严重:它需要一个独立训练的价值网络(critic),需要同时维护 actor + critic + reference + reward 四个模型,显存压力和通信开销都让中段规模团队难以承担;更棘手的是,PPO 的 clip 目标对 reward hacking 极其敏感——一旦 reward model 在某个局部区域过拟合,policy 就会迅速坍缩到"刷高 reward 但语义崩坏"的状态。Ziegler 在 2019 年就指出这是 PPO+reward model 组合的结构性风险,而不是某个实现 bug。
2023 年 Rafailov 的 DPO 论文是分水岭。它证明了一个看似平凡的事实:在 Bradley-Terry 偏好模型下,RLHF 的最优策略可以闭式表达为参考策略与隐式奖励的指数比;于是整个 reward model + critic 链路被"折叠"进 policy 的交叉熵损失里,训练成本骤降一个数量级。但 DPO 不是终点——它在工程上暴露了自己的脆弱性:对参考策略(reference policy)的强依赖、对偏好对长度偏差的敏感、对分布外偏好的退化。围绕这些缺陷,社区在 2024-2025 年密集推出 IPO、KTO、ORPO、SimPO、GRPO、RLVR 等近十个变体,每个都声称解决了上一个的问题,但很少有人把这些变体放在同一个目标函数空间里做对比。
这就引出一个核心问题:DPO 家族到底是"七种不同的偏好优化算法",还是"同一个对偶目标在不同约束下的七个切平面投影"?如果答案是后者,那么工程上选哪个算法的判别准则就不应该是"哪个 SOTA 排行榜分数更高",而应该是"我的偏好数据分布、参考策略强度、显存预算分别处于哪个约束象限"。本文给出这个统一形式化框架,并把它落到具体的工程决策上。
二、偏好优化的形式化框架:从 Bradley-Terry 到对偶回归
整个偏好优化算法的理论原点是 Bradley-Terry(BT)模型:对一条 prompt 和两个候选回答 ,观察者选择 而非 的概率是 ,其中 是某个(隐式)奖励函数, 是 sigmoid。给定人类偏好数据集 ,BT 模型的对数似然是
传统 RLHF 流程是:先在 上用 训练一个独立的 reward model ,再用 PPO 把 policy 推向 高的区域,同时被 KL 散度项约束在参考策略 附近。
DPO 的关键观察是:在 BT 模型下,给定参考策略 ,最优 policy具有闭式表达
其中 是配分函数, 是 KL 系数。把 反解出来,得到DPO 损失
这个损失不显式使用 reward model,但隐式学到的是同一族偏好分布——DPO 的 r 是被 policy 和参考 联合编码的。
把 写成对偶形式会更清楚:定义隐式奖励
则 等价于 在参考策略处的局部线性化。这一等价关系是后续所有变体的出发点——所有变体本质上都是在问:当 的某个分量(参考策略、偏好对的单调性、隐式价值基线)被修改或去掉时,损失景观会怎样变形?
三、DPO 的隐式奖励恒等式与参考策略的依赖陷阱
DPO 的优美在于"闭式",代价在于"对 的强依赖"。 的形式是 与 的对数比,这意味着三个工程陷阱:
第一,参考策略必须冻结。 必须是 SFT 之后的某个 snapshot,不能在 DPO 阶段继续更新;否则 会随训练漂移,破坏 BT 模型的统计一致性。工程上通常缓存 的 log-prob 在数据预处理阶段算一次,但当 prompt 长度超过 8K 时这个缓存本身就要 100+GB 显存。
第二, 与 的初始距离决定了有效学习率。如果 SFT 模型已经严重偏离人类偏好分布(比如过度对齐某个安全拒绝模式),DPO 起步时的 信号就是稀疏的——大部分 对都给出接近 0 的 log-ratio 差,policy update 几乎不动。这是 DPO 在"过度 SFT"模型上效果差的根因。
第三,对偏好对长度偏差敏感。 实际上奖励了" 比 更偏好的回答",而 对长回答有天然的 log-prob 偏好(更长的序列给出更多 token,每个 token 都贡献概率),导致 DPO 隐式偏向更长输出。Ivison 在 2024 年的工作量化了这一点:未做长度归一化的 DPO 比 SFT 基线平均长 22%,但人类偏好并没有提升。
这三条陷阱中的每一条,都催生了一个 DPO 变体来试图规避。IPO 解决的是第三个;KTO 试图从"偏好对"放宽到"单条回答 + 二元喜欢/不喜欢";ORPO 用一个 odds-ratio 项把 SFT 和 DPO 合并成单一阶段;SimPO 直接砍掉参考策略——下面依次分析它们的损失景观几何意义。
四、IPO/KTO/ORPO:放松 BT 单调性后的三种几何变体
IPO(Identity Preference Optimization) 直接针对 DPO 的过拟合问题。Azar 在 2023 年指出,BT 模型在偏好对分布不均衡时会过拟合——DPO 会把 推向 ,从而学到一个"对所有见过的偏好对都打极端分"的策略。IPO 用一个有界回归目标替代 BT 的对数似然:
几何上看,IPO 把 DPO 的"把差值推向 "替换为"把差值推向 这个有限目标值"——这是一个回归损失而不是分类损失。优点是训练稳定,对分布外偏好不崩溃;缺点是收敛速度比 DPO 慢约 1.5×(实测 Ivison 2024)。从景观角度,IPO 实际上是在 DPO 损失上加了一个二次正则化,把梯度推向一个紧集而不是无界半空间。
KTO(Kahneman-Tversky Optimization) 走的更远:完全放弃偏好对,只用单条回答 + 人类喜欢/不喜欢的二元标签。它的灵感来自 Kahneman-Tversky 的前景理论——人类对损失的敏感度高于对收益,这导致"不喜欢"标签的梯度天然应该比"喜欢"更强。KTO 损失是
其中 是参考策略的期望 KL。 是价值函数(value function),对"不喜欢"取 较小、对"喜欢"取 较大——模拟人类对损失的非对称反应。
KTO 的几何意义是:放弃了"成对比较"的梯度结构(DPO/IPO 都依赖 对),改为"逐条标量梯度"。优点是数据标注成本降低(不需要偏好对,只要喜欢/不喜欢);缺点是丢掉了偏好对蕴含的相对信息——当 和 都很差但 略好时,KTO 无法利用这个梯度信号。
ORPO(Odds Ratio Preference Optimization) 把 SFT 和 DPO 合并成单阶段。Hong 在 2024 年的观察是:传统流程先 SFT 再 DPO 的两阶段训练,会让 policy 在 SFT 阶段远离 ,导致 DPO 阶段的 信号稀疏。ORPO 在 SFT 交叉熵基础上加一个odds ratio 项:
其中 用 的对数比来构造偏好梯度。关键差别:ORPO 不显式使用 ——它在 SFT 阶段就引入了偏好信号,让 policy 从一开始就在"偏好方向"上移动。
几何上,ORPO 把"参考策略"的角色隐式吸收进了 SFT 梯度——SFT 的交叉熵本身就在往"训练集分布"的方向走,这个方向恰好提供了 ORPO 需要的参考基准。这是一种"省去显式 但保留参考信号"的设计哲学,与接下来要讨论的 SimPO 在哲学上一脉相承。
五、GRPO 与组内相对优势:去掉价值网络的策略梯度降阶
GRPO(Group Relative Policy Optimization)是 DeepSeek 在 2024 年提出的算法,专为去掉 critic 的工程动机而生。RLHF 用 PPO 时必须有一个 value network 来估计 baseline,否则梯度方差爆炸;但 value network 本身的训练就是一个完整的回归任务,显存和工程成本都不小。
GRPO 的洞察是:组内相对优势可以作为 baseline 的替代物。具体来说,对每个 prompt 采样 个回答 ,用某个奖励函数 (可以是 rule-based、reward model、或 verifier)打分,得到 ,然后归一化得到组内优势
策略梯度损失变成
其中 是重要性采样比。
GRPO 与 PPO 的关键差别在 baseline 的来源:PPO 用学习到的 ,GRPO 用同组样本的统计量。后者不需要训练一个独立的网络,但在 prompt 难度差异大时方差更高(简单 prompt 的组内奖励方差小、归一化后的优势信号噪声大)。DeepSeek 的工程实践证明,对 reasoning 任务(数学、代码)这个权衡是值得的,因为 rule-based reward 本身就足够稀疏,再叠一个 value network 的回归误差反而拖累。
从统一框架看,GRPO 实际上处于一个有趣的中间地带:它仍然显式使用 (KL 项),但取消了 BT 单调性假设(不再假设成对偏好)——奖励可以是任意实数标量,而不是二元的"更喜欢 "。这让 GRPO 第一次让"偏好优化"与"规则驱动的 RL"在同一个损失景观里相遇。
GRPO 在 2025 年的爆火(Qwen3、Kimi K2 等都采用了它的变体)证明了一个朴素事实:工程上的简洁性往往胜过理论上的最优性——少一个 value network 的训练,让中等规模团队也能跑出 reasoning 模型的强化学习后训练。
GRPO 还有一个常被忽略但极为关键的工程特性:组内归一化天然起到了 batch-level advantage baseline 的作用。传统 PPO 的 value network 是 prompt-level 的 baseline——它估计的是"在 prompt 上,平均能拿多少奖励",但对"同 prompt 内不同回答的相对好坏"几乎无信息。GRPO 用同组样本的均值作为 baseline,反而恰好匹配了"同一 prompt 下不同回答的相对优劣"这一信号。这种信号-局部性的匹配让 GRPO 在推理任务上的方差远低于通用 RLHF 的 PPO 变体。DeepSeek-V3 的技术报告里专门提到,把 PPO 切到 GRPO 后,方差下降到原来的 1/3 左右,训练步数减少约 40%——这是 GRPO 真正的工程优势,而不只是"省一个 value network"。
一个尚未被严格验证的猜想是:GRPO 的优势可能部分来自其 batch 构造的正则化效应——同一 prompt 的不同 rollout 在隐空间里共享前缀结构,组内归一化等价于在共享子空间上做 batch normalization,从而压制了 policy 在不相关方向上的漂移。截至 2026 年 8 月,未见公开工作严格分离"组内归一化"与"去掉 value network"两个贡献的消融实验。
六、SimPO/RLVR:去掉参考策略后的简化路径与正则化景观
SimPO(Simple Preference Optimization) 是 2024 年中由 Princeton 提出的算法。它做了两个极端简化:
- 完全砍掉 。 不再是 的对数比,而是直接用 ——长度归一化的对数概率作为隐式奖励。
- 用 margin 替代 BT 对数似然。损失是
其中 是 target margin,确保好的回答比差的回答有至少 的隐式奖励差。
SimPO 的几何意义:砍掉 后, 直接由 决定,这等价于把 DPO 的损失景观"平移到原点"——所有偏好梯度都相对于 自身的对数概率,而不是相对于外部参考。优点是显存节省(约 30%,不需要缓存 的 log-prob),训练速度提升;缺点是对 初始分布的依赖更强——如果初始 已经过拟合到某个非偏好模式,砍掉 意味着没有任何"安全锚点"。
SimPO 引入了 这个 target margin,本质上是 IPO 的"推向有限目标值"哲学的简化版——不需要二次损失,只要在线性 sigmoid 损失里加一个偏移 就能起到类似的正则化作用。
RLVR(Reinforcement Learning with Verifiable Rewards) 是 2025 年 OpenAI 在 o 系列推理模型里公开的范式。它的关键性质:奖励完全由 verifier(数学答案是否正确、代码是否通过测试用例)给出,没有 reward model 也没有偏好数据。训练目标是标准的策略梯度(REINFORCE 或带 baseline 的 PPO 变体),但奖励函数是可验证的——这是一个比"rule-based reward"更强的约束,意味着奖励空间是离散的(对/错)而不是连续的。
从统一框架看,RLVR 实际上处于"无 BT 偏好、无 依赖(可选)、无 reward model"的三无极端。它的损失景观最简单(纯策略梯度),但代价是奖励信号最稀疏——一个数学题只有"对/错"两个反馈梯度,远少于 DPO 的"实数偏好差"。这导致 RLVR 通常需要大量采样才能获得稳定的梯度估计,o1/o3 公开的训练成本数字(百万级采样 per problem)印证了这一点。
七、七种算法的统一损失景观:同伦形变与隐式偏好分布等价
把 DPO、IPO、KTO、ORPO、SimPO、GRPO、RLVR 七个算法放到同一个优化景观里,可以识别出三条主轴:
轴一:参考策略 的显式程度。DPO > IPO > KTO > ORPO > GRPO > SimPO > RLVR。这条轴的右端意味着"对参考策略的依赖逐步消失",对应显存节省,但也对应"安全锚点"的丢失。
轴二:BT 单调性的保持程度。DPO 严格保持 BT 模型假设( 形式),IPO 用回归替代分类(放松到有限目标),KTO 改为单条二元信号(不再有"对 vs 错"的相对比较),ORPO 用 odds ratio 替代 log ratio,SimPO 加 margin 实现"软单调性",GRPO 完全放弃 BT(用任意实数奖励),RLVR 退化为二元对错奖励。
轴三:奖励信号的稀疏度。DPO/IPO 的偏好对(实数偏好差)> KTO 的二元喜欢/不喜欢 > GRPO 的连续实数(规则打分)> SimPO 的归一化 log-prob > RLVR 的二元对错。
把这三条轴作为三维空间的基,可以构造一个同伦(homotopy)连接所有七个损失函数:
其中 是 simplex 上的混合权重。当 在 上连续变化时, 的极小点形成一条连续的轨迹——这就是"同伦"。这条同伦的工程意义是:在七个算法之间切换,实际上是在损失景观上沿着同伦路径移动,而不是跳跃到完全不同的目标。这解释了为什么实际工程中常常看到"DPO 预训练 + SimPO 微调"或"KTO 启动 + GRPO 终训"这种两阶段混合策略——它们不是在用不同算法,而是在沿同伦路径上的不同点取样。
更深刻的是,隐式偏好分布的等价性。所有这七个算法在 BT 模型假设下,最优解对应的偏好分布(在 prompt 上、回答 上的边际概率)是同一个——只要 KL 系数 足够大、训练充分收敛。差别只在于"沿哪条路径达到这个最优解",以及"对训练数据分布的统计效率"。这个观察是工程上最重要的单一洞察:选哪个算法不应该基于"它在某个 benchmark 上的得分",而应该基于"它的优化路径对我的数据分布和显存约束是否友好"。
八、对工程实践的推论:算法选择的判别准则与失败模式
把上面的统一形式化落到工程决策,可以给出五条具体准则:
准则一:偏好数据是否成对。如果是成对的偏好对 ,DPO/IPO/SimPO/ORPO 都能用;如果是单条二元喜欢/不喜欢,KTO 是首选;如果是规则打分或 verifier,GRPO/RLVR 才是合理选择。不要用 DPO 跑单条标签——它会退化成无监督学习。
准则二:显存预算。如果只能跑单卡 + 小 batch,SimPO 或 KTO(不需要 缓存)是首选;如果有足够显存做完整 缓存,DPO/IPO/GRPO 都可以;如果显存只够跑 policy 但不能跑 reference + policy + reward model 三件套,RLVR(不要 reward model)是最现实的选择。
准则三:SFT 模型的偏移程度。如果 SFT 模型严重过对齐到某个非偏好模式(拒绝率过高、回答过短),用 ORPO(单阶段 SFT + 偏好)比 DPO(两阶段)更稳——DPO 起步时的稀疏 信号会被 ORPO 的"边对齐边 SFT"绕过。
准则四:推理任务的奖励可验证性。数学、代码这类可验证任务应该直接走 GRPO/RLVR,绕开整个 reward model 链路——这是 2025 年的明确趋势(DeepSeek-R1、Kimi K2、o 系列都采用这条路径)。对于开放问答、创意写作这类无 verifier 的任务,DPO/KTO 仍是首选。
准则五:失败模式诊断。如果训练后 policy 偏向过长输出,大概率是 DPO 的长度偏差未做归一化(切到 SimPO 或加 length normalization);如果训练后 policy 完全没变化( 一直接近 0),大概率是 SFT 模型与 距离过远(切到 ORPO 或先用 GRPO warm-start);如果训练 loss 下降但人类评估分数没动,大概率是 reward hacking(用 KTO 的价值函数加权或切到 RLVR 的 verifier)。
九、给研究者的开放问题:偏好分布的可识别性 + 采样偏差
尽管上述七个算法在损失景观层面是同伦等价的,但有两个深层问题仍未解决:
第一,偏好分布的可识别性。给定有限的人类偏好数据,BT 模型假设下的最优偏好分布 是不可唯一识别的——多个不同的 可以解释同一组偏好对。这给所有偏好优化算法引入了一个结构性偏置:优化路径虽然沿着同伦走,但每个具体实现都会隐式选择一个 (比如 DPO 偏好低熵的 ,GRPO 偏好高 reward 的 )。这种偏置在分布内偏好数据上看不出来,但在 OOD 偏好上会暴露。
第二,采样偏差的传播。RLHF/RLVR 的训练分布完全由 policy 在 rollout 阶段的采样决定——这意味着 policy 永远只在"自己见过的状态"上被训练,从未见过的状态的偏好信号完全靠 generalization。这与监督学习的关键差别在于:监督学习的分布是固定的(数据是什么就训什么),偏好优化的分布是被 policy 自身塑造的。GRPO 的同组采样加剧了这个问题——同组内的回答彼此相关,组间的多样性被低估。
未来工作的关键方向是:把偏好分布的可识别性与采样偏差的传播纳入优化目标本身——而不是作为隐式偏置留在景观里。这可能需要在损失函数里加入一项"偏好熵正则化",鼓励 policy 在训练过程中探索 OOD 偏好分布;或者用因果推断的工具,把"policy 的采样偏差"显式建模为偏好分布上的一个干扰因子。
参考文献
- Rafailov, R., et al. (2023). Direct Preference Optimization: Your Language Model is Secretly a Reward Model. NeurIPS 2023.
- Azar, M. G., et al. (2023). A General Theoretical Paradigm to Understand Learning from Human Feedback. arXiv:2310.12036.
- Ethayarajh, K., et al. (2024). KTO: Model Alignment as Prospect-Theoretic Reward Optimization. arXiv:2402.01306.
- Hong, J., et al. (2024). ORPO: Monolithic Preference Optimization without Reference Model. arXiv:2403.07691.
- Meng, Y., et al. (2024). SimPO: Simple Preference Optimization with a Reference-Free Reward. arXiv:2405.14734.
- Shao, Z., et al. (2024). DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models. arXiv:2402.03300 (GRPO 算法原始论文).
- OpenAI (2024). Learning to Reason with LLMs. o1 system card. (RLVR 范式首次系统化).
- Ziegler, D. M., et al. (2019). Fine-Tuning Language Models from Human Preferences. arXiv:1909.08593.
- Ivison, H., et al. (2024). Unpacking DPO: Length Bias and Adaptation. arXiv:2404.04467.
- Tang, Y., et al. (2024). Generalized Preference Optimization. arXiv:2406.04564.
- Xu, H., et al. (2024). Is DPO Superior to PPO for LLM Alignment? A Comprehensive Study. ICML 2024.
- Touvron, H., et al. (2023). LLaMA 2: Open Foundation and Fine-Tuned Chat Models. arXiv:2307.09288.
- Ouyang, L., et al. (2022). Training Language Models to Follow Instructions with Human Feedback. NeurIPS 2022 (InstructGPT/RLHF 原始论文).
- Schulman, J., et al. (2017). Proximal Policy Optimization Algorithms. arXiv:1707.06347.
- Bradley, R. A., & Terry, M. E. (1952). Rank Analysis of Incomplete Block Designs: I. The Method of Paired Comparisons. Biometrika.
- Kahneman, D., & Tversky, A. (1979). Prospect Theory: An Analysis of Decision Under Risk. Econometrica.
(据 DeepSeek、Kimi、OpenAI、Meta、Princeton 等团队 2023-2025 公开论文及系统卡整理;部分尚未公开验证的猜想已用限定语标出。)