Retaining by Doing:遗忘差异究竟来自目标,还是训练数据

Retaining by Doing 要解释的不是“RL 比 SFT 好”,而是更具体的现象:在后训练中,为什么对新任务有相近收益的模型,会丢掉不同数量的旧能力?Howard Chen 等人跨 Llama / Qwen、指令遵循 / 知识 / 算术任务比较后,把关键因素指向训练数据是否来自正在更新的策略。论文同时保留反例:只有起始学生的自生成数据并不够,RL 也并非免疫于遗忘。

六个核心判断

  • 问题:专家 SFT 和静态 Self-SFT 都可能在获取新技能时损伤旧能力。
  • 机制:on-policy 更新更容易沿已有可达模式改善,而不是被外部示范拉向远处的模式。
  • 证据:REINFORCE 与 GRPO 都保持较低遗忘,移除 KL 正则也往往如此;优势估计和正则不是唯一解释。
  • 实践:每 epoch 刷新自生成数据的 Iterative-SFT,可以获得部分 on-policy 保留收益,不必每步重采样。
  • 边界:Self-SFT 会随学生更新变成 off-policy;当新模式离起点太远,RL 也可能忘。
  • 开放问题:应该多久刷新数据,才足以控制分布陈旧度?答案需要计算—收益联合评价。

一、必须同时衡量 gain 和 drop

若 RL 和 SFT 的保留能力不同,至少有三种解释:RL 通常带有参考模型正则;RL 使用奖励或优势给样本加权;RL 会不断从正在学习的模型重新生成数据。实际训练往往一起改变这三件事,所以一张“RL 忘得少”的图不能识别原因。这篇论文的价值在于把它们逐项拆开,而不是为某个训练范式做排名。

这种问题属于因果解释:我们想知道哪项改变是必要因素,以及换掉它后现象是否仍存在。论文的消融因此要与目标任务 gain 一起看。若一个方法几乎没学到新东西,它低 drop 并不令人意外;只有在可比学习收益附近,保留差异才真正有解释力。

论文把新任务准确率的变化记为 gain,把其他任务平均准确率的下降记为 drop:

\[ \Delta_g=\mathcal A(\pi_T,\mathcal T)-\mathcal A(\pi_0,\mathcal T),\qquad \Delta_d=\frac1M\sum_j\big[\mathcal A(\pi_0,\mathcal T'_j)-\mathcal A(\pi_T,\mathcal T'_j)\big]. \]

gain 越高越好,drop 越低越好;负 drop 表示非目标任务均值反而上升。百分制准确率相减得到的是百分点变化,不是相对改进率。均值还可能掩盖某一旧任务特别严重的下降,因此实际部署需要逐项检查。

目标任务是 IFEval、MMLU、Countdown。每次学习其中一项,检查其余项,并加入 MATH、WildJailbreak 和 WildGuardTest 作为旧能力与安全性代理。数据划分分别为 IFEval 13,000 / 1,972,MMLU 12,000 / 2,042,Countdown 10,000 / 1,000 的训练 / 测试样本。

二、不要把 Self-SFT 误叫作持续 on-policy

学生包括 Llama-3.2-1B-Instruct、Llama-3.1-8B-Instruct、Qwen2.5-1.5B-Instruct、Qwen2.5-7B-Instruct。专家 SFT 使用 Llama-3.3-70B-Instruct 的有效回答;Self-SFT 从起始学生为每题生成五个回答,保留正确者;GRPO 则用当前策略的 rollout 和二元奖励更新。

方法回答来源数据何时刷新?学生更新后的状态
Expert SFT外部 70B 教师训练前与学生可能持续不匹配
Self-SFT起始学生训练前起点接近,之后逐渐陈旧
Iterative-SFT每 epoch 开始时的学生每 epoch近似 on-policy
GRPO当前学生每个更新周期更接近完全 on-policy

“由我自己生成”是模型来源,而“on-policy”还涉及检查点与时间。一批数据即使来自学生,一旦学生连续更新,它也不再严格来自当前分布。这正是 Offline 与 Online E2S 的分界之一。

三、mode-seeking 为什么可能反而保留更多?

SFT 相当于最小化示范分布到学生的前向 KL;带参考策略 KL 正则的 RL 则可写成对奖励倾斜目标的反向 KL:

下式固定输入 \(x\),并令 \(J(\pi)=\mathbb E_{y\sim\pi}[r(x,y)]-\beta D_{\mathrm{KL}}(\pi\|\pi_0)\),其中 \(\beta>0\) 是 KL 惩罚系数,\(Z(x)\) 是目标的有限归一化常数。

