自蒸馏
分类: 知识蒸馏
type:: concept aliases:: 自蒸馏, self-distillation, Born-Again Networks
-
自蒸馏
-
定义
-
自蒸馏 (Self-Distillation) 指模型以自身(或自身的不同部分/阶段)作为教师,对自身进行 知识蒸馏。不需要外部的更大教师模型。
-
数学形式
-
典型损失:
-
其中 来自同一模型的不同阶段(如上一轮训练的 checkpoint)或不同层的输出
-
核心要点
-
Born-Again Networks:用上一轮训练完成的模型作为教师,训练一个结构完全相同的新模型,性能反而提升
-
层间自蒸馏:深层的特征蒸馏到浅层,实现推理时的 early exit
-
在线自蒸馏:同一 batch 内不同数据增强视图之间互相学习(如 DINO、BYOL)
-
与 特征蒸馏 的区别:自蒸馏强调教师和学生来自同一模型,而非独立的大小模型
-
在模型增长场景中,已训练的小模型可作为 teacher 指导增长后模型的训练
-
代表工作
-
Born-Again Networks (Furlanello et al., 2018): 自蒸馏的开创性工作
-
DINO (Caron et al., 2021): 视觉 Transformer 的自监督自蒸馏
-
知识蒸馏: 自蒸馏是知识蒸馏的特殊形式
-
相关概念