Beyond Pairwise Preferences: Listwise Reward-Aware Alignment for Diffusion Models

Paper: arXiv:2605.26491

1. Motivation(研究动机)

当前 diffusion preference optimization 的主要瓶颈

这篇论文关注的是 text-to-image diffusion model 的 post-training alignment。Stable Diffusion 1.5、SDXL、Imagen 这类模型已经能生成高质量图像,但预训练本身并不保证模型符合人类偏好:美学质量、prompt following、细粒度属性绑定、整体可用性都需要额外对齐。已有 diffusion alignment 大致有两条路线:

  • Online RLHF / reward fine-tuning:在训练过程中反复采样图像、打 reward、更新模型。优点是直接优化 reward;缺点是 trajectory generation、reward evaluation、policy update 串行耦合,训练昂贵、难并行,并且容易受 on-policy distribution shift 影响。
  • Offline preference optimization:从预收集的人类偏好数据学习,例如把 DPO 类目标迁移到 diffusion denoising loss 上。它更稳定、更便宜,也更容易复用已有 preference dataset。

论文指出,offline preference optimization 仍然继承了 DPO 的一个强假设:每次更新只看一对 winner / loser 图像。这与实际 diffusion preference 数据并不匹配。以 Pick-a-Pic v2 为例,数据表面上是 pairwise preference,但同一个 prompt 往往对应多组比较、多个候选图像;同时,现代 reward model(PickScore、HPS、ImageReward 等)可以给每张图像连续分数。若把这些信息压缩成二元偏好对,会丢掉两类监督:一是同一 prompt 下多个候选之间的 listwise ranking 结构,二是 reward magnitude 中包含的“赢多少 / 输多少”的强弱信息。

本文要解决的问题

本文目标不是提出新的 reward model,也不是在线 RL;它要解决的是:如何让 diffusion model 的 offline preference optimization 直接利用同一 prompt 下多个候选图像及其连续 reward score,而不是把数据拆成若干独立 pairwise comparison。

具体来说,论文提出 Diffusion LAIR(Listwise Advantage-weighted Implicit Reward):对每个 prompt,把候选图像的 reward score 转成以组内均匀分布为基线的 centered advantage weight,再用这些 signed weights 加权 diffusion implicit reward,同时加入二次正则,让更新保持 conservative。

为什么值得研究

这个问题值得研究有三个原因:

  1. 数据利用效率:已有 preference dataset 中同一 prompt 的多候选结构原本就存在;listwise 方法能从全部候选获得梯度,而不是只从挑出来的一对样本获得信号。
  2. 监督信号更细:连续 reward score 可以表达“明显更好”“略好”“明显更差”,比二元 winner / loser label 更丰富。
  3. 训练更可控:pairwise logistic objective 的理想 margin 可以无界增大;LAIR 的二次正则给 implicit reward 一个有限最优解,使偏好更新的幅度由 控制。

Figure 1 解读:这组样例展示了用 Diffusion LAIR 对 SDXL 做 post-training 后的生成效果。它不是方法结构图,而是论文在引言中给出的“目标质量”直观展示:模型希望在保持 SDXL 生成能力的同时,提高图像美感、文本对应性和整体偏好分数。

2. Idea(核心思想)

核心 insight

本文最核心的 insight 是:diffusion preference alignment 不一定要把同一 prompt 下的候选样本压缩成 winner-loser pair;可以把整组候选的 reward score 转成 centered listwise advantage,然后直接监督每个样本相对 reference model 的 denoising-loss improvement。

换句话说,LAIR 把“偏好谁胜过谁”改写成“每个候选相对组平均应该被提升还是压低,以及提升/压低多少”。高 reward 样本得到正权重,低 reward 样本得到负权重;权重和为零,因此更新关注的是同一 prompt 内部的相对质量,而不是 reward 的绝对标定。

关键创新

Diffusion LAIR 有三个关键设计:

  • Listwise supervision:训练样本是 ,即一个 prompt 对应 个 candidate image 及其 reward,而不是单个 preferred / dispreferred pair。
  • Reward-aware centered advantage:先用 softmax 把 reward 转成组内概率 ,再减去均匀基线 得到 。这样 的样本被提升, 的样本被压低。
  • Implicit reward regression with quadratic regularization:LAIR 不直接最大化 reward,而是优化 diffusion implicit reward ;二次项 限制偏好更新幅度。