\[ \pi^*(y\mid x)=\frac{\pi_0(y\mid x)e^{r(x,y)/\beta}}{Z(x)},\qquad J(\pi)=-\beta D_{\mathrm{KL}}(\pi\|\pi^*)+\beta\log Z(x). \]

这两种 KL 的参照是目标策略,不要与衡量微调前后变化的 \(D_{\mathrm{KL}}(\pi_0\|\pi)\) 混为一谈。通常说前向 KL mode-covering、反向 KL mode-seeking,也不能直接推出谁更忘。

论文用高斯混合给出直观反例。如果学生只能表示一个模式,把它挪向新模式必然伤到旧模式,此时前向 KL 的保留反而稍好:相同 0.9 新模式 gain,旧模式 drop 为 0.64 对 0.70。允许学生有两个模式后,反向 KL 可以主要调整已经存在的新模式,旧模式保持较完整,而前向 KL 的外部样本可能牵动整体混合结构。

这不是 LLM 内部真的存在可逐个命名的高斯模式,而是强调起始能力结构决定更新如何传播。附录增加新旧模式距离后,RL 也开始遗忘,所以“当前策略采样”不是万能屏障。

“寻找模式”为什么可能比“覆盖模式”更温和?

直觉上,覆盖全部专家模式似乎应该更好,但这是对目标性能的判断,不是对保留的判断。设学生已经在一个较近的模式上能做新任务,又在另一部分表示中保有旧技能。反向 KL 常让更新更多沿当前已有概率的区域进行;外部专家数据如果集中在一个远处模式,前向 KL 会要求学生补齐那个区域。补齐若需要牵动共享表示,就可能伤到旧行为。

这里有两个条件。学生必须已有可用的新任务模式,且参数化必须允许局部改善而不拖动所有其他模式。若学生只能表示一个峰,把它搬到新任务区域就会损害旧区域;若两个任务在同一个关键参数上要求相反方向,on-policy 也没有无成本解。这就是论文保留单模态反例的意义:mode-seeking 不是天然善,效果取决于模型可表达的解和起点位置。

因此,“RL 能力来自已有模型”与“RL 可以改善表现”并不矛盾。改善可以是将概率集中到已有可用模式;但如果目标模式根本不在有效可达区域,就需要额外信息或探索。UFT 的提示与 E2S 的专家条件采样,正是在补这个缺口,而不只是调整 KL 方向。

四、优势估计与正则各解释多少?

原论文 Table reinforce_grpo_performance,保留两种模型的全部方法与三项任务;每个单元是 gain / 非目标 drop,均为准确率百分点。
模型 / 方法IFEvalMMLUCountdown
Llama-3.1-8B / SFT25.2 / 27.811.1 / 38.525.5 / 36.4
Llama-3.1-8B / REINFORCE17.8 / 7.78.6 / −0.17.5 / −0.8
Llama-3.1-8B / GRPO18.4 / 3.414.6 / −0.260.4 / −0.5
Qwen2.5-7B / SFT24.2 / 5.69.4 / 14.610.4 / 29.2
Qwen2.5-7B / REINFORCE5.7 / 2.96.4 / −0.611.9 / −0.1
Qwen2.5-7B / GRPO17.0 / 0.28.4 / 0.229.2 / −0.3

REINFORCE 在目标任务优化上有时远弱于 GRPO,却仍出现低 drop,说明 GRPO 特定的优势估计不是保留优势的必要条件。但它们的 gain 并不处处匹配;较少学习也可能较少改变,因此该表要与其余匹配权衡和消融一起看。

另一项消融去除 KL 正则后,大多数模型 / 数据仍有类似保留优势;例外包括 Llama 的 IFEval。这里排除的是“显式 KL 正则解释了全部优势”,不是说 KL 正则在任何任务都没有用。

五、近似 on-policy 到什么程度就够了?

Iterative-SFT 在每个 epoch 开始时重新生成并筛选有效回答,再进行该轮 SFT。论文观察它往往能接近或超过静态 SFT 的目标表现,同时明显减少遗忘。另一个用 RL 过程中收集的轨迹做 SFT 的实验,也获得较好的保留。

这使“每步采样”与“完全静态数据”之间出现了实际可用的连续谱。不过,RL 日志中的回答只是对生成它们的历史检查点 on-policy;把它们重新交给起始模型训练时,不能声称全过程严格 on-policy。

一种合理的实践方向是同时追踪样本年龄和策略变化:当当前模型对旧数据的概率明显改变时刷新,而不是机械地按固定时间刷新。这是本文提出的方案,不是论文已经验证的算法。

