知识蒸馏论文翻译(12)—— Adaptive Multi-Teacher Multi-level Knowledge Distillation

知识蒸馏论文翻译(12)—— Adaptive Multi-Teacher Multi-level Knowledge Distillation

自适应多教师多层次知识蒸馏

论文地址:https://arxiv.org/pdf/2103.04062.pdf
代码地址:https://github.com/FLHonker/AMTML-KD-code


摘要

知识提取(KD)是一种有效的学习范式,通过利用从教师网络中提取的额外监督知识来提高轻量级学生网络的性能。大多数开创性研究要么只从一位老师那里学习提炼学习方法,忽视了学生可以同时从多位老师那里学习的潜力,要么只是将每位老师视为同等重要的老师,无法通过具体的例子揭示教师的不同重要性。为了弥补这一差距,我们提出了一种新的自适应多教师多级知识提取学习框架(AMTML-KD),它包括两个新的见解:(i)将每个教师与潜在表示相关联,以自适应地学习实例级教师重要性权重,这些权重用于获取综合软目标(高级知识);(ii)通过所提出的多组提示策略,能够从多个教师那里收集中间级提示(中级知识)。因此,学生模型可以通过AMTML-KD从多个教师那里学习多层次的知识。在公开数据集上的大量结果表明,所提出的学习框架确保学生比强大的竞争对手取得更好的成绩。


一、介绍

如今,随着人工智能的广阔前景,越来越多的计算资源(如图形处理单元和大规模分布式系统)被投入到这一领域。这反过来又导致了更大的统计模型,尤其是深度神经网络[7]。从LeNet[3]到AlexNet[11],再到VGG[22],有一个明显的趋势,即性能最好的模型越来越大,参数越来越多。此外,集成学习[5]将多个模型组合在一个集成的框架中,强调了这一趋势,并导致模型参数的大小要大得多。然而,这些方法所需的大量计算资源将其应用限制在计算能力有限且内存存储量低的平台和设备上。此外,许多实际应用场景都需要高速执行,例如推荐系统[2]。Y et大多数复杂的模型执行起来很慢。

最近,提出了两种知识提取学习范式,原始KD(OKD)[8]和FitNet[18],以从较大的神经网络(教师)转移知识,训练较小、更快的神经网络,同时保持较高的分类性能。在原始KD中,教师生成的软目标 y ~ T \tilde{y}^T y~T被视为高级知识。它会导致以下混合损失,让学生模仿老师的输出:
请添加图片描述
其中 y y y y S y^S yS分别对应于学生的基本事实和推断标签。 y ~ S \tilde{y}^S y~S是学生生成的软目标。 H \mathcal{H} H是交叉熵损失, D K L \mathcal{D}_{KL} DKL是Kullback-Leibler(KL)散度。 λ λ λ是控制教师知识转移相对影响的超参数。

从另一个角度来看,FitNet引入了来自教师神经层的中级知识,以指导学生神经层的学习:
请添加图片描述
其中 u u u v v v是直到它们各自的具有参数 W H W_H WH W G W_G WG的提示/引导层的教师/学生深度嵌套函数。 r r r是一个参数为 W r W_r Wr的回归函数,它达到了训练学生模仿教师特征图的目的。由于教师网络只参与培训过程,不占用任何资源进行部署和使用,因此将学习型学生模式应用于实践是有效和高效的。它在计算机视觉[18,29]、自然语言处理[9,15]、推荐系统[23]等方面引起了一些成功的应用。

大多数先前关于提炼学习的研究都深入到从一个老师到一个学生的知识提炼方向。然而,存在具有不同复杂架构的不同表现良好的教师模型,或者甚至具有相同架构但由于不同的初始化而具有不同的学习参数。我们相信,同时向多名教师学习有可能融合更多有用的知识,提高学生的表现。最近的一些研究[28,6]朝着这个方向迈出了一步,要么简单地平等对待不同的教师,要么手动调整教师重要性权重,缺乏自动区分不同教师的能力。其他一些研究[19,24,26]已经将多教师网络应用于多任务或多领域设置。他们假设每个任务或领域都对应于一个教师网络。因此,对于单个领域中的单个任务,它们与从多个教师网络学习正交,这是大多数知识提炼研究中使用的更通用的场景。