与已有方法的根本差异

与 Diffusion-DPO / DSPO 相比,LAIR 的差异不只是“把 batch 变大”。Diffusion-DPO 仍然是 pairwise logistic loss:它关心 的 margin,优化上会倾向把 preferred 和 dispreferred 的差距推得越来越大。LAIR 则对每个 prompt 的全部候选构造 signed advantage,并有闭式最优解 ,因此每个样本的目标 implicit reward 是有限的、组内相对的、由 控制的。

3. Method(方法)

3.1 Overall framework:从 pairwise 到 listwise reward-aware alignment

Figure 2 解读:图中左侧表示同一个 prompt 下的多张候选图像;中间用 reward model 给每张图像打分,并把分数转换成 listwise advantage;右侧则把这些 advantage 用来监督 diffusion implicit reward。与 pairwise DPO 只比较一张 preferred 和一张 rejected 图不同,LAIR 对整组样本同时分配正负权重:高 reward 图像推动当前模型比 reference denoise 得更好,低 reward 图像则被相对压低。二次正则项用于防止模型过度偏离 reference。

整体训练流程可以概括为:

  1. 对每个 prompt ,从 Pick-a-Pic v2 中聚合所有相关候选图像,形成
  2. 用 PickScore 对每个候选图像离线打分,得到
  3. 转换成组内 centered advantage
  4. 对每个候选图像采样 timestep 和 noise ,计算当前模型与 reference model 的 denoising loss 差值,即 implicit reward
  5. 提升高 reward 样本、压低低 reward 样本,并用 做 conservative regularization。

直觉上,LAIR 把 reward model 的“组内排序”变成了 diffusion denoising 空间里的“相对改善目标”。它不要求 reward score 的绝对值在不同 prompt 之间可比;只要同一 prompt 内部 reward 能区分哪些候选更好,就能产生有效的正负权重。

3.2 Diffusion implicit reward:用 denoising-loss improvement 近似模型偏好

Diffusion model 的生成概率 不像 autoregressive LLM 那样容易直接计算,因此 diffusion DPO 系列方法通常使用 denoising loss 的差值作为 log-ratio surrogate。给定 noisy latent 当前模型和 reference model 的 denoising squared error 是 论文使用的 implicit reward 是 其中 是 ELBO 中由 timestep signal-to-noise ratio 诱导的权重,实践中通常设成常数。若当前模型在某个样本上 denoise 得比 reference 更好,则 ,所以 更大;反之则更小。这使得 preference alignment 可以在 denoising loss 空间中完成。

3.3 Reward-aware centered advantage

对 prompt 的候选集合 及 reward score ,LAIR 先定义组内 softmax 概率: 这里 是 reward temperature。 表示样本 在同一 prompt 候选组中的相对质量, 则是相对均匀分布的 centered advantage。这个设计有几个作用:

  • ,所以训练信号是组内相对的,不会因为某个 prompt 的 reward 全体偏高而整体推高所有候选。
  • 高 reward 样本满足 ,低 reward 样本满足
  • 控制 reward 差异被放大的程度; 小时更接近“突出最优候选”, 大时分布更平滑。

如果去掉这个 centered advantage,只用 pairwise label,就会回到 DPO 类方法:训练只知道哪个图像赢了某个比较,却不知道其余候选的相对位置,也不知道赢的幅度。

3.4 Diffusion LAIR objective

LAIR 的核心目标为 $ \mathcal{L}_{\mathrm{Diffusion\text{-}LAIR}}(\theta)

\mathbb{E}{c,t,{\epsilon_i}{i=1}^{N_c}} \left[ -\sum_{i=1}^{N_c} w_i s_\theta^{(i)} + \frac{\lambda}{N_c}\sum_{i=1}^{N_c}\left(s_\theta^{(i)}\right)^2 \right], s_\theta^{(i)}:=s_\theta(\boldsymbol{x}_0^{(i)},\boldsymbol{x}_t^{(i)},t,c,\epsilon_i), \lambda>0$ 控制正则强度。第一项是 advantage-weighted implicit reward regression:

  • ,最小化 loss 会鼓励 变大,即当前模型相对 reference 在该高质量图像上 denoise 更好;
  • ,最小化 loss 会鼓励 变小,即低质量图像不会被模型过度拟合;
  • ,该样本接近组内平均质量,对更新影响较小。

