1 SFT
SFT:通过直接学习人类标注的高质量推理路径,SFT以其高效性著称,尤其适用于参数规模较小的语言模型。然而,SFT也存在明显的局限性——它倾向于让模型“记忆”训练数据中的特定模式,可能导致过拟合,从而限制了模型在面对新颖问题时的推理泛化能力,特别是对于大型模型而言。
2 RFT
RFT:与SFT不同,RFT通过让模型在环境中探索、与外部反馈交互来学习。这种方式通常能带来更好的泛化性能,因为它鼓励模型自主“思考”并发现解决问题的策略。但RFT的有效性高度依赖于基础模型的初始强度。如果基础模型能力较弱,或者奖励信号过于稀疏,RFT可能难以引导模型进行有效的探索。
3 UFT
统一“记忆”与“思考”的新范式 为了克服SFT和RFT各自的局限性,并融合它们的优势,本文提出了统一微调(Unified Fine-Tuning, UFT)——一种新颖的后训练范式。UFT的核心思想是将SFT的监督学习与RFT的强化学习整合到一个单一、动态的训练流程中。
3.1 预备知识
3.1.1. 基础符号
- 整数序列: 对于任意正整数 n ,用 [n]表示集合 {1,2,…,n} 。
- 概率单纯形: 符号 Δn代表 n-1 维的概率单纯形,即
这是描述概率分布的常用空间。- KL散度: 对于任意两个同在 Δn空间中的概率分布 x 和 y,它们之间的KL散度定义为
KL散度用于衡量两个概率分布之间的差异。- 集合基数: 对于任意离散集合 S,其基数(即元素的数量)用 |S| 表示。
3.1.2. 推理过程的形式化:
搜索树
LLM在解决需要多步推理的任务时,其决策过程可以被抽象为一个搜索树 (Search Tree)。
这种形式化对于理解和优化模型的推理行为至关重要。
为了更形象地理解搜索树,可以参考图3中的Countdown游戏示例。
在这个游戏中,目标是使用给定的数字 (3, 5, 7, 13) 和基本的算术运算 (+, -, ×, ÷) 来得到目标数字24。
树中的每一条从根节点到叶节点的路径都代表一种可能的解题尝试,
而图中标示的绿色路径则代表了一个正确的解决方案。
搜索树的关键组成部分:
- 节点 (Node / State): 树中的每个节点代表问题解决过程中的一个状态 (state)。
在本文中,“节点”和“状态”这两个术语可以互换使用。
根节点 ( sroots) 代表初始问题,
叶节点 ( s∈SH ) 代表一个完整的解决方案尝试(可能是正确的,也可能是错误的)。- 树的结构: 树的高度定义为 H,根节点位于高度0。
每个节点的高度等于其父节点高度加一。
除了叶节点,树中的每个非叶节点都有 B 个子节点。
每个子节点代表模型在当前状态下选择生成的下一个词元 (token) 或句子 (sentence) 的一种可能性。- 路径 (Path): 从根节点到任意一个叶节点的完整路径对应于对问题的一个完整解决方案。
- 节点集合: Sh表示高度为 h (其中 h∈{0,1,…,H) 的所有节点的集合,
表示树中所有节点的集合。显然, |S0|=1 (仅包含根节点),且 |Sh+1|=B⋅|Sh|。树中的总节点数为
- 奖励 (Reward, R(s) ): 当模型的推理过程到达一个叶节点 s∈SH时,会根据该解决方案的质量(例如,是否正确、格式是否规范)获得一个奖励值 R(s)∈[0,1] 。
- 策略 (Policy, π): 策略定义了模型在每个非叶节点(状态)如何选择下一个动作。形式化地,策略是一个从状态空间到动作概率分布的映射: π:⋃h=0H−1Sh→ΔB\pi: \bigcup_{h=0}^{H-1} S_h \to \Delta^B\pi: \bigcup_{h=0}^{H-1} S_h \to \Delta^B 。其中, π(a|s)\pi(a|s)\pi(a|s) 表示在状态 s 时,选择第 a 个子节点的概率。
-状态转移函数 (Transition Function, TTT ): 对于任意状态-动作对 ,(s,a)∈S×[B],T(s,a)∈S(s,a) \in S \times [B],T(s,a) \in S(s,a) \in S \times [B],T(s,a) \in S 表示在状态 s 执行动作 a后转移到的下一个状态(即 s 的第 a 个子节点)。如果 s∈SHs \in S_Hs \in S_H (即 s 是叶节点),则 T(s,a)=∅T(s,a) = \emptysetT(s,a) = \emptyset 。 值函数 (Value Function, VπV\piV\pi ): 策略 π\pi\pi 的值函数 Vπ:S→[0,1]V^\pi: S \to [0,1]V^\pi: S \to [0,1] 给出了从任意状态 s 开始,遵循策略 π\pi\pi 进行决策,最终能够获得的期望累积奖励。对于任意 h0∈{0,1,…,H}h_0 \in {0, 1, \ldots, H}h_0 \in {0, 1, \ldots, H} 和状态 s∈Sh0s \in S_{h_0}s \in S_{h_0} ,其值函数定义为: Vπ(s):=Esh0=s,(sh,ah)h=h0H−1∼π[R(sH)] V^\pi(s) := \mathbb{E}{s{h_0}=s, (s_h, a_h){h=h_0}^{H-1} \sim \pi} [R(s_H)] \ V^\pi(s) := \mathbb{E}{s_{h_0}=s, (s_h, a_h){h=h_0}^{H-1} \sim \pi} [R(s_H)] \ 这里的期望 E[⋅]\mathbb{E}[\cdot]\mathbb{E}[\cdot] 是基于从状态 s 开始,通过策略 π\pi\pi 采样得到的一条完整轨迹 (sh,ah)h=h0H−1(s_h, a_h){h=h_0}^{H-1}(s_h, a_h){h=h_0}^{H-1} 来计算的。具体来说,在每个状态 shs_hs_h ,动作 aha_ha_h 根据 π(⋅|sh)\pi(\cdot|s_h)\pi(\cdot|s_h) 采样得到,然后转移到下一状态 sh+1=T(sh,ah)s{h+1} = T(s_h, a_h)s_{h+1} = T(s_h, a_h) 。 最优策略与最优值函数: 存在至少一个最优策略 π∗\pi*\pi* ,它能够在所有可能的策略中最大化从根节点开始的期望奖励 π∗∈argmaxπVπ(sroot)\pi^* \in \arg\max_{\pi} V\pi(s_{\text{root}})\pi* \in \arg\max_{\pi} V^\pi(s_{\text{root}}) 。最优策略 π∗\pi*\pi* 从根节点开始所能获得的期望奖励记为 V∗:=Vπ∗(sroot)V^* := V{\pi}(s_{\text{root}})V^ := V{\pi}(s_{\text{root}}) 。由于 π∗\pi*\pi 是确定性的,从根节点 s0∗=sroots_0^* = s_{\text{root}}s_0^* = s_{\text{root}} 开始遵循 π∗\pi*\pi* 会生成一条唯一的路径 (s0∗,a0∗,s1∗,a1∗,…,sH∗)(s_0^, a_0^, s_1^, a_1^, \ldots, s_H*)(s_0, a_0^, s_1^, a_1^, \ldots, s_H^*) 直至叶节点。
3.2 统一微调
在理解了LLM推理过程可以被形式化为搜索树之后,现在引入本文的核心贡献——统一微调 (Unified Fine-Tuning, UFT)。传统的微调方法,如监督微调 (SFT) 和强化微调 (RFT),在提升LLM推理能力方面各有侧重和局限。
SFT侧重于“记忆”标准答案,而RFT则鼓励模型“思考”和探索。
UFT旨在巧妙地融合这两种范式,以期达到更优的性能和效率。
3.2.1. 使用hint进行探索
尽管强化微调 (RFT) 在训练大型模型以提升泛化能力方面显示出潜力,但其有效性常常受到稀疏奖励 (sparse reward) 问题的困扰。
对于能力相对较弱的小型模型,它们可能在广阔的搜索空间中难以通过纯粹的探索找到正确的解决方案路径,尤其是在奖励信号非常稀疏的情况下。
这意味着模型可能从未或很少能“偶然”发现高奖励的轨迹,从而无法有效学习。
一些研究也指出,RFT的最终性能往往受限于基础模型本身的能力。如果基础模型缺乏某些关键的推理能力,RFT很难从零开始教会它。
UFT通过在模型的输入中引入提示 (hint) 来指导其探索过程。
- 什么是“hint”? 在UFT中,hint通常是问题描述与部分正确解决方案的拼接。
例如,对于一个多步数学问题,hint可以是解题过程的前几个步骤。- 如何工作? 模型不再从零开始生成解决方案,而是从给定的“问题 + 提示”的上下文中继续生成后续步骤。
- 预期效果: 通过提供部分正确路径,提示显著增加了模型探索到完整正确答案的概率,尤其是在训练初期或模型能力较弱时。这有效地缓解了稀疏奖励问题。
3.2.2 形式化理解:RFT与搜索树的挑战
RFT的任务可以看作是在这个巨大的树中找到一条从根节点通往代表正确答案的叶节点的路径。
然而,对于现实世界的复杂任务(如数学应用题、代码生成等),这个搜索树可能包含天文数字般的节点。
让LLM仅凭自身的探索策略去发现这条隐藏在亿万条路径中的正确路径,效率极低。
更具挑战性的是,在许多RFT设置中,奖励模型只对最终完全正确的解决方案给予高奖励,而对中间步骤或部分正确的方案可能只给予很低甚至零奖励。
这就导致了严重的稀疏奖励问题,模型很难从探索中获得有效的学习信号。
hint长度的动态调整 虽然提示在初期能有效引导探索,但最终目标是让LLM在没有任何提示(即提示长度为零)的情况下独立解决问题。
因此,在训练过程中,提示的长度必须被逐渐缩短,最终完全移除。
3.2.3 现有方法的不足
- 阶段式hint长度缩减:
定期地将提示长度减少一个固定的量。解决方案的长度通常有限,这种固定量的、阶梯式的缩减可能导致模型在相邻训练阶段面临显著的输入分布偏移 (distribution shift)。
想象一下,模型刚刚适应了有3个句子提示的输入,突然提示变成2个句子,这可能导致训练过程不稳定,学习效果下降。- 固定概率的hint长度采样:
在整个训练过程中,从所有可能的提示长度中均匀随机采样一个长度作为当前训练样本的提示。
这种方法虽然避免了剧烈的分布偏移,但在整个训练过程中都持续依赖提示。
这会导致训练分布与评估/测试分布之间的不匹配。因为在实际应用或测试时,模型通常不会获得任何提示。这种不匹配往往导致模型在测试时性能下降。
3.2.4 UFT:平滑的、课程式的提示长度退火
UFT采用了一种更平滑、更符合课程学习思想的策略来动态调整hint长度,避免上面的问题。
- 引入比例因子 p:UFT维护一个动态变量 p∈[0,1],该变量代表了当前训练迭代中,提供的提示占完整解决方案长度的期望比例。
- 余弦退火 (Cosine Annealing): p 的值在整个训练过程中并不是随意设置的,而是根据余弦退火调度器 逐渐从一个较高的初始值平滑地下降到0。
- 基于二项分布的提示长度采样:令 L 为当前样本的完整解决方案的总长度。实际的提示长度 l 并非直接等于 p⋅L,而是从一个以 L 为试验次数、p 为成功概率的二项分布 (Binomial Distribution) 中采样得到。这意味着 lll 的取值范围是 {0,1,…,L,其期望值 E[l]=L⋅p 。
余弦退火和二项分布采样相结合,使得提示长度的变化更加平滑,避免了阶段式缩减带来的突变。
训练初期 p 较大,模型获得较多指导;
随着训练进行 p 减小,模型逐渐被要求独立完成更多推理步骤,符合由易到难的课程学习思想。
随着 p 趋向于0,训练后期模型将越来越多地在无提示或短提示的条件下进行训练,从而更好地适应最终的评估环境。
图4左图展示了一个UFT的提示示例,它采用了TinyZero (Pan et al., 2025)的提示模板,该模板与Deepseek-R1 (DeepSeek-AI et al., 2025) 中使用的类似。提示由完整解决方案的一部分(例如,前几个解题步骤)构成。在训练过程中,问题描述和这个提示被拼接起来作为模型的输入。
图4右图对比了UFT和阶段式提示长度调整策略在Qwen2.5-0.5B模型上的训练得分曲线。可以看出,UFT的曲线(紫色)比阶段式(蓝色)的更平滑且收敛更快。
RFT (cosine)指的是仅使用RFT,但其提示长度调度采用UFT提出的余弦退火机制。
在Qwen2.5-0.5B上,RFT (cosine) 的性能优于R³(采用均匀采样提示长度),但仍不如SFT-RFT。
在Llama-3.2-1B上,RFT (cosine) 的表现甚至不如单独的SFT。
这些结果暗示,仅仅改进提示的引入方式可能还不够。
如果模型的预训练知识库中缺乏某些关键的推理能力,或者模型无法有效地从提示中“学习”到通用的推理模式,那么即使有巧妙的提示策略,性能提升也可能有限。
这自然地引出了UFT的第二个核心创新点——修改训练目标函数,以更直接地从提示中学习
3.2.5 目标函数修改
上一节讨论的“hint引导的探索”主要解决了RFT中“看都看不到正确答案”的问题,它使得LLM能够更频繁地接触到正确的解决方案路径。然而,仅仅接触到还不够,模型还需要有效地从这些接触中学习到新的知识和推理模式。
传统的RFT(即使是带提示的)在学习新知识方面效率可能不高。这是因为其学习信号主要来自于最终的标量奖励。一条完整的轨迹,即使是正确的,也只提供了一个“正确/不正确”的信号,这远不如SFT中逐词元/逐句子的监督信号来得信息密集。
SFT通过最大化标准答案的对数似然,能够高效地让模型“记忆”解决方案,从而快速获取知识。但其代价往往是泛化能力不足,容易在未见过的问题上表现不佳。
UFT的目标是取二者之长:既要利用RFT的探索能力和泛化潜力,也要借鉴SFT高效学习的特点。为此,UFT在RFT的目标函数中引入了一个额外的对数似然项 (log-likelihood term),这个项专门针对提供的“提示”部分。
2.1 符号约定 s0=sroots_0 = s_{\text{root}}s_0 = s_{\text{root}} 表示搜索树的根节点。 (sh,ah)h=0H−1∼π(s_h, a_h){h=0}^{H-1} \sim \pi(s_h, a_h){h=0}^{H-1} \sim \pi 表示从根节点开始,根据当前策略 π\pi\pi 采样得到的一条完整轨迹。其中 ah∼π(⋅|sh)a_h \sim \pi(\cdot|s_h)a_h \sim \pi(\cdot|s_h) 是在状态 shs_hs_h 选择的动作, sh+1=T(sh,ah)s_{h+1} = T(s_h, a_h)s_{h+1} = T(s_h, a_h) 是转移到的下一个状态。 Jvalue((sh,ah)h=0H−1)J^{\text{value}}((s_h, a_h){h=0}{H-1})J{\text{value}}((s_h, a_h){h=0}^{H-1}) 代表与期望奖励相关的目标函数部分。在实际应用中,这通常是策略梯度算法(如PPO、GRPO等)中的优势函数乘以奖励的项。 πref(⋅|sh)\pi{\text{ref}}(\cdot|s_h)\pi{\text{ref}}(\cdot|s_h) 参考策略,通常是预训练模型或者一个固定的先前策略,用于正则化,防止当前策略偏离过远。 (sh∗,ah∗)h=0H−1∼π∗(s_h^, a_h*)_{h=0}{H-1} \sim \pi*(s_h, a_h*)_{h=0}{H-1} \sim \pi^* 表示从数据集中获得的一条人工标注的、代表最优(或高质量)解决方案的轨迹。 lll 表示当前训练样本中,提示的实际长度 (即轨迹 (sh∗,ah∗)(s_h^, a_h*)(s_h, a_h^) 的前 lll 个步骤 s0∗,…,sl−1∗s_0^, \ldots, s_{l-1}*s_0, \ldots, s_{l-1}^ 和 a0∗,…,al−1∗a_0^, \ldots, a_{l-1}*a_0, \ldots, a_{l-1}^* 被用作提示)。2.2 UFT目标函数 标准RFT目标函数为 JRFT=E(sh,ah)∼π[Jvalue((sh,ah))−β∑h=0H−1KL(π(⋅|sh)||πref(⋅|sh))] J^{\text{RFT}} = \mathbb{E}{(s_h, a_h) \sim \pi} \left[ J^{\text{value}}((s_h, a_h)) - \beta \sum{h=0}^{H-1} \text{KL}(\pi(\cdot|s_h) || \pi^{\text{ref}}(\cdot|s_h)) \right] \ J^{\text{RFT}} = \mathbb{E}{(s_h, a_h) \sim \pi} \left[ J^{\text{value}}((s_h, a_h)) - \beta \sum{h=0}^{H-1} \text{KL}(\pi(\cdot|s_h) || \pi^{\text{ref}}(\cdot|s_h)) \right] \ 这个目标是最大化期望奖励,同时通过KL散度项保持策略与参考策略的接近。 UFT的目标函数建立在带提示的RFT框架之上,并引入了针对提示部分的监督学习项。 核心创新:提示的对数似然项JUFT=E(sh,ah)∼πstarting from hint[Jvalue((sh,ah)h=lH−1)−β∑h=lH−1KL(π(⋅|sh)||πref(⋅|sh))−β′∑h=0l−1logπ(ah∗|sh∗)⏟UFT核心创新:提示的对数似然项] J^{\text{UFT}} = \mathbb{E}{\substack{(s_h, a_h) \sim \pi \ \text{starting from hint}}} \left[ J^{\text{value}}((s_h, a_h){h=l}^{H-1}) - \beta \sum_{h=l}^{H-1} \text{KL}(\pi(\cdot|s_h) || \pi^{\text{ref}}(\cdot|s_h)) \underbrace{- \beta’ \sum_{h=0}^{l-1} \log \pi(a_h*|s_h)}{\text{UFT核心创新:提示的对数似然项}} \right] \ J^{\text{UFT}} = \mathbb{E}{\substack{(s_h, a_h) \sim \pi \ \text{starting from hint}}} \left[ J^{\text{value}}((s_h, a_h){h=l}^{H-1}) - \beta \sum{h=l}^{H-1} \text{KL}(\pi(\cdot|s_h) || \pi^{\text{ref}}(\cdot|s_h)) \underbrace{- \beta’ \sum_{h=0}^{l-1} \log \pi(a_h*|s_h)}{\text{UFT核心创新:提示的对数似然项}} \right] \ 该目标函数的前两项是强化学习的部分,后一部分是SFT。 Jvalue((sh,ah)h=lH−1)J^{\text{value}}((s_h, a_h){h=l}{H-1})J{\text{value}}((s_h, a_h){h=l}^{H-1}) 是标准的强化学习目标,即最大化从提示结束处开始,由模型自主生成的轨迹部分的期望奖励。 −β∑h=lH−1KL(π(⋅|sh)||πref(⋅|sh))- \beta \sum{h=l}^{H-1} \text{KL}(\pi(\cdot|s_h) || \pi^{\text{ref}}(\cdot|s_h))- \beta \sum_{h=l}^{H-1} \text{KL}(\pi(\cdot|s_h) || \pi^{\text{ref}}(\cdot|s_h)) 这一项是针对模型自主生成部分的KL散度正则化,作用与标准RFT中类似。 −β′∑h=0l−1logπ(ah∗|sh∗)- \beta’ \sum_{h=0}^{l-1} \log \pi(a_h*|s_h)- \beta’ \sum_{h=0}^{l-1} \log \pi(a_h*|s_h) 是UFT的关键创新。它直接最大化模型生成所提供提示(即标注轨迹 (sh∗,ah∗)(s_h^, a_h*)(s_h, a_h^) 的前 lll 步)的对数概率。这等同于在提示部分进行监督学习,鼓励模型“模仿”并“记忆”高质量的推理步骤。 当提示长度 l=0 (即 p=0,完全无提示): 此时, ∑h=0l−1logπ(ah∗|sh∗)\sum_{h=0}^{l-1} \log \pi(a_h*|s_h)\sum_{h=0}^{l-1} \log \pi(a_h*|s_h) 项消失。UFT的目标函数就退化为标准的强化微调 (RFT) 目标。 当提示长度 l=H (即 p=1,提示是完整的解决方案): 此时,强化学习部分 JvalueJ{\text{value}}J{\text{value}} 和对应的KL散度项可能不再起主导作用(或者说,由于整个轨迹都是给定的,探索空间为零,奖励信号变得不那么重要)。目标函数主要由 ∑h=0H−1logπ(ah∗|sh∗)\sum_{h=0}^{H-1} \log \pi(a_h*|s_h)\sum_{h=0}^{H-1} \log \pi(a_h*|s_h*) 主导,这本质上就是监督微调 (SFT) 的目标——最大化标准答案的对数似然。 UFT通过动态调整提示长度 lll (由 p 控制),实现了从SFT主导到RFT主导的平滑过渡。训练初期 p 较大,SFT作用更强,帮助模型快速学习基础模式;后期 p 减小,RFT作用增强,鼓励模型探索和泛化。 图5的实验结果显示,在小型模型 (如Llama-3.2-1B) 上,仅仅使用带余弦退火提示的RFT (即RFT (cosine)),其性能甚至不如SFT或SFT-RFT。然而,当引入了UFT的目标函数修改后,UFT的性能能够与SFT-RFT相媲美,甚至在某些情况下超越。这有力地证明了目标函数中的监督学习部分对于帮助模型获取新知识、提升性能上限至关重要。 它使得UFT不仅仅是“更聪明地探索”,更是“在探索中学习”。
4 DFT-----关于SFT的泛化:从强化学习的角度进行奖励修正
论文:On the Generalization of SFT: A Reinforcement Learning Perspective with Reward Rectification
代码:https://github.com/yongliang-wu/DFT
4.1 概述
SFT通常与强化学习(RL)方法相比泛化能力有限。
RL利用明确的奖励或验证信号,使模型能够探索多种策略,从而实现更强的泛化能力。然而,RL方法通常需要大量的计算资源,对超参数调整敏感,并且依赖于奖励信号的可用性,这些条件在实践中并不总是可行的。即使RL可行,SFT在快速获得RL可能难以独立发现的专家行为模式方面仍具有优势
揭示了标准SFT梯度隐含地编码了一个有问题的奖励结构,这可能会严重限制模型的泛化能力
为了解决这一问题,我们提出了动态微调(DFT),通过动态地用每个标记的概率重新缩放目标函数来稳定每个标记的梯度更新。值得注意的是,这一单行代码的更改在多个具有挑战性的基准测试和基础模型上显著优于标准SFT,显示出显著改进的泛化能力。此外,我们的方法在离线RL设置中也显示出具有竞争力的结果,提供了一个更有效的替代方案。这项工作将理论洞察与实际解决方案相结合,显著提升了SFT的性能。
4.2 基础知识
SFT 最小化句子级别的交叉熵:
强化学习(RL)
设 y 是从策略 π θ (⋅∣x) 中采样得到的响应,对于查询 x。给定一个奖励函数 r(x,y)∈R,策略目标为:
4.3 通过重要性采样将 SFT 梯度重写为策略梯度
SFT 梯度在公式 (2) 中是在固定的演示分布下计算的。我们通过插入一个比较专家(狄拉克δ)分布与模型分布的重要性权重,将其转换为一个策略期望。
定义辅助变量:
重新组织公式 并使用上述辅助变量,我们得到:
这种形式的 SFT 梯度现在与策略梯度公式非常接近。因此,我们可以看到,传统的 SFT 正好是一个策略梯度,其奖励是一个匹配专家轨迹的指示函数,但被重要性权重 1/π θ偏差。
鉴于 SFT 设置中奖励信号不可避免的稀疏性,我们识别出重要性采样权重 1/π θ是 SFT 相对于 RL 泛化能力差的根本原因。当模型为专家响应分配低概率时,权重 w 变得很大,从而导致从 RL 角度来看,奖励估计的方差无界且很高。
这种大方差问题由于奖励函数的极端稀疏性而加剧——因为 r(x,y)=1[y=y∗] 只有在模型完全匹配专家输出时才非零。
因此,优化倾向于过拟合到罕见的精确匹配演示,削弱了模型超出训练数据的泛化能力。
4.4 通过动态重权进行奖励修正
为了中和在将 SFT 视为 RL 目标时识别出的奖励偏差问题,我们通过乘以策略概率 1/w 的修正逆比来动态地重权奖励。得到的“动态微调”梯度为:
其中,sg(⋅) 表示停止梯度操作符,确保梯度不会通过奖励缩放项 w 传播。
为了便于后续方程的转换,我们直接将 1/w 写为 π θ (y ∗ ∣x),而不是 π θ (y∣x),因为公式 (5) 或 (6) 中的指示函数会使所有 y不等于y ∗ 的情况都为 0。
由于梯度不会流动,修正后的 SFT 损失也变成了一个简单的重权损失,称为动态微调(DFT)。
然而,在实践中,计算整个轨迹的重要性权重可能会导致数值不稳定。
解决这一问题的常见方法是简单地在标记级别应用重要性采样,正如 PPO(Schulman等人,2017)中所采用的。
这导致了最终的 DFT 损失版本:
需要注意的是,这种修正后的 SFT(在 RL 形式中)的奖励,即 DFT,现在对所有专家轨迹均匀地为 1。
这类似于当代基于验证的奖励方法 RLVR(DeepSeek-AI等人,2025),该方法为所有正确样本分配统一奖励。
因此,它避免了对特定低概率参考标记的过度集中,从而实现更稳定的更新和改进的泛化能力,而无需引入任何额外的采样或奖励模型。
4.5 实验
4.5.1 五个最先进的大型语言模型在五个数学推理基准测试
(Math500、Minerva Math、Olympiad Bench、AIME 2024和AMC 2023)上的平均@16准确率。每个模型在基准测试中的最佳性能用粗体表示。
4.5.2 DFT 的学习效率和收敛特性
图1揭示了 DFT 和标准 SFT 在所有数学推理基准测试中 Qwen2.5-Math-1.5B 的学习动态之间的明显差异。
与 SFT 相比,我们的方法展示了三个明显的优点:
(1)更快的收敛,在大多数基准测试中在前 120 个训练步骤内达到峰值性能;
(2)更好的早期性能,DFT 在前 10-20 步内已经超过了 SFT 的最佳最终准确率;
(3)更高的样本效率,始终需要较少的更新即可达到相对最优的结果。
这种加速的收敛表明,DFT 中的动态重权机制导致了更有信息量的梯度更新,引导模型在训练早期就走向高质量的解决方案。它还表明,DFT 帮助避免了标准 SFT 中经常遇到的优化平台期或易受噪声
4.5.3 DFT 与重要性加权 SFT(iw-SFT)的比较
DFT 在大多数模型家族和基准测试中优于同期的重要性加权 SFT(iw-SFT)。
尽管在 Qwen2.5-Math-7B 上 iw-SFT 略微优于我们的方法(+2.45),但这种改进在不同数据集上并不一致。
特别是在 LLaMA 模型家族中,iw-SFT 显示出鲁棒性有限的迹象。对于 LLaMA-3.2-3B,iw-SFT 在 Math500(5.13 对比 8.65)和 AMC23(2.03 对比 3.13)上的表现不如标准 SFT。同样,对于 LLaMA-3.1-8B,iw-SFT 在 Minerva Math(4.31 对比 5.78)和 AMC23(7.34 对比 8.28)上的表现不如 SFT。
这些案例表明,iw-SFT 可能在特定训练信号之外泛化时遇到困难,甚至可能在分布偏移或更难的基准测试中降低性能。相比之下,DFT 在几乎所有数据集上一致地优于基础模型和 SFT,包括那些 iw-SFT 失败的数据集。这些结果强调了 DFT 在多样化数学推理场景中更好的泛化能力。
此外,iw-SFT 通过需要一个单独的参考模型来计算重要性权重,增加了额外的计算开销,而 DFT 直接从模型的标记概率动态推导出自己的权重,从而实现更高效的训练过程。
4.5.4 DFT 与DPO,PPO,GRPO,RFT的对比
使用拒绝采样奖励信号在离线强化学习设置中对五个数学推理基准进行评估的结果。DFT 实现了最佳的整体性能,超过了离线(RFT、DPO)和在线(PPO、GRPO)基线,证明了其作为一种简单而有效的微调策略的效率和强度。
这些结果突显了 DFT 作为一种简单而有效的微调策略的优势。尽管它缺乏迭代奖励建模或环境交互,但在某些规模的训练集中,它比离线方法(如 DPO/RFT)和在线策略优化算法(如 PPO/GRPO)提供了更强的学习信号。这表明 DFT 可以作为一种更高效和可扩展的替代方案,特别是在偏好监督可用但奖励建模或在线响应采样昂贵或不切实际的领域。
4.5.5 模型训练差异分析
SFT 的影响:
SFT 倾向于均匀地增加标记概率,将整个分布向更高置信度的方向移动,但主要针对低概率和最低概率的标记。最高概率标记部分几乎不增加。这种变化使得模型对训练数据的拟合更加紧密,但可能会导致过拟合,尤其是在训练数据有限的情况下。
DFT 的影响:
与 SFT 形成鲜明对比的是,DFT 展现出一种极化效应:它显著提高了部分标记的概率,同时积极抑制其他标记的概率。这导致了双峰分布,更多标记占据了最高和最低概率的区间。这种分布表明 DFT 不仅增强了模型对关键信息的把握,还通过抑制不重要的标记来减少噪声。这种策略有助于模型在面对复杂任务时保持泛化能力,避免因过度拟合训练数据中的细节而失去对新数据的适应性。
其他强化学习方法的影响:
其他强化学习方法,如 DPO、GPPO 和 PPO,也显示出与 DFT 类似的趋势,尽管其程度较轻。这些方法通过奖励信号引导模型优化,使得模型在探索和利用之间找到平衡,从而在一定程度上避免了 SFT 中可能出现的过拟合问题。
低概率标记的分析:
我们进一步分析了属于最低概率区间的词汇,发现它们通常是连接词或标点符号,如 “the”、“let”、“,”、“.” 等。这些词汇在语言中主要承担语法功能,而非主要的语义内容。DFT 通过抑制这些标记的概率,使模型能够更专注于携带核心语义信息的标记,从而提高模型对关键内容的理解和生成能力。
- 结论
这些结果表明,为了实现稳健的学习,模型不应试图以均匀的置信度拟合所有标记。对于大型语言模型来说,降低对仅承担语法功能的标记的拟合优先级,而更多地关注携带主要语义内容的标记,可能更为有益。这一概念类似于人类教学,学生被教导专注于实质性概念,而不是完善常见连接词的使用。DFT 通过这种方式,使模型能够更好地平衡对训练数据的拟合和对新数据的泛化能力,从而在复杂任务中表现出更强的适应性和鲁棒性。
4.5.6 训练超参数消融研究
为了评估我们的方法(DFT)相对于关键训练超参数的鲁棒性和敏感性,我们使用 Qwen2.5-Math-1.5B 基础模型进行了一项消融研究,重点关注学习率和批量大小。这项分析旨在回答两个核心问题:(1)DFT 和 SFT 之间的性能差距是否仅由于 SFT 中的次优超参数配置?(2)这两种方法对学习率和批量大小的变化有多敏感?
学习率的影响:
我们对 DFT 和 SFT 在四个学习率上进行了评估:2e-4、1e-4、5e-5 和 1e-5。如图3(左)所示,两种方法对学习率都有一定程度的敏感性。DFT 在所有配置下均一致优于 SFT,表明性能差距不能仅仅归因于 SFT 中的次优超参数选择。对于两种方法,中等学习率(1e-4 和 5e-5)均取得了最佳结果,而较低(1e-5)和较高(2e-4)的值均导致了明显的性能下降。这些发现突出了在基于梯度的微调中适当调整学习率的重要性。
批量大小的影响:
我们进一步评估了批量大小的影响,测试了从32到256的值。如图3(右)所示,DFT 和 SFT 在整个批量大小范围内均表现出相对稳定的性能。虽然观察到一些小的波动,但没有一致的趋势表明较大的或较小的批量显著影响最终的准确率。这表明在本设置中,批量大小不是两种方法的主导因素。这表明在实际应用中,使用默认值可能就足够了。























657

被折叠的 条评论
为什么被折叠?



