作者:一木不
地址:
https://zhuanlan.zhihu.com/p/2004262797710738371
我们在此讨论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 Disitllation好理解,核心区别是student策略和teacher策略在不同的数据集下进行对齐。SFT到RL怎么理解呢?我的想法是RL相当于On-Policy SFT,可以从策略梯度上得到论证。
01
Objective回顾
1. SFT(Off-Policy SFT)
SFT的objective旨在最大化在Off-Policy数据集上的负对数似然:
展开有:
2. Off-Policy Distillation
Off-Policy Distillation旨在最小化学生策略
与教师策略
在固定数据集
上的KL散度:
展开有:
KL散度很多种,也有很多研究,最常见的是Forward KLD。在Forward KLD下,KL散度等价为交叉熵:
3. RL (本质上是On-Policy SFT)
RL的objective是最大化在一个环境下的奖励:
特别地,GRPO的reward估计采用sequence-level的组内优势:
其中
是重要性采样比率。
4. On-Policy Distillation
On-Policy Distillation旨在最小化学生策略
与教师策略
在学生策略自身生成的轨迹分布上的KL散度:
展开为:
采用Forward KL,但是有策略梯度不能直接写成CE:
但是On-Policy通常不考虑这一项策略梯度(认为采样过程是stop gradient的),于是:
02
梯度对比
直观上上面四个目标联系少,我们从梯度的角度考虑四个的关系
1. SFT
Objective:
梯度推导:
2. Off-Policy Distillation
Objective:
梯度推导:
3. RL
Objective:
梯度推导(策略梯度定理,分布中有 θ ):
GRPO:
其中
是t时刻的(组内)优势估计。
4. On-Policy Distillation
Objective:
梯度推导(策略梯度定理,分布中有θ ):
记
理论上上面是KL,但是简化成CE了。则梯度可以化简为:
但是第一项通常不优化(采样过程在蒸馏下被认为是stop gradient的),因此:
5. 结论
SFT与Off-Policy Distillation:在
的基础上,SFT直接使用one-hot,Off-Policy Disitllation则是使用教师模型输出的分布进行加权。
RL与On-Policy Distillation:RL直接使用Reward对
进行one-hot加权,只有被采样到的才有reward,而On-Policy Distillation则更加密集。
【注】:本文讨论Forward KL,因此是使用teacher加权,如果是Reverse KL则是student加权,并且后面还会有一项。
03
将梯度统一到On-Policy下
SFT和Off-Policy Distillation的期望都是从Off-Policy的Data中采样,和On-Policy不太可比,因此我们使用重要性采样进行变形:
其中
是指示函数。
SFT 梯度可重写为:
Off-Policy Distillation梯度可重写为:
RL的梯度为:
On-Policy Distillation的梯度为:
所以上面四个目标的不同之处在于,
前面的内容不同。SFT和RL是稀疏的,Distillation是稠密的。SFT可以视为奖励模型是
的稀疏RL [4]。
04
补充在Reverse KL下
Distillation策略的梯度
Off-Policy Distillation梯度可重写为:
On-Policy Distillation的梯度为:
也是含有
,只是前面所有的加权不一样。
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)