在本文中,我们提出了一种新的自适应多教师多级知识提取学习框架,称为AMTML-KD,其中知识包括软目标的高级知识和来自多个教师网络的提示的中级知识。我们认为,融合的知识对于培养学生网络更全面、更有效。

具体来说,对于高级知识,我们首先将潜在的表示与每个教师相关联,以指示其特征,并基于教师表示和从学生模型中获得的实例表示自适应地确定不同教师相对于特定实例的重要性权重。这些学习到的权重被用于相应教师的软目标的加权组合。关于中间层知识,我们提出了一种多组提示策略,让每个教师的中间层负责学生网络中的一组层。它可以被视为FitNet的延伸,用于向多位教师学习。通过这种方式,每个教师都可以将其深层特征表示转移到学生的中间层。

总之,我们的主要贡献如下:

  • 我们开发了一个新的提炼学习框架AMTML-KD,这是第一个解决多教师多层次知识自适应学习的框架。

  • 我们提出了一种计算方法来确定整合软目标的实例级教师重要性权重,以及一种多组提示策略来转移中间级知识。

  • 我们在几个公开可用的数据集上进行了广泛的实验,验证了我们的AMTML-KD的有效性及其主要组件带来的好处。

二、相关工作

近年来,人们在模型压缩方面做出了巨大努力,尤其是在移动计算时代。[4] 是一项开创性的研究,它利用经过训练的大型模型为未标记的数据生成标签,然后利用伪标记数据作为标记训练数据的补充来学习较小的模型。然而,教师在培训数据中的知识被忽视了。为了解决这个问题,[1]利用教师为训练数据生成的标签来优化学生。最近,提出了提炼学习范式[8],以进一步结合基本事实标签和教师生成的标签来指导学生模型的学习。请注意,类似的学习策略,特权学习[25],专注于使用仅存在于训练阶段的特权信息来帮助优化模型,并与蒸馏学习相统一[13]。由于知识提炼具有较强的适用性和通用性,因此有大量的后续研究。

与利用生成的软目标作为知识相比,FitNet[18]和注意力转移[30]等一些研究将教师的中间表征作为另一种类型的知识,并引导学生模仿这些表征。此外,通过期望正则化,将来自规则的显式知识纳入蒸馏学习[9,23]。最近,关系知识提炼(RKD)[17]考虑了一种新的知识形式,称为结构知识,它是从多个例子的教师输出中派生出来的。这与以前的研究不同,以前的研究从每个例子中提取知识。知识提炼也有广泛的应用。尽管进行了图像分类,但视觉问答[14]、语义分割[12]和机器翻译[24]的任务也受益于提取学习。

尽管先前的研究已经广泛调查了丰富的知识形式和各种应用,但只有少数研究从另一个角度考虑了提炼学习,即从多个教师那里学习知识。[21]提出了一种基于噪声的正则化方法,模拟多个教师的学习。[19] 通过将每个源域与教师相关联来研究域自适应任务,以便以后进行提炼学习。[24]将多教师学习应用于多任务学习,其中每个教师对应于一个任务。类似地,[26]在每个源中训练分类器,并在集成标签空间上统一它们的分类。然而,多域或多任务设置限制了该方法在单个域中的单个任务的更通用场景中的应用。

与本文最相关的研究如下:[6]手动调整每个教师的权重,这是昂贵的,而且不是自动的。[28]在更一般的环境中平等地融合了多位教师的知识。不幸的是,由于它假设每个教师都同等重要,并通过对不同教师网络的软目标进行平均来获得综合知识,因此无法捕捉到不同教师对每个数据实例的不同重要性。另外两项研究[31,29]通过基础蒸馏学习的理念,但不考虑任何教师指导,用其他学生的知识训练每个学生,这与我们的调查正交。

三、拟议的学习框架

