当“教师模型”不再高高在上,而是与学生模型并肩作战,甚至从同一片数据中共同成长——在线策略蒸馏正在重新定义大模型的知识传递方式。
引言
传统知识蒸馏(Knowledge Distillation, KD)通常遵循一个固定的流程:先在大量数据上训练一个庞大的教师模型,然后让轻量级的学生模型去模仿教师的输出。教师是静态的、事后的、高高在上的。
然而,随着大模型(LLM)规模的爆炸式增长,这种离线、非策略的蒸馏模式逐渐显露出瓶颈:教师模型无法感知学生当前的弱点,学生也无法获得“量身定制”的教学信号。于是,在线策略蒸馏(On-Policy Distillation, OPD)应运而生,成为大模型轻量化与持续进化中的一个关键范式。
一、什么是在线策略蒸馏?
在线策略蒸馏的核心特征可以概括为三个关键词:在线(Online)、策略(On-Policy)、蒸馏(Distillation)。
在线:教师与学生模型在同一轮训练中动态更新,而非教师预先训练好并固定。
策略:学生模型用于生成当前轮次交互数据(如同策略强化学习中的“当前策略”),教师基于这些学生“亲身经历”的样本进行指导或共同学习。
蒸馏:最终目标仍是将一个相对更强或更稳定的模型的知识,迁移到更高效的学生模型中。
在实践中,OPD 常表现为以下几种典型架构:
双模型协同学习:一个大模型(教师)与一个小模型(学生)同时训练,教师基于学生当前产出的数据生成软标签,学生同时拟合真实标签和教师的软标签。
自蒸馏:同一个模型的不同时刻或不同深度层互为师生,如将模型早期输出作为后期输出的监督信号。
角色动态切换:教师模型可以与学生模型同步更新(如每隔若干步用学生参数更新教师),或采用移动平均(EMA)的方式维持一个更稳定的教师。
与离线蒸馏的关键区别如下表所示:
| 维度 | 离线蒸馏 | 在线策略蒸馏 |
|---|---|---|
| 教师更新 | 固定 | 动态更新 |
| 训练数据来源 | 独立数据集 | 学生当前策略采样 |
| 监督信号 | 教师对所有样本的固定输出 | 教师对“学生遇到的样本”的输出 |
| 适应能力 | 离线优化,无法针对学生弱点 | 自适应指导学生当前的短板 |
二、核心方法与实现路径
2.1 基于协同训练的 OPD
最经典的方法如Deep Mutual Learning (DML)中,多个模型从零开始共同学习,彼此作为教师。在大模型场景下,通常固定一个较强(或较大)的模型作为锚点,小模型通过蒸馏损失与真实损失联合优化。
2.2 基于 EMA 教师的 OPD
Mean Teacher范式被广泛用于大模型的在线蒸馏:学生模型通过梯度更新,教师模型则通过学生的指数移动平均(EMA)得到。教师相对稳定又能缓慢吸收学生的进步,避免了双模型同时训练带来的震荡。
2.3 在线策略蒸馏 + RL
在大模型与强化学习结合的场景(如 RLHF、推理时微调)中,OPD 被用来压缩策略网络。具体做法:
学生策略在线与环境交互。
教师策略(通常更大或经过更多训练)为学生的动作轨迹提供软标签或优势权重。
学生同时优化 RL 目标(如 PPO)与蒸馏损失。
2.4 自生成数据蒸馏
学生模型在推理过程中产生的正确或错误样例,被实时喂给教师进行评估,教师给出更精细的反馈(如逐步推理过程、修正建议),再用于更新学生。这种方法尤其适用于代码生成、数学推理等需要高质量思维链的任务。
三、核心优势
1.自适应教学,精准补短
传统蒸馏中,教师对所有样本一视同仁。在线策略蒸馏中,学生遇到什么困难(例如在某个子任务上连续出错),教师就能针对这些样本提供更强的监督信号。这是离线蒸馏无法实现的“因材施教”。
2.缓解分布漂移
在持续学习或在线服务场景中,数据分布会随时间变化。离线蒸馏依赖的固定数据集可能很快过时,而 OPD 中学生与教师共同适应新分布,蒸馏信号始终与当前数据分布对齐。
3.降低教师计算开销
离线蒸馏需要先用大规模算力训练好教师,再额外跑一次蒸馏流程。OPD 允许教师与学生同步训练,甚至在自蒸馏模式下无需第二个独立模型,整体训练预算反而更低。
4.适用于策略相关的任务
在 RL 或对话生成等“策略”至关重要的任务中,离线蒸馏往往忽略“学生自己采取行动后的结果”。OPD 直接在学生的策略分布上做蒸馏,保留了因果链和决策依赖,蒸馏出的学生策略更鲁棒。
四、问题与挑战
1.训练稳定性问题
在线同时更新教师和学生,容易形成正反馈震荡:学生学错 → 教师被污染 → 教师教错 → 学生更错。需要精心设计 EMA、学习率调度、梯度截断等手段来维持稳定。
2.教师模型可能“过早”退化
如果教师与学生共享参数或更新过于频繁,教师的“先进性”会迅速丧失,蒸馏退化为两个弱模型的相互模仿。实践中常采用慢速更新教师(如每隔 100 步同步一次)或维持一个独立的、冻结周期较长的大模型。
3.样本效率并未必然提升
OPD 虽然自适应,但如果学生初始策略极差,采集到的数据质量也极低。教师在这些低质量数据上提供的监督信号,可能不如精心构造的离线数据集有效。部分场景下 OPD 需要更多的环境交互次数才能收敛。
4.评价与对比困难
离线蒸馏有明确的测试集和固定的教师基线。而 OPD 中教师和学生共同演化,很难剥离出“蒸馏方法”本身的贡献 vs “协同训练带来的额外数据多样性”的贡献。这导致论文中的 SOTA 结果有时难以复现。
5.工程复杂度高
需要维护两个(或更多)模型的训练流程、数据流和控制逻辑。在大模型参数量达到百亿级别时,双模型在线蒸馏的显存和通信开销会显著高于离线蒸馏。
五、典型应用场景
| 场景 | 为什么需要 OPD | 常见做法 |
|---|---|---|
| 代码生成大模型压缩 | 学生模型需适应真实 API 调用序列 | 在线执行代码,根据执行结果由教师重写推理路径 |
| 对话系统持续学习 | 用户意图随时间漂移 | 在线日志采样,教师模型动态调整软标签分布 |
| RLHF 策略蒸馏 | 奖励模型与策略分布耦合 | 策略采样 → 奖励模型打分 → 大模型作为教师修正动作 |
| 边缘部署前微调 | 目标设备资源有限,无法离线蒸馏 | 在目标环境或仿真器中在线交互蒸馏 |
六、未来展望
在线策略蒸馏本质上是对“教与学”过程的一种更高保真度的模拟:学生在哪里跌倒,教师就在哪里扶起。随着大模型向持续进化、在线交互、个性化适配方向发展,OPD 有望成为模型轻量化的主流技术之一。
但仍需解决几个关键问题:
更稳定的双模型协同算法:如引入对比学习或一致性正则化。
自适应采样策略:让学生主动请求教师的帮助,而非在所有样本上都蒸馏。
理论理解:建立 OPD 的泛化误差分析,解释其在哪些条件下优于离线蒸馏。
结语
在线策略蒸馏不是对传统蒸馏的简单修补,而是一种教学哲学的转变——从“编撰好教科书”转向“现场辅导”。它让大模型的压缩不再是一次性的离线压缩,而是嵌入到模型的生命周期中,成为持续学习与动态适应的一部分。
当然,它也带来了新的工程与算法挑战。是否采用 OPD,取决于你的任务是否具备“策略耦合、分布漂移、在线交互”等特征。如果只是静态分类任务,传统离线蒸馏依然简单高效;而在对话、推理、决策、代码等前沿领域,在线策略蒸馏正悄然成为标配。
未来,也许不会再有独立的“蒸馏阶段”——训练、蒸馏、推理,将融为一体。