KTO:把模型对齐看成「前景理论」优化 —— 阅读笔记

KTO:把模型对齐看成「前景理论」优化 —— 阅读笔记

笔记日期: 2026-05-19 笔记作者: Zhongzhu Zhou 论文标题: KTO: Model Alignment as Prospect Theoretic Optimization 作者: Kawin Ethayarajh、Winnie Xu、Niklas Muennighoff、Dan Jurafsky、Douwe Kiela(Stanford / Contextual AI) arXiv: 2402.01306v4,最后修订 2024-11-19;发表于 ICML 2024

一句话总结

KTO 想回答一个看上去很朴素的问题:对齐大语言模型时,我们真的非要”成对的偏好数据”不可吗?

到 2024 年为止,主流答案是”是”。RLHF(Christiano 那一脉)要先训一个奖励模型,输入就是成对偏好 (yw ≻ yl | x);DPO 把两阶段流程压成一个交叉熵风格的损失,但仍然吃成对数据。之后流行的几乎每一种对齐目标——IPO、ORPO、SimPO——也都长一个样:一个提示配两条回答,一胜一负。

KTO 从两个方向同时挑战这个共识。

第一个方向是理论上的重读。作者把 DPO 和 PPO-Clip 放到 Kahneman 和 Tversky 的前景理论(prospect theory)框架下,也就是经济学里用来解释”人在面对不确定收益时如何评估风险”的那套工具。他们论证:DPO 与 PPO-Clip 在数学结构上隐含了一种人类感知价值函数——非递减、在收益侧凹、在损失侧通常更陡的曲线。作者把所有具备这种结构的损失统称为Human-Aware Losses(HALO),并证明 DPO 和 offline PPO-Clip 都属于 HALO,而 SLiC、Conditional SFT(CSFT)这类常被对照的方法都不属于 HALO。然后他们在 Pythia-1.4B 到 Llama-30B 的统一实验里指出:在 13B 之后,HALO 系列显著地、稳定地比非 HALO 系列好。

第二个方向是工程上的产出。既然 DPO 之所以能赢,是因为它的损失”形状对”,那就完全可以把”成对偏好”的数据要求拿掉,只保留这种形状。作者沿着 Kahneman-Tversky 价值函数的形式直接推出一个新的 HALO,叫做 Kahneman-Tversky Optimization(KTO)。KTO 只需要二元信号:这一条 (x, y) 对来说,是”好的”(desirable)还是”不好的”(undesirable)?不需要成对、不需要排名、也不再去最大化”偏好的对数似然”。最关键的结论是:KTO 在 1B 到 30B 全尺度区间内追平或超过 DPO,而且在 Zephyr-β-SFT + UltraFeedback 这个组合上,仅仅把 DPO 换成 KTO,GSM8K 就涨了 13.5 个百分点(40.0 → 53.5)。在 1:10 极不平衡的数据下,KTO 也能靠 λDλU 两个超参把方向板回来,依然不输给在完整数据上训的 DPO。

我读完最大的收获是:KTO 把”对齐”这件事重新框成了**“挑选合适的归纳偏置”**问题,而不是单纯的”用怎样的数据”问题。DPO 之所以能成功,不只是因为偏好数据信息丰富,更是因为 DPO 的损失函数刚好长成了一个 human-aware 的形状。一旦我们把这个性质单独拎出来研究,就能用更便宜的反馈数据复刻 DPO 的大部分行为。这件事对工业界其实意义不小——线上系统里随处可见的”赞 / 踩”、“有用 / 没用”按钮,比那些精细标注的偏好对要多几个数量级。KTO 把这些原本被丢弃的二元信号变成了一等公民。

1. 前置知识

这一节梳理读 KTO 之前最好预先掌握的几块基础。我尽量把数学压到最少,但仍然要写到能直接读懂第 3 节推导的程度。

1.1 经典三阶段对齐流水线(RLHF + DPO)

到 2024 年,指令模型的对齐流程已经基本定型为三段:

预训练  →  监督微调(SFT)  →  偏好优化
  π0           πref               πθ(已对齐)

第三步是”对齐真正发生”的地方,主流又分两条路线。

RLHF(Christiano 2017;Ouyang 2022)。 先从一份偏好对数据集 D = {(x, yw, yl)} 里训练奖励模型 rφ(x, y)。假设满足 Bradley-Terry 模型,

p*(yw ≻ yl | x) = σ(r*(x, yw) − r*(x, yl))

的训练目标就是最小化偏好对的负对数似然 LR(rφ) = −E[log σ(rφ(x, yw) − rφ(x, yl))]。拿到 后,再用 PPO 优化策略 πθ,同时加上 KL 正则把它拉住,不让它远离参考策略 πref

E_{x∈D, y∼πθ}[rφ(x, y)] − β · KL(πθ(y|x) ∥ πref(y|x))

这套办法能跑通,但它出名地难调:奖励作弊、分布漂移、价值网络不稳、采样速度慢、整个 RL 链路本身就工程复杂。

DPO(Rafailov 2023)。 Rafailov 等人发现:在相同的 Bradley-Terry 假设和相同的 KL-约束 RL 目标下,最优策略其实有一个闭式重参数化:r*(x, y) = β · log(π*(y|x) / πref(y|x)) + β · log Z(x)。把这个表达式代回到 Bradley-Terry 的对数似然,就得到 DPO 损失。它把整个 RLHF 流程压缩成一个交叉熵风格的目标:

LDPO = −E[log σ(β · log(πθ(yw|x)/πref(yw|x)) − β · log(πθ(yl|x)/πref(yl|x)))]

DPO 之后迅速成为社区默认的对齐基线:稳定、容易实现、在大多数评测上能复现 RLHF 的行为,工程成本只有 RLHF 的一小部分。

但 RLHF 和 DPO 都还吃成对偏好。这才是真正的瓶颈。

1.2 成对偏好为什么贵

收集 (x, yw, yl) 三元组的过程要求标注员对同一个提示比较两条回答。这件事至少有三处难:

  1. 标注员必须把两条回答都仔细读完。
  2. 对主观、复杂的提示,不同标注员之间的”谁更好”往往不一致,且常常出现**不可传递(intransitive)**现象——A 胜 B、B 胜 C,但 C 又胜 A。一些论文给出的内部不一致率高达 ~30%。
  3. 大多数线上反馈天然不是成对的。真实用户会点赞、点踩、收藏、放弃,但极少给出”对同一个问题再写一条让我比较”。

KTO 想做的就是把这层障碍移除。如果对齐可以直接消化”好 / 坏”二元标签,那么每条提示就只占用一个样本,而不是一个对,理论上数据规模直接翻倍;更重要的是,能把工业界几乎免费的反馈信号直接接进训练流程。

1.3 前景理论 60 秒速览

Kahneman 和 Tversky(1979, 1992)的前景理论是用来解释人在面对货币赌局时为什么不像经典效用最大化理论那样行为。对 KTO 来说,关键有两点:

  • 参考点依赖。 人评估一个结果时,不是看绝对数值,而是看它相对于某个参考点 z0(当前财富、预期、最近经历)是赚还是亏。同样得到 60 块,当参考点是 50 时令人欣喜,当参考点是 80 时则令人失望。
  • 损失厌恶 + 边际敏感度递减。 同等大小下,损失带来的痛感比收益的快感更强(经典研究中约为 2.25 倍);不论收益侧还是损失侧,随着幅度增大,“再多一点”带来的边际感受都在递减。Tversky-Kahneman 把这个直觉写成了一个分段函数:

v(z; λ, α, z0) = (z − z0)^α (当 z ≥ z0 时) v(z; λ, α, z0) = −λ · (z0 − z)^α (当 z < z0 时)

经典实验给出的中位数参数是 α ≈ 0.88λ ≈ 2.25

这条曲线很出名:它是一条穿过原点(z = z0 处)的 S 形曲线,收益侧凹,损失侧凸且更陡。KTO 在工程上为了数值稳定性会用 logistic 函数替换 (z − z0)^α,但整体形状——参考点依赖、收益凹、损失更陡——被完整继承

1.4 这一切跟 LLM 有什么关系?

桥梁就在于一个”隐含奖励”。任何 RLHF 风格的方法事实上都给每条生成 (x, y) 隐含地打了一个分数。如果 πθ 是对齐后的策略,πref 是参考策略,定义

rθ(x, y) = β · log(πθ(y|x) / πref(y|x))

这就是 DPO 论文里的对数比奖励。πθπref 更愿意输出 y 时为正,反之为负。 在 LLM 设定下的角色,跟 Kahneman-Tversky 实验里的”金额”完全对应。如果我们把它代入一个 K-T 形状的价值函数(再减去一个合适的参考点),就得到了”从人的视角看这条生成的感知价值”。这就是 HALO 定义的起点。

2. 这篇论文到底干了什么

论文的三条贡献彼此连贯。

(A) 一个抽象框架:HALO。 一个损失函数若能写成