在本节中,我们提供了学习教师依赖重要性权重的动机和学习框架的概述。然后我们详细说明了它的数学细节,并给出了直观的理解。
请添加图片描述
图1。使用示例说明自适应学习(兰花)。相应的软目标由三个教师模型生成。注意:罂粟、玫瑰、向日葵和郁金香是我们选择的四个与兰花相似的类别。

3.1 动机和概述 Motivation and overview

考虑一下有两位老师,其中一位是数学老师,另一位是心理学老师。如果有一个偏微分方程需要求解,两位老师给出了一些解,那么学生应该如何从这些解中学习?从人类认知的角度来看,学生应该从数学老师的解决方案中学习更多,因为它们可能包含更多有用的知识。

上述直觉表明,对于不同类型的问题,考虑教师的不同重要性是必要的。现在我们关注的是图像分类的任务,这将在实验中进行测试。如图1所示的例子,给定兰花的图像,三个教师神经网络对同一组图像类别具有不同的预测值。我们可以观察到,从第一个老师生成的软目标值携带了更多关于所选标签和基本事实标签之间相似性的信息,其中基本事实标签的预测值要大得多,并且在图中省略了。因此,直观地将较大的权重分配给该图像的第一位教师,并将较小的权重分配给与其他两位教师,以获得综合软目标值。同时,教师模型学习到的更深层次的知识可以帮助学生在各个层面上学习。上述讨论激发了从多个教师和多个层次自适应学习的建议。

图2描述了所提出的自适应学习框架的概述。对于给定训练集中的每个例子,我们首先使用几个训练有素的教师网络(图中显示了2名教师)来生成相应的软目标值作为高级知识,并将中间层的表示作为中级知识。适配器负责自适应地学习用于集成软目标的实例级教师重要性权重,这些权重被进一步用于导出标准知识提取损失 L K D L_{KD} LKD和基于角度的损失 L A n g l e L_{Angle} LAngle L K D L_{KD} LKD L A n g l e L_{Angle} LAngle分别有助于学习加权暗知识和实例之间的结构关系。此外,基于多组提示的损失 L H T L_{HT} LHT用于从多个教师层转移中级知识。所提出的AMTML-KD的总体优化目标如下:
请添加图片描述
其中 α α α β β β是超参数,用于控制目标中相应损失的相对影响。

3.2 教师重要性的适应性学习 Adaptive learning of teacher importance

为了明确地捕捉教师网络的隐含特征,我们引入了一组潜在变量,组成了一个潜在表示(图2中称为LR)来表示它们。例如,第 t t t个教师模型与一个因子相关联,表示为 θ t ∈ R d \bm{θ}_t∈\R^d θtRd,其中 d d d是因子的维数, t ∈ 1 , ⋅ ⋅ , m t∈{1,··,m} t1⋅⋅m,有 m m m个教师。该策略的部分灵感来自推荐系统[10]中常用的潜在因素模型,其中每个用户或项目对应于一个用于总结其隐含特征的潜在因素。

实例的表示可以从学生网络中某一层的输出中提取。由于图像是我们在这项工作中关注的重点,我们按照惯例[16]将最后一个卷积层的输出作为图像的张量表示。因此,我们得到第 i i i个图像的 B i ∈ R C H W \bm{B}_i∈\R^{CHW} BiRCHW,其中 C C C H H H W W W分别对应于学生特征图的通道数、高度和宽度。为了将图像表示的空间转换为与教师因子的空间相同,以便于以后的计算,我们采用了一个简单的最大池化操作,其内核大小为 s = ( H × W ) s=(H×W) s=H×W。它在每个通道中保持最重要的值。操作表示如下:

其中 δ i ∈ R C \bm{δ}_i∈\R^C δiRC,并且为了简单起见, d d d被设置为等于 C C C(例如128)。请添加图片描述

请添加图片描述
图2:自适应多教师多层次知识提炼学习框架的架构。