第二项是 quadratic penalty。它的意义不是普通 weight decay,而是直接限制 implicit reward magnitude:模型不能无限增大 来追逐 reward,从而避免过度偏离 reference model。

3.5 理论性质:有限的 optimal implicit reward 与 KL surrogate bound

对于固定候选组和固定 ,论文证明 LAIR 目标对 是 strictly convex,并有唯一逐点最优解: 这个闭式解非常关键:每个样本的目标 implicit reward 与其 centered advantage 成正比,并被 控制。因为 ,也有 ,说明 LAIR 不会把同一 prompt 下所有样本一起推高,而是在组内重新分配 preference signal。

论文还给出一个 surrogate KL bound。设有效最优 implicit reward 的 full-support extension 范围为 ,并在 log-ratio approximation 与 bounded extension 假设下定义 surrogate tilted distribution ,则 若 extension 保持 finite-list optimum 的范围,则 ,得到 作者明确说明这不是精确理论保证,而是基于 diffusion ELBO log-ratio approximation 和 full-support extension 假设的 surrogate bound。它提供的主要直觉是: 越大,允许的 preference tilt 越小;候选组越大,方法可利用的 listwise 信息越充分,也对应更大的可解释偏移范围。

3.6 论文级伪代码(无 released code)

代码搜索未找到开源实现(checked: arXiv/PDF links, title+github, acronym/method+github, arXiv ID, first-author/org candidate repos, GitHub repo search, GitHub code search, and direct plausible owner/name probes; only unrelated repositories or paper-index metadata were found)。因此下面伪代码是按论文公式与 appendix 训练细节整理的 paper-level pseudocode,不是 released code 的逐行映射;本笔记也不设置 github / github_ref 属性。

import torch
import torch.nn.functional as F
 
 
def build_prompt_groups(pickapic_rows, reward_model, max_list_size):
    """Aggregate pairwise Pick-a-Pic rows into prompt-level candidate lists."""
    groups = {}
    for row in pickapic_rows:
        prompt = row["prompt"]
        groups.setdefault(prompt, [])
        groups[prompt].append(row["image_a"])
        groups[prompt].append(row["image_b"])
 
    examples = []
    for prompt, images in groups.items():
        images = deduplicate_images(images)
        if len(images) < 2:
            continue
        images = subsample_or_truncate(images, max_list_size)
        rewards = reward_model.score(prompt, images)  # offline PickScore in the paper
        examples.append({"prompt": prompt, "images": images, "rewards": rewards})
    return examples
def centered_listwise_advantage(rewards: torch.Tensor, tau: float) -> torch.Tensor:
    """Convert reward scores inside one prompt group into signed centered weights."""
    probs = torch.softmax(rewards / tau, dim=0)
    uniform = torch.full_like(probs, 1.0 / rewards.numel())
    weights = probs - uniform
    return weights  # sum(weights) == 0
def diffusion_implicit_reward(model, ref_model, scheduler, x0, prompt, timestep, noise):
    """Denoising-loss improvement of model over fixed reference model."""
    xt = scheduler.add_noise(x0, noise, timestep)
    eps_theta = model(xt, timestep, prompt)
    eps_ref = ref_model(xt, timestep, prompt)
    loss_theta = F.mse_loss(eps_theta, noise, reduction="none").flatten(1).mean(dim=1)
    loss_ref = F.mse_loss(eps_ref, noise, reduction="none").flatten(1).mean(dim=1)
    return loss_ref - loss_theta