把“数据变旧”写成一个可测的问题

固定一轮生成数据的检查点 \(\pi_k\),过滤后训练分布为 \(q_k(y)\propto\pi_k(y)\mathbf1[y\in C]\)。若连续 SFT 到 \(\pi_{k+m}\),仍用同一份 \(q_k\),更新会继续朝那一轮的正确条件分布前进,而不是当前学生的条件分布。这不是数据突然不正确,而是正确性保持,适配对象却过时了。

一种教学性的陈旧度诊断是记录旧样本上 \(\delta(y)=\log\pi_{\mathrm{current}}(y)-\log\pi_{\mathrm{generation}}(y)\) 的分布,观察均值、尾部与不同推理簇变化。\(\delta\) 不是准确遗忘率,也不是无条件的 KL;它只反映当前模型如何重估这批历史样本。若少数样本的比值特别极端,说明旧数据可能已经不能代表当前访问到的状态。

用完整序列比值进行 importance weighting 也有代价:许多 token 的概率相乘会产生高方差,而且被旧策略漏掉的新模式无法仅靠权重补出来。刷新数据、限制复用次数与重要性修正是不同的折中,不应认为写出一个概率比就完全解决了陈旧性。

六、为什么 KL 不能充当遗忘证书?

附录用 100 个评价样本估计微调前后的前向 KL,跨模型、方法和任务与 drop 的 Pearson 相关为 0.52。GRPO 总体同时具有较低 KL 和较低 drop,但 SFT 与 Self-SFT 之间并不总是单调。

具体地,在 Llama-3.2-1B 的 MMLU 实验中,Self-SFT 的 KL 为 39.3、drop 为 34.6;专家 SFT 的 KL 更高(48.4),drop 却更低(28.9)。这些 KL 数值是论文对应估计流程的结果,不能跨不同长度和分布随意横向比较,更不能据此设一个全局阈值。

与 RL’s Razor 合读,可以得到更稳妥的判断:分布变化值得监测,但输入分布、KL 方向、序列长度、模型参数化和旧任务重叠会影响代理强度。该论文的高斯分析提供直觉,不等同于对非凸 Transformer 的完整证明。

延伸:采样频率应该由变化决定,还是由日历决定?

以下是本文的研究设想。每 epoch 刷新容易实现,但一个 epoch 的意义依赖数据量、学习率、batch 和生成规模。快速变化的学生可能在一轮中途就需要新数据,接近收敛的学生则可能重复使用数据而损失不大。因此固定周期未必是最合理的采样单位。

可以将刷新设计成一个决策:在一份独立诊断集上监测当前与生成时策略的分布差异、有效样本覆盖和新任务收益,当变化达到阈值才重新生成。难点是阈值本身要调优,而且诊断需要计算;如果测量成本超过节省的 rollout,这种自适应方案并不合算。

验证时应比较固定短周期、固定长周期和变化触发刷新,控制总生成 token 与总训练 token,并报告每题正确覆盖,而不是只控制 epoch 数。还要把失败样本计入预算:模型在难题上不断生成却全部被过滤,可能让最终数据只剩容易题,产生新的课程偏置。

这与 Online E2S 的联系很具体:不仅学生生成的自训练数据会陈旧,按起始学生适配的专家改写也会陈旧。但刷新采样器和刷新样本不是同一个操作,应分别测量。论文给出的是研究方向的动机,尚未证明哪一种自适应刷新规则最优。

结语:保留优势来自哪里,必须拆开测

这项工作把采样来源、采样时间、KL 正则和优势估计拆开,避免把多个共同变化统称为“RL 的魔力”。下一步最有价值的实验,是对不同刷新间隔进行等生成 token、等更新 token 的对照,同时报告目标 gain、逐项旧任务 drop、样本陈旧度与方差。

对 E2S 而言,它解释了为什么适配一次的数据未必足够:学生改变后,数据生成分布可能也应跟着改变。但刷新本身的成本与收益,仍需测量而非凭名称判断。

参考与核对位置

Howard Chen, Noam Razin, Karthik Narasimhan, Danqi Chen. Retaining by Doing: The Role of On-Policy Data in Mitigating Forgetting。核对本次下载的 arXiv 源码版本。重点:§2 gain/drop 定义、§3 单模态 / 多模态分析、§4 on-policy 消融、Table reinforce_grpo_performance、Appendix A.5 的 KL 相关性。TeX 源码;作者代码。

Contact

There may be some errors present. If you find any, please feel free to contact me at wangqiyao25@mails.ucas.ac.cn. I would appreciate it!