基于上图,我们通过以下方式计算第 t t t个教师模型对第 i i i个图像的重要性权重:
请添加图片描述
其中, ν \bm{\nu} ν是要学习的全局参数向量, ⊙ \odot 表示元素乘积。 γ t , i γ_{t,i} γt,i越大表示教师在图像方面越重要。从方程5中,我们可以观察到教师模型的表示与通过逐元素乘积运算捕获的图像之间的相互作用。它计算它们在每个维度上的相似性。 ν \bm{\nu} ν决定每个维度的值是否对分数有积极影响。我们通过定义如下的softmax函数进一步归一化重要性权重:
请添加图片描述
与平均学习策略[28]相反,我们提出了加权加法运算来获取综合软目标 y ~ i T \tilde{y}^T_i y~iT,其定义如下:
请添加图片描述
其中 y ~ t , i T \tilde{y}^T_{t,i} y~t,iT是第 t t t个教师为第 i i i个图像生成的软目标。

3.3 学习高级知识 Learning high-level knowledge

考虑到综合软目标中所揭示的高水平知识,我们采用两种方法来利用这些知识来指导学生的学习。

3.3.1 标准知识提炼 Standard Knowledge Distillation

根据方程1中所示的标准知识蒸馏损失,我们通过合并融合的多教师知识来定义我们的目标,该知识如下所示:
请添加图片描述
其中 y ~ i S \tilde{y}^S_i y~iS是由学生网络生成的第i个图像的软目标, y ~ i T \tilde{y}^T_i y~iT是由等式7计算的综合软目标。

3.3.2 结构知识的提炼 Structural knowledge distillation

除了单独对待每个数据示例的标准知识提取外,我们还考虑在不同的数据示例之间添加结构知识,以有效地传递关系信息,这是由[17]推动的。具体地,给定表示为 ( i , j , k ) (i,j,k) (ijk)的三个例子,使用基于角度的度量来测量这些例子之间的结构关系,其给出为:
请添加图片描述
其中 e i j e^{ij} eij e k j e^{kj} ekj是归一化向量差,即 e i j = x i − x j ∥ x i − x j ∥ 2 e^{ij}=\dfrac{x_i−x_j}{\|x_i−x_j\|^2} eij=xixj2xixj e k j = x k − x j ∥ x k − x j ∥ 2 e^{kj}=\dfrac{x_k−x_j}{ \|x_k−x_j\|^2} ekj=xkxj2xkxj

基于获得的综合软目标,我们可以在多个教师的场景下定义我们的基于角度的损失函数如下:
请添加图片描述
其中, l δ l_δ lδ是Huber损失,与标准均方损失相比,它提供了稳健的回归。注意,对于不同的图像示例, y ~ i T \tilde{y}^T_i y~iT y ~ j T \tilde{y}^T_j y~jTj和 y ~ k T \tilde{y}^T_k y~kT都是通过等式7计算的积分软目标。

3.4 学习中级知识 Learning intermediate-level knowledge

深度神经网络在其中间层享有特征表示学习的优势,因此将这种中间层次的知识传授给学生是很有希望的。受FitNet[18]从单个教师那里学习中级知识的启发,我们提出了一个简单但有效的FitNet扩展,以实现从多个教师那里学习,称为多组提示。特别地,该方法使每个教师负责学生网络的一组层。通过实验,我们实证发现,学生可以从教师学习的深层表征中受益。因此,我们利用每个教师的最后一个特征层来指导知识提取,并定义基于多组提示的损失如下:
请添加图片描述
其中 u t u_t ut是教师 t t t的最后一层特征图, v l v_l vl对应于学生中第 l l l组层输出的特征图。 F t F_t Ft是教师 t t t的单层FitNet,用于使特征图具有自适应性。注意, f ( ⋅ ) f(\cdot) f()指定了从一组学生层到教师的一对一映射,并且可以灵活选择。

我们提出了几种映射策略:(i)将表现更好的教师分配到高层小组;以及(ii)将表现较好的教师分配到低层次小组;以及(iii)将教师随机分配到不同的小组。在不同数据集上的结果一致表明,第一种策略比其他两种策略略有改进。因此,我们选择它作为我们的默认映射策略,并在实验中报告其结果。

四、实验设置

在本节中,我们介绍了实验中使用的数据集、我们考虑的基线以及实现细节。

4.1 Datasets

4.1.1 CIFAR-10 & CIFAR-100