def diffusion_lair_loss(model, ref_model, scheduler, batch, tau: float, lambda_reg: float):
    """Paper-level Diffusion LAIR objective for one batch of prompt-level lists."""
    losses = []
    for example in batch:
        images = example["images"]            # shape: [Nc, C, H, W]
        prompt = example["prompt"]
        rewards = example["rewards"]          # shape: [Nc]
        weights = centered_listwise_advantage(rewards, tau)
 
        t = scheduler.sample_timesteps(images.shape[0], device=images.device)
        eps = torch.randn_like(images)
        s = diffusion_implicit_reward(model, ref_model, scheduler, images, prompt, t, eps)
 
        linear_term = -(weights * s).sum()
        quadratic_term = lambda_reg / images.shape[0] * (s ** 2).sum()
        losses.append(linear_term + quadratic_term)
    return torch.stack(losses).mean()

3.7 论文公式与 released code 实现差异

未发现 public released code,因此无法检查 paper-vs-code implementation gap。当前笔记中的训练配置来自论文 Appendix 的 dataset/training details 与 Table 3,而不是代码配置文件。

4. Experimental Setup(实验设置)

4.1 数据集与模型

训练使用 Pick-a-Pic v2。论文说明该数据集约有 1 million pairwise preference entries,但只有约 59k unique prompts;作者据此把 pairwise rows 聚合成 prompt-level candidate set。每个训练样本为同一 prompt 下的候选列表 ,列表大小在 到最大列表大小 之间。

训练模型包括:

  • SD1.5:用 Diffusion LAIR fine-tune Stable Diffusion 1.5。
  • SDXL:用 Diffusion LAIR fine-tune Stable Diffusion XL。

评测数据包括:

  • Parti-prompts:1632 prompts,用于 general human preference evaluation。
  • HPD:3200 prompts,用于 general human preference evaluation。
  • GenEval:compositional generation benchmark;每个 prompt 生成 4 张图,使用官方 evaluation script。
  • InstructPix2Pix:随机采样 1000 个 image-prompt pairs,用 SDEdit 进行 image editing;每个 prompt 生成 5 张图。

4.2 Baselines

文本到图像与偏好对齐 baselines 包括:Diffusion DPO、DSPO、Diffusion KTO、MaPO、InPO。作者使用 Diffusion DPO、Diffusion KTO、MaPO、InPO 的官方 checkpoints;SD1.5 的 DSPO 由作者用官方代码 fine-tune。由于 DSPO 在 SDXL scale 上计算成本高,SDXL 对比中省略 DSPO。GenEval 还报告 SmPO、SPO、CRAFT 等已有结果。

4.3 Metrics

论文主要使用 reward-model based automatic evaluation:

  • PickScore:偏好 reward model 分数,越高越好。
  • HPS v2:Human Preference Score v2,越高越好。
  • LAION Aesthetics Score(Aes.):图像美学分数,越高越好。
  • CLIP score:图文匹配分数,越高越好。
  • ImageReward(IR):image reward model 分数,越高越好。
  • GenEval metrics:Overall、Color、Count、Position、Single、Attribute、Two-object 等 compositional accuracy 子指标。
  • InstructPix2Pix win rate:某模型在 image-prompt pair 上平均 reward 超过 SDXL baseline 的比例。

4.4 Training config 与计算成本

无 public training script 可核对;以下数值来自论文 Appendix 的 Dataset and Training Details / Training Hyperparameters:

HyperparameterSD1.5SDXL
Learning rate
Maximum list size 3010
Reward temperature 0.050.5
Per-GPU batch size11
Gradient accumulation steps1616
Regularization strength 0.000250.00025
CFG prompt dropout proportion0.10.1
Training steps23001500
Hardware2×A1003×A100

论文报告总训练成本约为 24 A100 GPU-hours for SD1.5140 A100 GPU-hours for SDXL,并强调相对 Diffusion DPO / DSPO 等 baseline 更高效;作者称部分 baseline 在 SDXL training 上可高到接近 5× H100 GPU-hours。

5. Experimental Results(实验结果)

5.1 General preference alignment:reward score 主结果

