论文标题:
Continual Distillation of Teachers from Different Domains
发表日期:
2026年05月
发表单位:
The University of Tokyo, National Institute of Informatics, Indiana University Bloomington, Japanese-French Laboratory for Informatics, CNRS
原文链接:
https://arxiv.org/pdf/2605.04059.pdf
开源代码链接:
https://github.com/Nicolas1203/continual_distillation
项目链接:
https://github.com/Nicolas1203/continual_distillation
持续蒸馏:学生模型如何从不断更新的“导师”序列中学习?
这篇论文最有意思的地方,不是“蒸馏”本身,而是把蒸馏这件事从“只跟一个老师学”改成了“老师还会换班”。以前的知识蒸馏,默认学生模型面对的是一个固定老师;而这篇工作提出的 持续蒸馏(Continual Distillation, CD),则是让学生模型按顺序从一串教师模型里学习,而且后面的老师来了,前面的老师就“不可见”了。这听起来像学校里不断换代课老师,但教材还不能翻旧账。更现实一点说,论文瞄准的是一种很像大模型时代的场景:模型越来越大,存储和访问成本越来越高,旧版本老师模型可能因为接口更新、权限限制、存储压力而逐渐不可用。于是,问题就变成了:如何让一个学生模型,持续吸收不同领域老师的知识,又尽量不把前面学到的东西忘掉?图4:Self External Data Distillation(SE2D)整体流程图。学生模型一边跟当前教师蒸馏,一边拿自己上一个阶段的检查点,在外部数据上做“自我蒸馏”,目的是稳住那些容易被后续老师冲掉的旧知识。从工程视角看,这个设定其实很接地气。现实里很多团队并不是“从零训练一个万能模型”,而是不断接入新的模型、不同版本的服务、不同域的数据能力。问题不是“有没有老师”,而是“老师太多,且不能同时抱住”。所以这篇工作并不是在玩概念,而是在补一个很真实的空缺:数据会流动,老师也会流动,但学生还得活下去。
输入:教师序列 T1, T2, …, TN;固定蒸馏数据 D = Di ∪ De
初始化学生模型 S
对于每个阶段 t = 1 到 N:
1) 用当前教师 Tt 在 D 上对学生 S 做蒸馏
2) 若 t > 1,则取上一个学生检查点 S(t-1)
3) 仅在外部数据 De 上,对 S 与 S(t-1) 做自蒸馏约束
4) 更新学生参数,进入下一阶段
输出:最终学生模型 S
[1] Nicolas Michel, Maorong Wang, Jiangpeng He, Toshihiko Yamasaki. Continual Distillation of Teachers from Different Domains. arXiv:2605.04059, 2026.[2] 官方开源代码:https://github.com/Nicolas1203/continual_distillation[3] 项目演示图:https://github.com/Nicolas1203/continual_distillation/raw/main/docs/assets/overview.png