4.1.2 Tiny-ImageNet

4.2 Baselines

我们与以下具有代表性的基线进行了比较,包括基于单个教师和多个教师的知识提取方法的标准和最先进的知识提取模型,以及与多个学生的深度相互学习:OKD[8]:这是为一个教师和一个学生网络引入原始知识提炼(OKD)学习的开创性工作。OKD向多个教师学习的一个简单扩展是遍历所有教师,每次选择一个教师网络来教学生。

FitNet[18]:FitNet是一种标准方法,可以利用教师隐藏层的中级提示来指导学生层的训练。

RKD[17]:关系知识蒸馏(RKD)是最先进的KD方法,旨在转移结构知识,伴随着中间知识转移[27],这限制了结构或中间层的形状必须一致。

vgMKD[29]:这种方法通过以下方式从多名教师中提取知识:1)在计算综合软目标时平等对待每位教师;以及2)在教师网络的中间表示之间转移相对相异性(RD)关系。

DML[31]:深度相互学习(DML)从训练多个学生网络的角度出发,利用了基本的蒸馏学习。

为了便于说明,我们使用OKD(X)来表示教师X的采用,这与FitNet(X)和RKD(X)相同。DML(nS)表示在相互学习中使用n个学生。AvgMKD(mT)表明,AvgMKD利用了m个教师模型,这种表示法原理也适用于其他基于多个教师的方法,包括我们提出的AMTML-KD。

4.3. Implementation Details

我们根据验证数据集的性能调整了所有采用方法的超参数,以进行公平比较。具体而言,计算软目标的温度设置为5.0,知识蒸馏损失中的λ=0.7。默认情况下,我们在优化目标中设置α=1和β=2。采用小批量128的SGD来优化我们的模型。学习率被初始化0.1,并在100和150个时期内衰减。我们在一个GPU(GTX 1080Ti)上运行所有型号。

五、实验结果

我们通过在CIFAR-10、CIFAR100和Tiny ImageNet上的实验结果验证了我们提出的AMTMLKD的有效性。由于CIFAR-10和CIFAR100具有相同的数据集,但标签数量不同,因此我们首先将它们放在一起进行实验。接下来是在Tiny ImageNet上进行的实验。最后,我们进行了消融研究,以显示每个组件对最终模型的贡献。对于评估措施,我们采用了排名前1的图像分类精度。

5.1. Results on CIFAR

5.1.1 Comparison with baselines

请添加图片描述
所选择的学生网络的规模比教师模型小得多,其结果无疑更差。
请添加图片描述
单独训练的学生模型表现不如所有其他知识提取方法,显示了从教师网络中提取知识的好处。表的第二部分中的模型是一组单一教师的蒸馏模型。FitNet的性能优于基于标准知识蒸馏的方法,并且最近的RKD模型实现了最先进的性能。表格的第三部分包括多学生模型和多教师模型。将多名教师直接纳入DML确实可以提高成绩。

5.1.2 Performance on different student networks

我们进一步分析了我们的学习方法对不同学生网络的有效性。表3显示了相应的结果。尽管不同的学生表现不一样,但我们的AMTML-KD方法始终优于AvgMKD和DML,显示出其潜在的广泛应用。
请添加图片描述

5.1.3 Effect of the number of teachers

表4显示了与第一个方面相对应的结果,从中我们可以观察到一个明显的趋势,即随着教师数量的增加,所有学生网络都取得了更好的结果。此外,2名教师和3名教师的绩效差距大于3名教师和5名教师的差距,表明随着教师人数的持续增长,绩效收益会变小。我们进一步展示了当拥有不同数量的教师时,多种基于教师的知识提取方法的比较。
请添加图片描述
请添加图片描述
表5显示了在CIFAR-100上训练ResNet20(Stu1)时GPU内存和训练时间成本的比较。单教师KD方法通常具有不具竞争力的性能,其训练时间和GPU内存较少。但在多教师方法中,由于FitNets和adapter的额外参数,我们只需要多一点训练时间和内存,与大型模型相比,这些参数甚至可以忽略。由于DML需要同时更新所有学生网络的参数,因此会消耗更多的资源。
请添加图片描述