Base / DatasetMethodPickHPSAes.CLIPIR
SD1.5 / PartiSD1.521.2430.27385.3600.33220.1653
SD1.5 / PartiDSPO21.5210.28135.6580.33760.5763
SD1.5 / PartiInPO21.7350.28425.6130.34570.7203
SD1.5 / PartiDiff.-DPO21.4970.27735.4450.33730.3539
SD1.5 / PartiDiff.-KTO21.5500.28255.5680.33900.5941
SD1.5 / PartiDiff.-LAIR21.9920.28605.6710.34850.8107
SD1.5 / HPDSD1.520.7920.27235.5670.34980.0988
SD1.5 / HPDDSPO21.4260.28335.8730.35660.6612
SD1.5 / HPDInPO21.7920.28625.8730.36590.8114
SD1.5 / HPDDiff.-DPO21.2260.27675.6880.35530.3087
SD1.5 / HPDDiff.-KTO21.4300.28495.7920.35720.6835
SD1.5 / HPDDiff.-LAIR22.0680.28715.9040.36700.8382

SD1.5 结果显示 LAIR 在 Parti 和 HPD 上五个 reward 指标全部最优,尤其 ImageReward 从 InPO 的 0.7203 / 0.8114 提升到 0.8107 / 0.8382,说明 listwise reward-aware 监督不仅提升美学分数,也提升综合偏好 reward。

Base / DatasetMethodPickHPSAes.CLIPIR
SDXL / PartiSDXL22.4250.28435.8090.3560.776
SDXL / PartiInPO22.7230.29085.8720.3591.045
SDXL / PartiDiff.-DPO22.6930.28945.8240.3651.066
SDXL / PartiMaPO22.3990.28615.9570.3540.873
SDXL / PartiDiff.-LAIR22.7650.29205.8450.3661.104
SDXL / HPDSDXL22.5890.28606.1340.3820.865
SDXL / HPDInPO23.0010.29396.1860.3841.074
SDXL / HPDDiff.-DPO22.9490.29216.1410.3881.082
SDXL / HPDMaPO22.6380.29026.2450.3820.968
SDXL / HPDDiff.-LAIR23.0330.29506.1520.3911.130

SDXL 上 LAIR 在 Pick、HPS、CLIP、ImageReward 上最强,Aesthetics 则低于 MaPO。这说明 LAIR 的收益主要体现为综合偏好与 prompt alignment,而不是单纯追求 aesthetic score。

Figure 3 解读:这张图比较 Ours、原始 SDXL、MaPO、Diffusion DPO、InPO 的生成样例。它的作用是补充 reward 表格:LAIR 不只是 reward score 高,视觉上也更倾向于生成与 prompt 更一致、主体更清晰、细节更完整的图像。尤其当 prompt 需要多个属性同时满足时,pairwise baseline 更容易出现局部属性缺失。

5.2 GenEval:compositional generation

MethodOverallColorCountPos.SingleAttr.Two
SD1.542.4274.4736.563.5095.625.2539.14
SmPO42.8675.5332.194.0096.257.2541.92
Diff.-DPO43.2877.3935.004.7598.126.0038.38
CRAFT45.8277.6638.126.7596.888.2547.22
SPO44.0472.6133.446.2595.946.2549.75
Diff.-LAIR51.4484.3145.626.2599.3813.2559.85

SD1.5-based GenEval 中,LAIR 的 Overall 为 51.44,显著高于 Diff.-DPO 的 43.28 和 CRAFT 的 45.82。最大提升来自 Color、Count、Attr. 和 Two-object 指标,说明 listwise reward-aware alignment 对 compositional attribute binding 有帮助。

MethodOverallColorCountPos.SingleAttr.Two
SDXL55.0588.3042.8111.0097.5021.0070.96
Diff.-DPO57.2386.7045.6211.0098.7520.7580.56
SmPO57.8686.7044.6910.5098.7527.0079.55
SPO55.4384.0438.4411.7597.8120.5080.05
CRAFT57.9787.2336.8814.5099.0623.7586.36
Diff.-LAIR59.1690.9639.6913.50100.0028.2582.58

SDXL-based GenEval 中,LAIR 的 Overall 为 59.16,在 Color、Single、Attr. 上最优;Two-object 低于 CRAFT,Count 低于 Diff.-DPO / SmPO。这表明 LAIR 的优势并非所有 compositional 子项全面领先,但整体指标仍最高。

