Overall:学生可以从多个教师那里学到更好的知识,比一个教师的信息更丰富、更有指导意义
文章目录
前言
虽然在常见的S-T KD范式下已经取得了令人印象深刻的进展,即知识从一个大容量的教师网络转移到一个学生网络。在这种情况下,知识能力相当有限,为此,一些工作探索从多个老师或一群老师那里学习一个便携式学生。在实践中,学生不仅向一个老师学习,而是学习知识的概念,有来自同一任务或不同任务的指导。通过这种方式,学生可以合并和吸收来自多个教师网络的各种知识表示的插图,并构建一个全面的知识系统。因此,人们提出了许多新的KD方法。
尽管这些工作是不同的蒸馏场景和假设,他们共享一些标准特征,可以分为五种类型:集成的logits,集成的特性级信息,统一的数据源,从一个教师网络获得副教师网络,和从异构教师和学习定制学生网络。我们现在明确地分析每个类别,并提供关于它们如何以及为什么对这些问题有价值的见解。
一、Distillation from the ensemble of logits
KD中常用的方法之一,如图(1)示在这样的环境下,学生被鼓励通过交叉熵损失来学习集合的教师ligits(soft target/dark knowledge)的软化的输出。概括为:
L E n s logits = H ( 1 m ∑ i = 1 m N T i ( x ) , N S ( x ) ) \mathcal{L}_{Ens}^{\text{logits}} = H\left(\frac{1}{m} \sum_{i=1}^{m} N_{T_i}(x), N_{S}(x)\right) LEnslogits=H(m1i=1∑mNTi(x),NS(x))
其中 m m m 是教师的总数, H H H 是交叉熵损失, N T i N_T^i NTi 和 N S i N_S^i NSi 分别是第 i i i 个教师和第 i i i 个学生的对数几率(或 softmax 输出), τ \tau τ 是温度参数。平均化的软化输出作为在输出层合并多个教师网络的手段。最小化方程实现了在这一层上知识蒸馏的目标。请注意,平均化的软化输出比任何单个输出更为客观,因为它能够减轻输入数据中某些软化输出存在的意外偏差。
[1] Knowledge distillation by on-the-fly native ensemble
[2] Better and faster: knowledge transfer from multiple self-supervised learning tasks via graph distillation for video classification
[3] Knowledge adaptation: Teaching to adapt
[4] Efficient knowledge distillation from an ensemble of teachers
[5]Learning from multiple experts: Self-paced knowledge distillation for long-tailed classifi-
cation
与上面提到的方法不同,[1,2,3,4,5]认为,取个体预测的平均值可能会忽略一个整体的成员教师的多样性和重要性的多样性。因此,他们建议通过使用一个门控组件来模仿教师预测的总和来学习学生模型。然后,等式变为:
L E n s logits = H ( ∑ i = 1 m g i N T i ( x ) , N S ( x ) ) \mathcal{L}_{Ens}^{\text{logits}} = H\left(\sum_{i=1}^{m} g_i N_{T_i}(x), N_{S}(x)\right) LEnslogits=H(i=1∑mgiNTi(x),NS(x))
其中 g i