0 前言
知识蒸馏(Knowledge Distillation,简记为 KD)是一种经典的模型压缩方法,核心思想是通过引导轻量化的学生模型“模仿”性能更好、结构更复杂的教师模型(或多模型的 ensemble),在不改变学生模型结构的情况下提高其性能。
2015 年 Hinton 团队提出的基于“响应”(response-based)的知识蒸馏技术(一般将该文算法称为 vanilla-KD [1])掀起了相关研究热潮,其后基于“特征”(feature-based)和基于“关系”(relation-based)的 KD 算法被陆续提出。
以上述三类蒸馏算法为基础,学术界不断涌现出致力于解决各特定问题、面向各特定场景的 KD 算法,如:
1)零训练数据情况下的 data-free KD;
2)教师模型也权重更新的 online KD、self KD;
3&#x