Figure 4 解读:图中对比 LAIR 与 Diffusion DPO 在 GenEval prompt 上的生成效果。论文用它说明 pairwise objective 容易只满足 prompt 的一部分属性,而 LAIR 由于利用整组候选 reward 排序,更能保留颜色、数量、对象关系等组合约束。

Figure 6 解读:这张 appendix 图展示 SD1.5-tuned LAIR 在 GenEval 上的更多样例。它不是 baseline 对比图,而是展示 LAIR 在多个 compositional prompts 下的 qualitative behavior:整体上能较稳定地产生目标对象和属性,但仍可从表格看到 position / counting 等子项不是完全解决。

5.3 Image editing:InstructPix2Pix / SDEdit win rate

MethodPickHPSAes.CLIPIR
Diff.-DPO81.2%76.5%65.7%71.6%73.3%
InPO78.4%82.6%73.4%62.4%74.8%
MaPO48.8%40.6%88.4%34.8%46.9%
Diff.-LAIR86.4%86.1%81.6%77.5%81.0%

在 image editing setting 中,LAIR 在 Pick、HPS、CLIP、ImageReward win rate 上最高,Aesthetics 低于 MaPO。这与 SDXL text-to-image 表格一致:LAIR 更偏向综合偏好和条件一致性,而非单独最大化 aesthetic score。

Figure 7 解读:这张图展示 SDXL variants 在 SDEdit / InstructPix2Pix 风格任务上的编辑结果。LAIR 的意义在于:即使训练目标来自 text-to-image preference data,reward-aware listwise alignment 也能迁移到 image editing 的偏好评测上;不过该图仍是 qualitative evidence,最终结论主要由 win-rate 表格支撑。

5.4 SD1.5 qualitative comparison

Figure 5 解读:appendix 中这张图比较 SD1.5-tuned LAIR、Diffusion DPO、Diffusion KTO、InPO 和原始 SD1.5。它对应主表中 SD1.5 的 reward 改善:LAIR 生成结果通常更贴近 prompt、更有视觉吸引力。由于图像是 qualitative sample,不能单独证明稳定收益,但与 Parti / HPD / GenEval 数字一致。

5.5 Ablation:最大列表大小 与 reward temperature

SettingPickScoreHPSAestheticsCLIPImageReward
21.9500.28475.6450.3510.748
21.9600.28495.6010.3480.785
21.9090.28455.6130.3460.740
21.8860.28405.5800.3480.718

组大小 ablation 使用 SD1.5,在 100 个随机 Parti-Prompt prompts 上评测、每个 prompt 5 个 samples。总体趋势是较大的 list size 至少不差,并在 PickScore / Aesthetics 等指标上有小幅收益; 的 HPS 和 ImageReward 略高,说明 不是越大所有指标都严格提升,但 listwise supervision 明显优于退化到 的近 pairwise 形态。

SettingPickScoreHPSAestheticsCLIPImageReward
21.9300.28505.5940.3510.765
21.9370.28455.6310.3500.779
21.9500.28475.6450.3510.748

Reward temperature 的影响较小: 在 PickScore / Aesthetics 上略高, 在 HPS 上略高, 在 ImageReward 上略高。作者因此认为 可作为 reward 类型相关的 tuning knob,但方法整体不高度敏感。

5.6 Limitations 与总体结论

作者提到两个主要限制:

  1. 依赖 reward model 质量:LAIR 训练时直接使用 reward model score;如果 reward model 噪声大或本身与人类偏好不一致,fine-tuned model 也可能被错误引导。
  2. 理论分析依赖假设:surrogate KL bound 依赖 diffusion ELBO 的 log-ratio approximation,以及把 finite-list implicit reward 扩展到 full-support distribution 的假设;作者强调这提供直觉,不是严格精确保证。

总体上,实验显示 Diffusion LAIR 在 SD1.5 和 SDXL 上都能提升偏好 reward,尤其在 PickScore、HPS、CLIP、ImageReward 和 GenEval Overall 上表现强。核心证据支持论文主张:利用同一 prompt 下多候选 reward score 的 listwise 结构,比把数据压缩成 pairwise winner-loser 更有效;二次正则则让这种偏好更新保持可控。