f(πθ, πref) = E_{x,y∼D}[ ax,y · v( rθ(x, y) − E_Q[rθ(x, y')] ) ] + CD

并且满足:v 处处非递减、在正区间凹;Qy' 的某个参考分布;ax,y ∈ {−1, +1} 表示该样本是”好 / 坏”;CD 是与数据有关的常数;那它就是一个 HALO。两个结构性要素特别重要:

  1. 奖励是”相对的”——要减掉一个在参考分布下的期望,这正对应前景理论里的参考点。
  2. 价值函数 v 在收益侧凹——这编码了”从’还行’到’好‘“比”从’好’到’非常好‘“感受更明显的人类直觉。

作者证明(Theorem 3.5)DPO 与 offline PPO-Clip 都是 HALO;CSFT、SLiC 都不是,主要是因为它们没有依赖 πref 的参考点。

(B) 一个经验性主张:HALO 在大模型上系统性地胜过非 HALO。 在 Figure 2 中,作者对 Pythia-{1.4B, 2.8B, 6.9B, 12B} 与 Llama-{7B, 13B, 30B} 做了一次完全控制实验:相同数据、相同流程,只换损失。评测指标是 GPT-4-0613 判断”对齐模型 vs SFT 目标”的胜率。结论:在 7B 以下,HALO 与非 HALO 没有显著差异;从 13B 开始,HALO 显著占优(多重比较校正后 p < 0.05),且只有 HALO 对齐的 Llama-{13B, 30B} 能跨过 50% 这条门槛。更出乎意料的是:作者所谓 “offline PPO” baseline(使用 dummy +1/-1 奖励、没有学过的奖励模型、几乎没有偏好结构)在 30B 之下竟然能匹敌 DPO。

最后这一条是诱发 KTO 设计的关键观察——既然连最朴素的 HALO(dummy 奖励 + PPO 损失)都能逼近 DPO,那 DPO 的关键应该不在”偏好数据”上,而在损失自身的归纳偏置上。

(C) 一个新的 HALO:KTO。 沿着前景理论一路推到底,作者设计出 KTO:

  • 每条 (x, y) 只需要二元的”好 / 坏”标签;
  • 价值函数选成 logistic,在收益和损失两侧分别由 λDλU 控制斜率;
  • 参考点取 KL(πθ ∥ πref),并用一个”打乱微批次”的技巧避开从 πθ 采样的高昂代价;
  • 不需要任何成对结构

Figure 3 显示,从 1B 到 30B Llama 全谱,SFT+KTO 与 SFT+DPO 旗鼓相当;而单独 KTO 在 7B 和 30B 上显著优于单独 DPO(p < 0.01)。Table 2 显示,对 Zephyr-β-SFT 在 UltraFeedback 上做对齐,只把 DPO 换成 KTO,GSM8K 直接从 40.0 飙到 53.5——这是一个非常夸张的提升。Figure 5 显示,当人为把 desirable 数据砍到 10%(1:10 极不平衡),KTO 仍能匹敌全量 DPO。这种正负样本严重不平衡的场景,恰恰是 DPO 没法自然处理的。

合在一起,论文的核心立场就是:正确的归纳偏置比数据格式更重要。KTO 是把这个论点贯彻到底的产物。

3. 方法细节

3.1 HALO 的”模板”

把 HALO 的形式抽象出来看,结构很清楚:

f(πθ, πref) =  E_{x,y∼D}[ sign(x,y) · v( implied_reward(x,y) − reference_point(x) ) ]  +  常数

每一块都值得拆开看。

  • implied_reward(x, y) = β · log(πθ(y|x) / πref(y|x))。这是大家熟悉的”对数比奖励”。去掉 β 后,就是 DPO 用的同一个量。
  • reference_point(x) = E_{y'∼Q(·|x)}[ implied_reward(x, y') ]。在某个参考分布 Q 下的期望奖励。Q 的选择是不同方法之间的差异点——DPO 用”配对的失败回答”作为单点估计,PPO-Clip 用”每个 token 的平均”,而 KTO 用”πθπref 之间的 KL”。
  • v 是价值函数。它必须非递减、在收益侧凹;但不一定要在损失侧凸——因为现实中真的有少数人在损失侧也是风险厌恶的,整体表现出处处凹。
  • sign(x, y) ∈ {−1, +1} 区分”该样本是希望被强化还是被压低”。

DPO 套进这个模板:v = log σQ 取”配对的失败回答”(单点估计)、ywsign = +1ylsign = −1。CSFT 套不进,因为它根本没有跟 πref 相关的参考点。

3.2 KTO 的损失函数

KTO 把 Tversky-Kahneman 那个 (z − z0)^α 形式换成 logistic 函数(数值更稳):

rθ(x, y)  =  log(πθ(y|x) / πref(y|x))

z0(x)     =  KL(πθ(y'|x) ∥ πref(y'|x))     // 参考点

v(x, y)   =  λD · σ( β · (rθ(x, y) − z0) )       当 y 是 desirable
v(x, y)   =  λU · σ( β · (z0 − rθ(x, y)) )       当 y 是 undesirable

LKTO(πθ, πref) = E_{x,y∼D} [ λy − v(x, y) ]

这个结构有三个细节值得强调。

  1. sigmoid σ 提供了前景理论里的曲线形状。 σ 在上升段是凹的(收益侧”递减敏感度”),在下降段是凸的(损失侧”递减敏感度”,但更陡),并且 σ ∈ [0, 1] 整体有界——这意味着 KTO 不会被”训练分布之外”的极端样本拽得太远,相对那些用无界对数似然的方法,训练更稳。
  2. β 控制风险厌恶强度。 越小的 β,sigmoid 在 z0 附近越陡,模型对参考点附近奖励变化的敏感度越高——好比”更怕亏一点”。越大的 β 越平缓,能容忍更大的奖励抖动。
  3. λDλU 控制损失厌恶强度。 它们分别缩放收益与损失两侧的斜率。如果数据有 1:10 的不平衡,可以通过把 λD 抬到 10–15、λU = 1 来纠偏。论文经验性地建议:λD · nD / (λU · nU) ∈ [1, 3/2],对绝大多数评测来说,“鼓励好回答”比”惩罚坏回答”更划算。

3.3 KL 参考点的”换桶”小技巧

KTO 工程上最棘手的一处是估计 z0 = KL(πθ(y'|x) ∥ πref(y'|x))。最诚实的做法是从 πθ 采样新的 y',但在 7B-30B 模型上每步都重新生成几条文本,正是 RLHF 一直在花大价钱做、DPO 一直想避免的事情。

KTO 用了一个打乱微批次的妙招:与其重新采,把同一微批次里现有的回答错位配对,让样本 i 的提示去配对样本 j ≠ i 的回答。对长度为 m 的微批次,取 j = (i + 1) mod m

ẑ0  =  max( 0,  (1/m) · Σ_{i<m}  log( πθ(yj | xi) / πref(yj | xi) ) )

这是一个有偏但低方差的估计——yj 是真实的模型回答,只是被分配到了不同的提示。偏差通常是正向的(这也是为什么要 max(0, ·) 截断),作者论证人类大脑做参考点估计也会用”可得性启发式(availability heuristic)“,本来就不是无偏的,因此这个偏差并不致命。关键点是梯度不流过 ẑ0:它只参与决定 sigmoid 的饱和点,不参与反传。正因为如此,KTO 才能在大模型上跑得动,不必额外为参考点付一次采样成本。

有一个特殊情形:当 KTO 紧跟 SFT、且参考策略 πref 就是 SFT 后的模型、且 desirable 集合本身就是 SFT 训练所用样本时,ẑ0 → 0,公式直接简化,每个微批次还能省一次前向。当 KTO 不接 SFT、或者 SFT 和 KTO 用的不是同一份数据时,则必须显式估计 ẑ0

3.4 KTO 接受什么形态的数据

总共三种。

  1. 天生的二元反馈。 每条 (x, y) 自带 desirable / undesirable 标签。最干净的情形。
  2. 由偏好对转换。(x, yw, yl) 拆成两条二元样本:(x, yw) desirable、(x, yl) undesirable。n 对偏好就变成 2n 条二元样本。
  3. One-y-per-x。 干脆每条提示只保留 ywyl 中的一条,彻底破坏配对结构。

Table 3 在 OpenAssistant + Mistral-7B 上专门测了 one-y-per-x:数据规模直接砍掉 72%,但 KTO 的胜率依然超过 DPO 和官方 Mistral-7B-Instruct。这是我目前看过的、证明”成对结构其实没那么关键”的最强证据。

3.5 等价类奖励与最差情形保证

§4.4 是论文里很短但很重要的理论段落。

Proposition 4.1(极端奖励梯度消失)。rθ(x, y) → ±∞,KTO 在该样本上的梯度趋于零。这与有界的 σ 形状价值函数一起,意味着 KTO 会自动忽略那些”隐含奖励特别大、特别小”的样本——它们或者过于简单、或者很可能是噪声。现实里的偏好数据本来就含大量噪声(Hoeffler & Ariely 1999),所以这种”内建的抗噪”是优点;缺点是 KTO 可能对”难学但关键”的复杂分布欠拟合,论文给出的建议是降低 β、训更多 epoch

Theorem 4.3(不可传递偏好下的最差情形优势)。 假设对某个 (x, ya, yb),标注员里有 p ∈ (0.5, 1) 比例偏好 ya(1 − p) 比例偏好 yb。当 p 足够小、πref 又不太对齐时,最优 DPO 策略反而可能把多数人不喜欢的 yb 放在更高概率上。而损失对称的 KTO(λD = λU)的最优策略一定会输出 ya。这是一个出人意料的强结论:它说明 KTO 在”嘈杂、不可传递”的真实人类反馈下,有可证明的最差情形优势

这两条理论结合起来,给出了选用 KTO 的最干净理由:真实数据本来就嘈杂、不可传递;KTO 对此类数据的鲁棒性可证比 DPO 更好。 Zephyr 实验里 GSM8K 涨 13.5 个点这个结果,跟这个理论解释是一致的——UltraFeedback 本身就以”标注员意见不统一”出名。

4. 实验设置

4.1 模型矩阵

  • Pythia 系列:1.4B、2.8B、6.9B、12B。用于 §3.3 的”HALO vs 非 HALO”统一扫描。
  • Llama 系列:7B、13B、30B。同一扫描,也是 §4.3 KTO-vs-DPO 头条实验的主战场。
  • Mistral-7B 与 Zephyr-β-SFT:用于 UltraFeedback 对齐与 one-y-per-x 消融。
  • Llama-3 8B 与 Qwen2.5 3B Instruct:Table 1 给出更新一代基座模型上的推荐超参。

跨 Pythia 与 Llama 两个家族扫描,让”HALO vs 非 HALO”这件事更加可信——结论不来自单一架构的特性。

4.2 数据

  • Anthropic-HH(Ganguli 2022)OpenAssistant / OASST(Köpf 2023)SHP(Ethayarajh 2022):用于统一扫描。三个都是偏好数据集,但 KTO 把每条 yw 视为 desirable、yl 视为 undesirable,等于把样本数翻倍。
  • UltraFeedback(Cui 2023):用于 KTO-vs-DPO 续作。它是 2024 年代标准的、较大较难的偏好数据集。
  • SFT 阶段的目标序列取自 {yw}

4.3 基线

  • CSFT:Conditional SFT,prefix 控制 token。最简单的非 HALO 基线。
  • SLiC:最大间隔损失 + 语言建模正则,非 HALO。
  • DPO:2024 年的最强 HALO 基线。
  • PPO (offline):作者简化版的离线 PPO,使用 dummy +1/-1 奖励,是 HALO。
  • ORPO:较新的 reference-free 方法,专门用于不带 πref 的对比实验。

4.4 评测

两条评测线并行。

  • GPT-4 判断的胜率(对 SFT 目标)。2024 年代主流的 LLM-as-a-judge 指标。论文在附录 D 中验证 GPT-4 与人类标注一致。
  • 闭式评测:MMLU(0-shot)、GSM8K(8-shot CoT)、HumanEval(0-shot)、BBH(3-shot CoT)。完全是精确匹配或 pass@1,没有 judge 参与。

这两类指标一起跑很关键——胜率捕捉”哪种回答更让人满意”的开放式判断,闭式评测则验证对齐改造是否还保留了硬任务能力,避免”对齐变好但能力变差”的隐形回归。

4.5 训练与超参

主实验都用 AdamW + 有效批大小 32,关键推荐如下(Table 1):

模型方法LRβλD/λU
Llama-3 8BSFT+KTO5e-60.051/1
Llama-3 8B直接 KTO5e-60.101/1
Qwen2.5 3B InstructSFT+KTO5e-60.101/1
Qwen2.5 3B Instruct直接 KTO5e-60.501/1

两点值得记住。

  1. KTO 的学习率大约是 DPO 的 2× 到 10×。DPO 默认是 5e-7,KTO 推荐 5e-6。原因很直观:rθ − z0 的平均量级比 DPO 里 β·log(πθ(yw|x)/πref(yw|x)) − β·log(πθ(yl|x)/πref(yl|x)) 要小,要在同样步数内做出非平凡更新,必须用更大的 LR 补回来。
  2. β 在”先 SFT 再 KTO”时更小(更陡、更怕亏一点);在”直接对 base 跑 KTO”时更大。论文显式建议:post-SFT KTO 用 β ∈ [0.01, 0.10],直接 KTO 用 β ∈ [0.10, 1.00]

4.6 不平衡实验

最干净的一组实验是有意制造不平衡:从 1:1 一路把 desirable 数据丢到 1:10。每一个比率下,按照 λD·nD / (λU·nU) ∈ [1, 3/2]λDλU。Figure 5 显示:只保留 10% 的 desirable 样本时,KTO 仍能匹敌甚至胜过在全量数据上训练的 DPO。这一组实验对工业部署最有意义——线上数据几乎一定是不平衡的。

5. 结果与解读

5.1 大模型上 HALO 显著优于非 HALO(Figure 2)

第一张大结果图来自统一扫描。Y 轴是相对 50% 的胜率提升,judge 是 GPT-4-0613。可看出:

  • 13B 以下,HALO(DPO、offline PPO)和非 HALO(CSFT、SLiC)几乎打平。
  • 从 13B 开始,HALO 显著占优;只有 HALO 对齐的 Llama-{13B, 30B} 能跨过 50% 这条门槛。
  • 即便是用 dummy +1/-1 奖励的 offline PPO,在 30B 之下也能逼近 DPO,没有任何学过的奖励模型。

我自己的读法是:论文里隐含的”对齐相变”是真实的,而且驱动它的是损失家族,不是数据形态。小模型容量不够,谁的归纳偏置都吃不掉;大到一定规模后,模型才能真正利用 HALO 的偏置。

5.2 KTO 追平甚至超越 DPO(Figure 3、Table 2)

更激进的发现来自 KTO 主实验。同样数据、同样算力下:

  • Llama 1B–30B 全谱,KTO 与 DPO 旗鼓相当;在 7B 和 30B 上显著优于 DPO(p < 0.01)。
  • 在 Zephyr-β-SFT + UltraFeedback(Table 2 顶部) 上,KTO 在所有闭式评测上都不输甚至超过 DPO;其中 GSM8K 从 40.0 涨到 53.5,绝对提升 13.5 个百分点——对数学推理来说这是非常大的跳跃。
  • KTO + one-y-per-x(Table 3) 在 Mistral-7B + OpenAssistant 上把数据砍到 28%,胜率仍然胜过 DPO 与官方 Mistral-7B-Instruct。

Zephyr-UltraFeedback 那组结果应该比通常被引用得更频繁。UltraFeedback 是偏好数据集;把它转成 KTO 的二元标签其实丢掉了配对结构。即便如此,KTO 在 GSM8K 上还能比 DPO 高出 13.5 个点,说明配对结构在嘈杂偏好数据上并没有真正帮上忙,甚至有时候是反过来在拖后腿

5.3 没有 SFT,KTO 也能跑(Figure 4)

一个有意思的发现:在 Llama-13B 和 Llama-30B 规模上,不经过 SFT 直接做 KTO也能基本追平 SFT+KTO。其它方法比如 DPO 在没有 SFT 的设置下会”崩”——开始啰嗦、自言自语、回答长度爆炸式增长。KTO 即使不接 SFT,平均回答长度也保持稳定。这对那些没有干净 SFT 数据的项目意义重大——SFT 阶段本来就贵,到了一定规模能省就省。

5.4 不平衡情况下的鲁棒性(Figure 5)

这是 KTO 数据效率优势的最干净证明:把 desirable 数据丢到 10%,相应抬高 λD,KTO 仍能匹敌在全量数据上训的 DPO。线上数据几乎必然是不平衡的——产品里”负反馈”和”正反馈”哪一头多,往往跟产品形态强相关,但很少 50:50。KTO 在这种情形下不需要架构改造,只调两个标量即可。

5.5 消融证实每个设计都有用(Table 2 中下部)

  • 去掉参考点 z0 → BBH −3.6、GSM8K −4.0。这一去就不再是 HALO,效果立刻退化。
  • 把价值函数换成处处凹的 −log σ → BBH −9.4、GSM8K −11.0。S 形真的关键。
  • 价值函数改成线性 v(·) = ·(风险中性) → BBH 直接崩到 6.1。前景理论的曲率不是装饰。
  • 去掉 πref → 内存友好版能跑但落后于标准 KTO。
  • β 扫描β = 0.01 时 GSM8K 更好但 BBH 稍差;β = 0.5 时反过来。
  • λD 扫描:把 desirable 权重压到 0.5 直接让 BBH 崩;抬到 2.0 也比默认 1.0 差。

这一组消融与前景理论故事完全吻合:去掉参考点、去掉 S 曲率、变成风险中性,每一种破坏都掉点。

5.6 我读完最在意的两件事

第一件,dummy +1/-1 奖励的 offline PPO在 30B 之下追平 DPO,是全文最反直觉的一行。它是一个简洁的反证:如果”奖励学习”真的是 RLHF 的灵魂,这条 baseline 不可能跑得起来。它跑得起来,恰恰说明灵魂在别处——在损失的形状、在 KL 约束、在隐含的参考点结构。

第二件,**噪声鲁棒性定理(Theorem 4.3)**应该比头条数字更被重视。它从数学上解释了 KTO 为什么应该在真实数据上比 DPO 更稳——真实数据里就是有不可传递的偏好。UltraFeedback 上 GSM8K 涨 13.5 点这件事,与这条定理是同一个故事。

6. 局限与边界条件

6.1 作者明确承认的

  • KTO 可能欠拟合。 Proposition 4.1 说极端奖励处梯度为零,意味着 KTO 会”无视”那些隐含奖励大到离谱的样本——这些样本既可能是太容易、也可能是太脏。对于需要学会”低概率但关键”复杂行为的任务,这一点会影响上限。缓解办法:降 β、训更多 epoch。
  • 参考点估计是有偏的。 “打乱微批次”的 ẑ0 是一个正偏估计。作者类比”人类的可得性启发式”为这个偏差辩护,但仍然是已知误差来源。
  • K-T 价值函数本来是为货币赌局拟合的。 用它来近似”人对文本好坏的感知”未必合理。论文显式邀请未来研究专门为文本领域设计的价值函数与参考分布。
  • HALO 不是一统天下的最优解。 论文从未声称 KTO 是普适最优,只声称它是从一条干净理论先验里推出来的、有竞争力的 HALO。

6.2 我自己看到、作者没正面强调的

  • 没有原生的多轮信用分配。 KTO 对一整条 (x, y) 打一个二元标签,长对话里好坏掺杂的多步推理都被压成”整体好”或”整体坏”。这对短回答没问题,但对长 agent rollout 信息丢失严重。后来出现的过程奖励模型(process reward models)与 step-level KTO 变体都是在补这一块。
  • 不平衡纠偏其实有点临时。 λD·nD / (λU·nU) ∈ [1, 3/2] 是经验给出的;对毒性预防、拒答鲁棒性等任务,论文承认可能需要 λU·nU > λD·nD,但没有从第一性原理推出指导。
  • KL 参考点只是一种选择。 PPO-Clip 用 per-token 平均、DPO 用配对单样本、KTO 用 KL(πθ ∥ πref)。这三者都对,但谁更合适并没有定论。这本质上是 HALO 框架里的一个自由度,需要更多工作去刻画。
  • πref 质量的敏感性。 跟 DPO 一样,KTO 比较 πθπref。如果 πref 不好(基模太歪、SFT 太弱、分布漂移),整个对齐信号都会受影响。论文没有干净刻画这条依赖。
  • 评测覆盖偏窄。 GSM8K、BBH、MMLU 比较扎实,HumanEval 还行;但代码、安全、长上下文等场景没有充分覆盖。对 2024 年代”通用聊天指令模型”足够,但对更宽口径的对齐任务还需要后续工作补齐。

6.3 什么时候应该用 KTO

  • 偏好数据很干净、低噪、几乎不矛盾(典型的专家标注成对排序)。KTO 的噪声鲁棒性优势失去,DPO 对配对结构利用得更紧,反而可能赢。可以小规模验证集上扫一下确认。
  • 需要在长回答里做细粒度信用分配。KTO 的序列级标签粒度太粗,需要走过程奖励或 step-level 目标。
  • 完全没有 πref 也没有 SFT,且模型尺度不大。memory-efficient 的无 πref KTO 变体存在,但落后于标准 KTO。

6.4 什么时候 KTO 是天然首选

  • 反馈本身就是二元——线上点赞 / 点踩、有用性按钮、放弃事件等遥测信号。KTO 的最干净使用场景。
  • 数据严重不平衡(如 1:10)。靠 λD / λU 就能处理,不用动模型结构。
  • 怀疑标注员意见矛盾、不可传递。Theorem 4.3 直接覆盖这一情形。

7. 复现性与工程实践

7.1 代码

作者在 github.com/ContextualAI/HALOs 开源了实现,并在 HuggingFace 上发布了对齐后的检查点。PyTorch 实现,能直接接 HuggingFace trl。需要指出的是:KTO 现在已经是 HuggingFace TRL 库的一等公民KTOTrainer),大多数生产用户其实是从 TRL 拉,而不是从原仓库拉。

7.2 算力需求

整套实验的最大规模到 Llama-30B、有效批 32、AdamW。粗略估算(与 DPO 相当):

  • 1B-7B:1-4 张 H100 / A100 80GB,UltraFeedback 量级数据一个 epoch 通常几小时到一天。
  • 13B:4-8 张 H100/A100,半天到一天一个 epoch。
  • 30B:8+ 张 A100/H100 + FSDP,一次完整对齐通常需要几天。

KTO 在显存占用上跟 DPO 是同一档(都要存 πθπref)。memory-efficient 不带 πref 的版本能省下大约一半激活内存,但要付出几个点的评测损失。

7.3 实战建议

  • 直接从 Table 1 推荐的超参起步:LR 5e-6(AdamW),post-SFT 时 β = 0.05–0.10,均衡数据时 λD = λU = 1
  • 不接 SFT 时,一定要显式估计 ẑ0;接 SFT 且用同一份数据时,可以把 ẑ0 = 0
  • 训前先看类不平衡比例。如果 desirable:undesirable 远离 1:1,先试 λD = nU / nD(保持 λU = 1),再在 [1, 3/2] 的比值带内微调。
  • 关注回答长度漂移。DPO 不接 SFT 时长度会爆炸;KTO 不会。若 KTO 训练时长度仍在涨,大概率是 β 偏大。
  • 不要只看 judge 胜率,闭式 GSM8K / BBH 能抓到 judge 看不出来的回归。

7.4 接到生产侧

KTO 有两个对生产特别友好的设计选择。

  • 二元标签天然契合遥测。点赞按钮、“有用”评分、举报点击——这些原本被丢弃的二元信号都可以直接喂进训练流程,不再依赖昂贵的偏好对采集。
  • 不平衡鲁棒性匹配真实分布。线上数据天然不平衡(“没反馈”远多于”有反馈”,“正向”与”负向”之比强烈取决于产品形态)。KTO 通过 λD/λU 直接吸收。

当然,它仍然是离线对齐方法。在线部署需要周期性快照、πref 管理、漂移监控、回归测试、A/B 灰度这些标准 MLOps 流程,KTO 本身不解决这些。

8. 横向比较:KTO 在偏好优化方法谱系中的位置

读完 KTO,我有必要把它跟当时主流的其它几种方法横向摆在一起看一遍。这一步对工程团队选型很重要——KTO 不是要替换所有方法,而是占据了一个独特的生态位。

8.1 与 DPO 的差异

最直接的对照对象当然是 DPO。两者结构上的差异其实只有三处:

维度DPOKTO
输入数据偏好对 (x, yw, yl)二元标签 (x, y, desirable?)
参考点配对失败回答的单点估计KL(πθ ∥ πref) 的微批次估计
价值函数log σ(处处凹)σ(收益侧凹、损失侧凸的 S 形)
不平衡处理无原生机制λDλU 显式控制
噪声鲁棒性受 Bradley-Terry 假设约束Theorem 4.3 给出可证最差情形保证

实战层面,KTO 的代码改动其实非常小——大多数 TRL 用户从 DPOTrainer 切到 KTOTrainer 只需要换数据加载和指定 desirable_mask,损失计算与梯度反传的骨架完全保留。

8.2 与 IPO 的差异

IPO(Identity Preference Optimization, Azar 2024)也是从理论批评 DPO 出发——它指出 DPO 在偏好确定性极强(接近 1 或 0)时会过拟合。IPO 在偏好上加了一个 (margin)^2 正则。它仍然吃成对数据,本质上是 DPO 的一种”温和版”。KTO 走的是另一条路:完全放弃成对结构,从损失形状里找答案。我自己的判断是,IPO 在偏好数据非常干净时可能比 DPO 更稳;KTO 在数据嘈杂、不平衡、二元的真实场景下更合适。两者其实可以共存:清洁标注偏好用 IPO/DPO,线上二元遥测用 KTO。

8.3 与 ORPO 的差异

ORPO(Hong 2024)的诉求是完全不需要 πref——它把”奖励差”项直接折进负对数似然的训练目标里,省掉了在显存里同时驻留两份模型权重的代价。代价是它仍然吃成对数据,并且对学习率敏感。KTO 的”内存高效 + 无 πref”变体在做法上和 ORPO 类似,但 Table 2 中显示 KTO 的无 πref 变体在 GSM8K 和 BBH 上比 ORPO 略好——理由是 KTO 仍然保留了 HALO 的价值函数曲率,而 ORPO 的损失更接近一个对称的 logistic margin。

8.4 与 SimPO 的差异

SimPO(Meng 2024)是另一种”去 πref”路线:它把”长度归一化的对数概率差”作为优化目标,思路是 DPO 的 log(πθ/πref) 反映的是与参考模型的相对偏移,但参考模型本身可能就有偏差,不如直接看绝对长度归一化对数概率。SimPO 在长回答上表现尤其稳定。它仍然吃成对数据。KTO 与 SimPO 最大的差别还是数据形态——SimPO 想替代的是 DPO 的”奖励参考点选择”,KTO 想替代的是”成对数据的需求”。

8.5 与 PPO(在线 RL)的差异

把 KTO 和经典在线 PPO 放在一起会更清楚地看出它的设计哲学。在线 PPO 必须不停从当前策略采样新回答、过奖励模型评分、然后做策略更新;它的最大问题是采样昂贵 + 训练不稳。KTO 是一个完全离线的方法,参考点也用打乱微批次的低方差估计绕开了重新采样的代价。在工程上意味着:KTO 的训练 wall-clock 大约和 SFT 同量级,远低于在线 PPO;但作为代价,它无法享受”在线探索”带来的好处。如果任务需要边采样边对齐(比如某些 reasoning RL 场景),那 GRPO/DAPO 这类在线方法仍然更合适。

8.6 选型决策树

最后给一个我自己用的简化决策树:

是否有 paired 偏好数据?
├─ 是 → 数据噪声怎么样?
│   ├─ 低噪、专家标注 → DPO 或 IPO
│   └─ 高噪、众包 → KTO(pair 拆成二元)

└─ 否 → 是否有大量二元遥测信号?
    ├─ 是 → KTO 是天然选择
    └─ 否 → 先考虑收集任何形式的反馈,再回来选

是否能负担两份模型权重在显存?
├─ 是 → 标准 KTO 或 DPO
└─ 否 → 无 πref KTO / ORPO

是否需要在线探索(rollout-time RL)?
├─ 是 → GRPO / PPO / DAPO 等在线方法
└─ 否 → 离线方法(KTO / DPO / IPO)即可

9. 后续工作与启示

9.1 这篇论文留给社区的几条主线

  • HALO 框架可以指导新损失设计。 既然”参考点 + 凹形价值函数 + 损失敏感性”是关键三要素,那未来的损失设计就不必盲试,而可以在这个三维空间里有意识地探索。
  • 二元反馈对齐是未被充分利用的金矿。 KTO 把”线上点赞 / 点踩”从工业垃圾变成训练数据。这意味着对齐数据飞轮可能比社区预期得更容易转起来。
  • 理论与工程双向打通。 论文用前景理论解释了 DPO 为什么好——这是过去几年偏好优化文献里少见的、把心理学一直放在视野内的工作。

9.2 我自己看到的后续方向

  • 过程奖励 + KTO 的组合。 把序列级二元标签升级成步骤级二元标签(每一段推理对 / 错),再用 KTO 风格的 HALO 损失训。OpenAI 的 PRM、Math-Shepherd 这一脉的工作很自然能跟 KTO 结合。
  • 非二元 HALO。 论文留下了”如何把得分 / 评级纳入 HALO”的开放问题。如果能直接吃 1-5 星打分(而不是先粗暴地二分类),数据信号会更充分。
  • 多模态 KTO。 文本之外,图像 / 视频生成的对齐也常常只能拿到”喜欢 / 不喜欢”的二元反馈。把 KTO 推广到 diffusion 模型与多模态模型是一条自然的路径。
  • 更精细的 λD/λU 调度。 论文的建议是经验性区间;动态、按训练步数 / 按样本类型调度的 λD/λU 也许能进一步压缩超参敏感性。
  • 理论上的”最优 HALO”。 既然 HALO 是一族函数,那对给定的数据分布、给定的模型尺度,是否存在”理论最优 HALO”?这是 prospect-theoretic alignment 一脉值得长期投入的方向。

9.3 我对这篇论文的整体评价

KTO 是 2024 年代偏好优化文献中我个人最推荐细读的一篇——它的理论框架(HALO)比单一方法更值得吸收,实验设计的严谨度(matched data、matched compute、跨家族扫描、显著性校正)也是同领域里少见的高水准。最让我欣赏的一点是它清楚地提出了一个反问:“偏好数据是必要的吗?” 然后在数学和实验两侧给出了一致的”不必要”答案。这种把”长期被默认为必需”的东西敲一敲、问一问的工作,往往比直接刷某个 benchmark 高几个点的工作有更长的生命力。

读完 KTO,我对未来一两年内偏好优化的判断是:配对偏好数据会变得越来越奢侈,而二元 / 标量反馈会越来越中心化。KTO 不是终点,但它把方向指向了”如何更高效地把现实世界的反馈信号变成对齐信号”——这条路才刚刚开始走。

参考

  1. Ethayarajh, K. et al. KTO: Model Alignment as Prospect Theoretic Optimization. ICML 2024. arXiv:2402.01306。
  2. Rafailov, R. et al. Direct Preference Optimization: Your Language Model is Secretly a Reward Model. NeurIPS 2023. arXiv:2305.18290。
  3. Christiano, P. et al. Deep Reinforcement Learning from Human Preferences. NeurIPS 2017. arXiv:1706.03741。
  4. Ouyang, L. et al. Training Language Models to Follow Instructions with Human Feedback. NeurIPS 2022. arXiv:2203.02155。
  5. Schulman, J. et al. Proximal Policy Optimization Algorithms. 2017. arXiv:1707.06347。
  6. Kahneman, D. & Tversky, A. Prospect Theory: An Analysis of Decision under Risk. Econometrica 1979。
  7. Tversky, A. & Kahneman, D. Advances in Prospect Theory: Cumulative Representation of Uncertainty. Journal of Risk and Uncertainty 1992。
  8. Hong, J. et al. ORPO: Monolithic Preference Optimization without Reference Model. 2024. arXiv:2403.07691。
  9. Zhao, Y. et al. SLiC: Sequence Likelihood Calibration. 2023。
  10. Cui, G. et al. UltraFeedback: Boosting Language Models with High-Quality Feedback. 2023。

笔记完成于 2026-05-19,作者 Zhongzhu Zhou。