响应蒸馏(Response-Based Distillation)是最经典的蒸馏方法,让学生模型直接模仿教师模型的最终输出概率分布。该方法实现简单,只需要获取教师的输出 logits,不需要访问中间层。适用于教师模型为闭源 API 的场景。但由于忽略了中间层信息,性能上限通常在教师模型的 85% 至 95% 之间。
特征蒸馏(Feature-Based Distillation)要求学生模型匹配教师模型的中间层特征表示。典型方法包括 FitNets 通过回归损失对齐特征图、注意力迁移对齐注意力权重、对比表征蒸馏增强特征判别性。该方法能传递更丰富的结构化知识,通常比响应蒸馏高出 2 至 5 个百分点的准确率,但需要访问教师模型的内部状态。
关系蒸馏(Relation-Based Distillation)不关注单个样本的输出,而是模仿样本之间的关系结构。它保持样本在特征空间中的相对距离、排序关系和注意力模式。该方法在多个基准测试中可让学生模型达到教师模型 95% 至 98% 的准确率,但实现复杂度较高。
链式思维蒸馏(Chain-of-Thought Distillation)是面向推理任务的新型方法。教师模型生成包含推理步骤的自然语言解释,学生模型不仅学习最终答案,还学习推导过程。DeepSeek-R1 系列蒸馏模型采用此方法,使 7B 参数级别的学生模型在数学推理基准上取得突破性进展。
自蒸馏(Self-Distillation)让同一模型在不同训练阶段互为师生。可以用后期检查点监督早期检查点,或用更深层次监督较浅层次。该方法无需额外的教师模型,简化了实验流程,同时能起到正则化效果,通常带来 1 至 2 个百分点的性能提升。
多教师蒸馏让学生模型同时向多个教师模型学习。不同教师可能擅长不同方面,通过 logits 平均、加权聚合或门控选择等策略融合多教师的知识。学生模型可以学到所有教师的共识知识,在某些场景下甚至超越任一单一教师的性能。