我们在此讨论SFT、Off-Policy Distillation、RL、On-Policy Distillation之间的联系和区别。
- 在RL没火的时候,我们提到distillation几乎都是Off-Policy Distillation。SFT和Off-Policy Distillation都是Off-Policy的,并且Off-Policy Distillation训出的模型肯定比SFT好。
- RL火了之后,我们提到distillation逐渐变成了全部都是On-Policy Distillation。RL和On-Policy Distillation 都是On-Policy的,并且On-Policy Distillation比RL更有优势。
Off-Policy Distillation到On-Policy Distillation好理解,核心区别是student策略和teacher策略在不同的数据集下进行对齐。那么SFT到RL怎么理解呢?我的想法是RL相当于On-Policy SFT,这可以从策略梯度上得到论证。
Objective回顾
1. SFT(Off-Policy SFT)
SFT的objective旨在最大化在Off-Policy数据集上的负对数似然:

展开有:

2. Off-Policy Distillation
Off-Policy Distillation旨在最小化学生策略 π_θ 与教师策略 π_teacher 在固定数据集 D 上的KL散度:

展开有:

KL散度有很多种,也有很多研究,最常见的是Forward KLD。在Forward KLD下,KL散度等价为交叉熵:

3. RL (本质上是On-Policy SFT)
RL的objective是最大化在一个环境下的奖励:

特别地,GRPO的reward估计采用sequence-level的组内优势:

其中 ρ_t(θ) 是重要性采样比率。
4. On-Policy Distillation
On-Policy Distillation旨在最小化学生策略 π_θ 与教师策略 π_teacher 在学生策略自身生成的轨迹分布上的KL散度:

展开为:

采用Forward KL,但是有策略梯度不能直接写成CE:

但是On-Policy通常不考虑这一项策略梯度(认为采样过程是stop gradient的),于是:

梯度对比
直观上上面四个目标联系不大,但如果我们从梯度的角度来分析,就能看出它们之间的关系。
1. SFT
Objective:

梯度推导:

2. Off-Policy Distillation
Objective:

梯度推导:

3. RL
Objective:

梯度推导(策略梯度定理,分布中有 θ ):

GRPO:

其中 Â(x, y≤t) 是t时刻的(组内)优势估计。
4. On-Policy Distillation
Objective:

梯度推导(策略梯度定理,分布中有 θ ):

记

理论上上面是KL,但是简化成CE了。则梯度可以化简为:

但是第一项通常不优化(采样过程在蒸馏下被认为是stop gradient的),因此:

5. 结论
SFT与Off-Policy Distillation: 在 ∇_θ log π_θ 的基础上,SFT直接使用one-hot,Off-Policy Distillation则是使用教师模型输出的分布进行加权。
RL与On-Policy Distillation: RL直接使用Reward对 ∇_θ log π_θ 进行one-hot加权,只有被采样到的token才有reward,而On-Policy Distillation则更加密集。
【注】: 本文讨论Forward KL,因此是使用teacher加权。如果是Reverse KL则是student加权,并且后面还会有一项。
将梯度统一到On-Policy下
SFT和Off-Policy Distillation的期望都是从Off-Policy的Data中采样,和On-Policy不太可比,因此我们使用重要性采样进行变形:

其中 I(y=y*) 是指示函数。
SFT 梯度可重写为:

Off-Policy Distillation梯度可重写为:

RL的梯度为:

On-Policy Distillation的梯度为:

所以上面四个目标的不同之处在于,∇_θ log π_θ 前面的权重不同。SFT和强化学习是稀疏的(只有特定路径有非零权重),Distillation是稠密的(对所有可能的token都有权重)。SFT可以视为奖励模型是 I(y=y*) 的稀疏RL。
补充在Reverse KL下Distillation策略的梯度
Off-Policy Distillation梯度可重写为:

On-Policy Distillation的梯度为:

其核心项也是含有 ∇_θ log π_θ ,只是前面的加权方式不一样。
Reference
[1] Self-Distilled Reasoner: On-Policy Self-Distillation for Large Language Models(On-policy和SFT)
[2] Self-Distillation Enables Continual Learning(On-policy和SFT)
[3] Reinforcement Learning via Self-Distillation(On-policy和RL)
[4] On the Generalization of SFT: A Reinforcement Learning Perspective with Reward Rectification(SFT和RL)