GARDO:无需奖励作弊的扩散模型强化学习框架 GARDO: Reinforcing Diffusion Models without Reward Hacking
通过门控自适应正则化和多样性感知优化,解决扩散模型RL微调中的奖励作弊问题
前置知识
扩散模型和流模型
扩散模型和流模型是现代文本到图像生成的核心技术,它们通过将数据分布逐步转换为简单噪声分布(如高斯分布)来学习图像生成。在推理时,模型通过逆向去噪过程从噪声中恢复图像。这些模型可以被形式化为马尔可夫决策过程(MDP),其中每一步去噪被视为一个动作,状态包含当前噪声图像和时间步,最终生成的图像获得奖励。
理解扩散模型的基本原理和MDP表述对于理解如何将强化学习应用于图像生成至关重要,因为GARDO方法正是建立在这个MDP框架之上的。
奖励作弊(Reward Hacking)
当使用不完美的代理奖励函数代替真实的人类偏好进行优化时,模型会学会通过作弊来获得高奖励分数,但实际生成质量下降。例如,当使用OCR(光学字符识别)准确率作为奖励时,模型可能生成充满噪声但文字可读的图像,因为这些图像在OCR分数上很高,但人类视觉质量很差。形式化定义为:J(π, R) < J(π_ref, R) 对于某些 π ∈ arg max_π J(π, R̃),其中R̃是代理奖励,R是真实奖励。
奖励作弊是本文要解决的核心问题。理解这个现象的成因和表现形式对于理解GARDO方法的设计动机至关重要,因为GARDO的所有组件都是为了识别和防止这种作弊行为。
KL散度正则化
KL(Kullback-Leibler)散度衡量两个概率分布之间的差异。在RL微调中,添加KL散度正则化项-βDKL(π_θ|π_ref)可以约束在线策略π_θ偏离参考策略π_ref的程度,其中β是正则化强度系数。这个约束可以防止模型过度优化代理奖励,从而抑制奖励作弊。然而,过强的KL约束会限制模型探索新的、更好的生成模式。
KL散度正则化是现有防止奖励作弊的主要方法,但它存在样本效率低和限制探索的局限。理解KL正则化的优缺点对于理解GARDO如何改进这个方法至关重要。
GRPO算法
GRPO(Group Relative Policy Optimization)是一种高效的强化学习算法,专门为扩散模型设计。它对同一个提示生成G个样本(组),计算每个样本相对于组平均奖励的优势,然后使用裁剪的代理目标优化策略。优势计算公式为A_it = (R(x_i0) - mean({R(x_i0)}_{i=1}^G)) / std({R(x_i0)}_{i=1}^G),其中裁剪比rit = π_θ(a_t|s_t)/π_θ_old(a_t|s_t)限制在[1-ε, 1+ε]范围内。这比PPO更高效,因为不需要价值函数。
GARDO框架兼容多种RL算法,GRPO是本文主要使用的基线算法。理解GRPO的工作原理有助于理解GARDO如何在这个框架上添加门控和自适应机制来改进性能。
DINOv3特征提取
DINOv3是一个强大的视觉基础模型,能够将图像映射到语义特征空间。在GARDO中,使用DINOv3提取每个生成图像的特征向量e_i,然后通过计算特征空间中样本与其最近邻居的余弦距离来量化多样性:d_i = min({1 - e_i·e_j/||e_i||·||e_j||}_{j≠i})。这个多样性分数用于重塑优势函数,鼓励生成高质量且多样化的图像。
DINOv3是GARDO多样性感知优化策略的核心组件。理解如何使用预训练的视觉模型来量化和促进生成多样性对于理解GARDO的完整方法至关重要。
研究动机
在基于强化学习的扩散模型微调中,由于视觉任务的奖励通常是不完美的代理,模型往往会出现奖励作弊现象。具体来说,当使用模型基础的奖励(如ImageReward)或基于规则的奖励(如OCR)时,这些奖励只能在特定数据分布内准确,一旦模型生成超出这个分布的样本,奖励信号就会变得不可靠。例如,在图1所示的OCR任务中,使用"A storefront with 'GARDO' written on it"作为提示,原始的Flow-GRPO方法会最大化OCR分数,但生成的图像质量明显下降,背景模糊且有视觉伪影。这种过度优化导致代理分数上升而真实图像质量下降,生成多样性也严重受损。
本文的目标是本文的目标是在不牺牲样本效率和有效探索的前提下,解决强化学习微调扩散模型中的奖励作弊问题。具体而言,希望在保持模型能够快速收敛到高代理奖励区域的同时,防止模型生成作弊样本,保持生成图像的真实视觉质量和多样性。此外,还希望模型能够探索并发现参考模型中不存在的优秀生成模式(新兴行为),而不是被约束在次优的参考策略附近。
与已有工作不同的是,本文的独特切入角度在于打破了"所有样本都需要正则化"的传统假设。通过理论分析发现,只有那些被分配了虚假奖励的样本才需要正则化来防止作弊。基于这个洞察,GARDO提出门控正则化机制,只对具有高不确定性的样本子集应用KL惩罚。此外,现有的KL正则化使用静态的参考模型,会随着训练进展成为优化瓶颈。GARDO通过自适应地更新参考模型来缓解这个问题。最后,针对RL固有的模式崩溃问题,GARDO引入多样性感知优化,通过放大高质量且高多样性样本的奖励来鼓励模式覆盖。
核心方法
GARDO(Gated and Adaptive Regularization with Diversity-aware Optimization)是一个创新框架,旨在解决扩散模型RL微调中的奖励作弊问题。方法的核心思想是:正则化不应普遍应用,而应选择性地惩罚那些表现出高不确定性的样本,这些样本很可能获得了虚假的奖励信号。为了促进持续改进,GARDO自适应地更新参考模型,使其与在线策略的能力相匹配。为了解决模式崩溃和多样性丧失的问题,GARDO引入多样性感知优化,通过放大高质量且高多样性样本的奖励来鼓励模式覆盖。整个框架兼容多种RL算法,包括GRPO和DiffusionNFT,具有很好的通用性。
GARDO的核心创新在于三个关键组件的有机结合:1)门控KL机制:只对高不确定性样本(约10%)应用KL惩罚,避免不必要的约束;2)自适应KL目标:定期用在线策略的快照更新参考模型,防止次优参考模型阻碍探索;3)多样性感知优势重塑:使用DINOv3提取特征,计算样本间的余弦距离作为多样性分数,将优势乘以多样性分数(仅对正优势),鼓励模型生成高质量且多样化的图像。这三个组件协同工作,既保持了样本效率,又有效防止了奖励作弊,同时促进了模式覆盖。
方法步骤详情
GARDO的训练流程如下:首先,初始化参考策略π_ref为初始策略π_θ。对于每个训练迭代,从提示数据集C中采样一批提示C_b。对于每个提示c,使用相同的初始噪声ε生成G个图像{x_0}_{i=1}^G。使用代理奖励R̃计算每个样本的优势A_i。使用DINOv3提取特征e_i,计算多样性分数d_i = min({1 - e_i·e_j/||e_i||·||e_j||}_{j≠i}),然后重塑优势:A^shaped_i = A_i·d_i(仅当A_i > 0)。计算不确定性U(x_i) = w(R̃(x_i)) - mean({w(R̂_n(x_i))}_{n=1}^K),其中w(y_i)是批内胜率,R̂_n是辅助奖励模型。确定门控阈值ε_U为{U_i}_{i=1}^G的(1-k)百分位数,其中k是动态调整的百分比(初始为0.1)。计算总损失L_total = (1/G)∑_{i=1}^G[L^RL_i + I(U_i > ε_U)·L^KL_i],其中I是指示函数,只有高不确定性样本被惩罚。更新策略模型θ。如果KL损失超过阈值ε_KL或经过m步梯度更新,则重置π_ref ← π_θ。动态调整k:如果当前批平均不确定性高于缓存窗口最大值,k ← min(k×1.1, 1.0);如果低于最小值,k ← k×0.9。
技术新颖性
GARDO的技术新颖性体现在多个方面。首先,门控正则化打破了KL惩罚必须普遍应用的传统认知,通过不确定性估计只惩罚可疑样本,大大提高了样本效率。其次,自适应参考模型更新解决了静态参考模型成为优化瓶颈的问题,这是对传统KL正则化的重要改进。第三,多样性感知优势重塑通过乘法形式而非加法形式将多样性信号融入优化,避免了超参数调优的困难,并且只对正优势应用,确保只奖励高质量样本。第四,发现简单去除优势归一化中的标准差也有助于缓解奖励作弊,这是一个有趣的经验发现。最后,GARDO在多种基础模型(SD3.5-M、Flux.1-dev)和RL算法(Flow-GRPO、DiffusionNFT)上验证了其通用性,展示了强大的适应能力。
实验结果
实验结果全面验证了GARDO方法的有效性。在GenEval任务上,GARDO(β=0.04)在2000步训练后达到0.95的代理分数,而Flow-GRPO(β=0)达到0.95,Flow-GRPO(β=0.01)只达到0.81。更重要的是,GARDO在未见奖励上的性能显著优于基线:Aesthetic分数5.09(vs. GRPO的4.80),ClipScore 0.95(vs. 0.73),HPSv3 9.27(vs. 6.73),多样性24.95(vs. 15.6)。在OCR任务上,GARDO在600步后达到0.92的OCR分数,而GRPO(β=0.01)在相同步数下只达到0.86。GARDO在未见奖励上同样表现出色:Aesthetic 5.07,ImageReward 0.92,HPSv3 9.75,多样性21.60。GARDO实现了约3-4倍的样本效率提升,在保持高代理奖励的同时,未见奖励性能接近甚至超过原始参考模型。在计数任务上,GARDO显著提高了生成10个物体的准确率(0.38),而基线GRPO(β=0)只有0.28,SD3.5-M只有0.01,展示了其发现新兴行为的能力。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| OCR Task (Proxy Reward) | OCR Score | 0.92 | GRPO (β=0.01): 0.86 | 0.06 (7.0%提升) |
| OCR Task (Unseen: Aesthetic) | Aesthetic Score | 5.07 | GRPO (β=0.01): 5.15; GRPO (β=0): 4.67 | 接近基线,无显著下降 |
| OCR Task (Unseen: ImageReward) | ImageReward Score | 0.92 | GRPO (β=0.01): 0.97; GRPO (β=0): 0.61 | vs. 无KL基线+0.31 |
| OCR Task (Diversity) | Diversity Score | 21.60 | GRPO (β=0.01): 21.32; GRPO (β=0): 18.15 | vs. 无KL基线+3.45 |
| GenEval Task (Proxy Reward) | GenEval Score | 0.95 | GRPO (β=0): 0.95; GRPO (β=0.01): 0.81 | vs. 有KL基线+0.14 |
| GenEval Task (Unseen: Aesthetic) | Aesthetic Score | 5.09 | GRPO (β=0): 4.80; GRPO (β=0.01): 5.15 | vs. 无KL基线+0.29 |
| GenEval Task (Unseen: ClipScore) | ClipScore | 0.95 | GRPO (β=0): 0.73; GRPO (β=0.01): 0.97 | vs. 无KL基线+0.22 |
| GenEval Task (Diversity) | Diversity Score | 24.95 | GRPO (β=0): 15.6; GRPO (β=0.01): 21.73 | vs. 无KL基线+9.35 |
| Counting Task (11 objects) | Accuracy | 0.18 | GRPO (β=0): 0.15; SD3.5-M: 0.01 | vs. 原始模型+0.17 |
局限与改进
作者指出GARDO的主要局限性是依赖辅助奖励模型进行不确定性估计,这可能限制其在计算密集型视频生成模型上的扩展性。此外,方法需要额外的预训练模型(DINOv3和辅助奖励模型),增加了计算开销。从理论角度,GARDO的门控机制基于不确定性阈值,但如何最优选择和调整这个阈值(k值)仍依赖于经验规则,缺乏理论保证。最后,多样性感知优化使用DINOv3特征空间,但这个特征空间可能无法完全捕捉人类感知的多样性,特别是对于某些特定领域的图像生成任务。
独立分析的弱点
GARDO的一个潜在弱点是其依赖于高质量的辅助奖励模型来估计不确定性。如果辅助奖励模型本身存在系统性偏差或与主奖励模型的偏差方向相同,不确定性估计可能失效,导致门控机制无法正确识别作弊样本。另一个弱点是自适应参考模型更新机制可能过于激进,在某些情况下可能导致训练不稳定或忘记早期的有用行为。多样性感知优化虽然提高了多样性,但可能鼓励模型生成偏离提示语义的图像以获得高多样性分数,特别是在提示本身很具体的情况下。改进方向包括:1)探索更鲁棒的不确定性估计方法,如基于模型不确定性的方法;2)引入更温和的参考模型更新策略,如指数移动平均或软更新;3)在多样性优化中加入语义一致性约束,防止过度追求多样性而偏离提示。
未来方向
作者提出的未来研究方向是将GARDO扩展到视频生成领域,验证其在更复杂任务上的有效性。另一个有潜力的方向是探索自动调整门控阈值k和KL系数β的策略,减少超参数调优的工作量。基于GARDO的成果,可以延伸的研究包括:1)将不确定性估计方法扩展到更多的奖励模型,提高鲁棒性;2)探索其他多样性指标和优化策略,如基于语义多样性或内容多样性;3)研究GARDO与其他对齐方法(如DPO)的结合,进一步提升性能;4)探索将GARDO应用于其他生成模态,如音频、3D生成等;5)理论研究门控正则化的收敛性质和最优性,提供更强的理论保证。
复现评估
GARDO的复现难度中等。项目已开源(https://tinnerhrhe.github.io/gardo_project),提供了详细的实现细节和超参数设置。实验使用8张NVIDIA A800 GPU,每个梯度步约需49秒(包括采样和训练)。主要依赖包括Flow-GRPO作为基线RL算法、SD3.5-Medium和Flux.1-dev作为基础模型、DINOv3用于特征提取、Aesthetic和ImageReward作为辅助奖励模型。方法的关键超参数包括:KL阈值ε_KL=1e-4,最大梯度步数m=100,初始KL百分比k=0.1,组大小G=24,学习率3e-4,LoRA参数α=32, r=64。代码使用了缓存窗口来动态调整k,窗口大小为20。总体而言,只要有足够的GPU资源,按照论文提供的超参数和实现细节应该能够复现主要结果。
论文图表
Figure 1展示了奖励作弊的直观例子。使用OCR作为代理奖励时,原始的Flow-GRPO方法生成了充满噪声、背景模糊且有视觉伪影的图像,虽然OCR分数很高但人类视觉质量很差。相比之下,GARDO方法在保持高OCR分数的同时,生成了质量更好、多样性更高的图像。这个图清楚地展示了现有RL方法在代理奖励优化中存在的问题,以及GARDO方法的有效性。
Figure 1对于理解论文至关重要,因为它直观地展示了奖励作弊问题的严重性和影响。通过对比Flow-GRPO和GARDO生成的图像,读者可以立即理解问题的本质:过度优化代理奖励会导致真实图像质量下降。这个视觉证据比任何数字都更有说服力,为后续的方法介绍提供了强烈的动机。