5.2. Results on Tiny-ImageNet

对于Tiny ImageNet,我们构建了三个基于ResNet的神经网络作为我们的老师,并选择了与学生相同的三个学生网络用于CIFAR数据集。模型参数大小和教师以及第一名学生的表现如表6所示。
请添加图片描述
表7以第一个学生为例,将我们的方法与Tiny ImageNet数据集上的基线进行了比较。可以得出类似的结论:(1)RKD在单一教师模型中取得了最先进的性能;(2) 尽管AvgMKD(3T)的表现与RKD几乎相同,但由多个教师指导的学生模型比单个教师模型获得了更好的结果;(3) 所提出的方法AMTML-KD获得了最好的结果,表明其对不同数据集的性能是鲁棒的。
请添加图片描述
表8显示了我们的学习方法的表现以及在三个不同的学生网络上采用的两个基线。我们可以发现,AMTML-KD确实提高了三名学生在AvgMKD上的表现,这与CIFAR数据集上的结果一致。

5.3. 消融 Ablation study

在本部分中,我们进行了消融研究,以验证我们的方法AMTMLKD中主要组件的有效性。表9显示了AMTML-KD的一些基线和变体的性能,其中第一部分对应于基线,第二部分表示变体。具体而言,“w/o L A n g l e & L H T L_{Angle} \& L_{HT} LAngle&LHT”表示从AMTML-KD中删除基于角度的损失和多组提示损失。类似地,“w/o L A n g l e ( α = 0 ) L_{Angle} (α=0) LAngle(α=0)”和“w/o L H T ( β = 0 ) L_{HT}(β=0) LHT(β=0)”分别对应于不考虑LAngle和LHT。“AvgMKD(3T)w/o RD”表示去除其RD损失,测量网络的中间表示之间的相对不相似关系。

我们首先将“w/o L A n g l e & L H T L_{Angle} \& L_{HT} LAngle&LHT”与“AvgMKD(3T)w/o RD”和OKD(ResNet110)进行比较,它们都使用标准的知识提取目标,但有不同的软目标。通过比较得出以下观察结果:1)来自多个教师网络的平均学习似乎有点可疑,因为它的表现不令人满意;2)从多个教师那里进行适应性学习有其内在的好处。将FitNet与本文提出的FitNet的扩展——多组提示进行比较,表明后者可以在一定程度上带来好处。
请添加图片描述
表9的第三部分显示了从我们的方法中删除不同损失函数的结果。最后,我们将我们的完整模型与其变体“w/o L A n g l e ( α = 0 ) L_{Angle} (α=0) LAngle(α=0)”和“w/o L H T ( β = 0 ) L_{HT}(β=0) LHT(β=0)”进行了比较,这表明我们的改进不仅来自于融合多教师教师的标准知识提炼,还来自于结构知识和中级知识的学习。尽管我们使用了现有的RKD方法,但我们只认为它与我们的自适应方法相结合更有效。如果去掉它,准确率将降低约0.2%。总之,适配器决定了每个教师的重要性,这使得知识提取更加灵活,HT损失有助于通过中间层提高学生的训练,自适应角度损失可以将示例的关系信息传递给学生。
请添加图片描述
为了验证不同权重的重要性,我们在图4中显示了CIFAR-10和MNIST上一些示例的不同权重的可视化结果。粗体的红色标签是这些例子的基本事实。我们可以看到,即使一些教师的预测是错误的,这些错误的不利影响也可以通过权重分配来屏蔽,如图4(a)和4(b)所示。

六、结论

在本文中,我们开发了自适应多教师多层次知识提取(AMTML-KD)学习框架。AMTML-KD通过特定的数据实例为不同的教师网络学习不同的重要性权重,确保更好地整合来自多个教师的软目标,以转移高水平的知识。我们还提出了一种简单的多组提示策略,使AMTML-KD能够从多个教师那里学习中级知识。图像分类实验结果表明,AMTML-KD具有最先进的性能,并验证了其关键组件的有效性。


参考文献

请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值