Like What You Like: Knowledge Distill via Neuron Selectivity Transfer 论文翻译

来源:互联网 发布:淘宝真鞋店铺 编辑:程序博客网 时间:2024/06/17 01:00

摘要
尽管深度神经网络已经在各种各样的应用中表现出非凡的效果,但是其优越的性能是以高存储和计算成本为代价的。因此,神经网络的加速和压缩近来引起了人们极大的关注。知识迁移(KT),旨在通过从较大的教师模型迁移知识来训练一个较小的学生网络,是流行的解决方案之一。在本文中,我们通过将其视为一个分布匹配问题来提出一个新的知识迁移方法。特别地,我们匹配教师和学生网络之间的神经元选择性模式的分布。为了实现这一目标,我们通过最小化这些分布之间的最大平均差异(MMD)度量来设计新的KT损失函数。结合原来的损失函数,我们的方法可以显著地提高学生网络的性能。我们在几个数据集上验证了我们方法的有效性,并进一步将其与其它KT方法结合起来探索最好的结果。

1 Introduction
近年来,深度神经网络已经更新了计算机视觉和神经语言处理等各个领域的最先进的表现。一般来说,给予足够的数据,更深层次和更广泛的网络将会实现比浅层网络更好的性能。然而,这些越来越大的网络也带来了高的计算和内存成本。将这些最先进的模型部署到实时应用中仍然是一个很大的问题。

这个问题激发了人们对神经网络加速和压缩的研究。近几年来,在这一领域已经做出了广泛的工作。这些尝试可以大致分为三种类型:网络剪枝[1,2,3],网络量化[4,5]和知识迁移(KT)[6,7,8,9,10,11,12]。网络修剪基于一些标准,迭代地修剪不重要的神经元或权重,而网络量化尝试降低权重或特征的精度。然而,值得注意的是,大多数这些方法(除了神经元修剪)不能充分利用现代GPU和深度学习框架。他们的加速需要特定的硬件或实现。相比之下,基于KT的方法直接训练了一个较小的学生网络,这样可以加速原始网络+ in terms of wall time without bells and whistles(后面太纠结不知道怎么翻译,这句意思就是加速了原始网络)。

据我们所知,KT的最早的工作可以追溯到[6]。他们训练了一个压缩模型,其中伪数据由强分类器的集合标记。然而,他们的工作仅限于浅层模型。直到最近,Hinton等人通过引入知识提取(KD)[7]将其带回来。KD的基本思想是通过软化softmax学习教师输出的类分布,将知识从大型教师模型中提取出来,形成一个小型的教学模型。尽管KD简单,KD在各种图像分类任务中表现出很不错的结果。然而,KD只能用于具有softmax损失函数的分类任务。随后的一些工作[8,9,10]试图通过转换教师模型的中间表示来解决这个问题。

在这项工作中,我们探索出了教师模型中一种新的知识,并将其迁移给学生模型。具体来说,我们利用神经元的选择性知识。这个模型背后的直觉是相当简单的:每个神经元基本上从原始输入中提取与手头任务相关的某种模式。 因此,如果神经元在某些区域或样本中被激活,则这意味着这些区域或样本共享了可能与任务相关的一些常见属性。这样的聚类知识对于学生网络是有价值的,因为它为教师模型的最终预测提供了一个解释。因此,我们提出使学生模型和教师模型之间的神经元选择性知识的分布相一致。
我们的方法的说明如图1所示。 总而言之,这项工作的贡献如下:
这里写图片描述

2 Related Works
域自适应属于迁移学习领域。在其大多数考虑的设置中,域自适应的目标是提高在未标记的目标域上的测试性能,而模型在相关但不同的源域进行训练。由于目标域上没有可用的标签,域自适应的核心是测量和减少这两个域的分布之间的差异。在文献中,最大平均差异(MMD)是广泛使用的标准,其比较了再生核希尔伯特空间(RKHS)中的分布[14,15]。已经有一些工作采取了MMD来解决域转移问题。在[16,17,18]中,源域中的示例被重新加权或选择,以便最小化源和目标分布之间的MMD。其他工作如[19]在明确的低维隐藏空间中测量MMD。对于深度学习模型中的应用,[20,21]使用MMD对源域和目标域的学习特征进行正则化。

请注意,域自适应不仅限于传统的监督学习问题。例如,最近Li等人将神经风格迁移[22]作为域自适应问题[23]。他们表明,神经风格迁移本质上等同于匹配内容图像和风格图像的特征分布。[22]是二阶多项式核MMD的特殊情况。 在本文中,我们探讨使用MMD进行新的应用–知识迁移。

深度学习中的知识迁移 知识提取(KD)[7]是将知识迁移应用于深度神经网络的开创性工作。在KD中,知识被定义为教师网络的软化输出。与one-hot标签相比,软化输出提供了教师学习的类内和类间相似性的额外监督。one-hot标签旨在将每个类别的样本投影到标签空间中的一个点,而软化标签将样本投影到连续分布中。一方面,软化标签可以通过类别分布来表示每个样本,从而捕获类内变异; 另一方面,可以在软目标的不同类别之间比较类间相似性。

形式上,网络T的软目标可以由 来定义,其中a是教师对数矢量(pre-softmax激活),τ是温度。通过增加τ,通过将预测推离0和1来保持这种类间相似性。然后通过结合软化softmax和原始softmax来训练学生网络。然而,其缺点也是显而易见的:其有效性仅限于softmax损失函数,并且依赖于类的数量。例如,在二进制分类问题中,KD几乎不能提高性能因为它几乎不能提供额外的监督。随后的工作[8,10,9]试图通过迁移中间特征来解决KD的缺点。

最近,Romero等人提出FitNet [8]将宽而浅的网络压缩成薄而深的网络。为了从教师网络的中间表示中学习,FitNet使学生模仿了老师的全部特征图。然而,这样的假设太严格,因为教师和学生的能力可能会有很大差异。在某些情况下,FitNet可能会对性能和收敛性产生不利影响。最近,Zagoruyko等[9]提出注意力转移(AT)来放宽FitNet的假设:他们转移了注意力图(attention maps),这是全激活的总结(summaries of the full activations)。如后所述,他们的工作可以看作是我们框架中的一个特例。

3 Background
在本节中,我们首先介绍后面会使用到的符号,然后简要回顾一下MMD,这是我们方法的核心所在。
这里写图片描述
由于当且仅当特征空间对应于通用RKHS,p = q时,则MMD损失为0,所以最小化MMD等于最小化p和q之间的距离[14,15]。

4 Neuron Selectivity Transfer
在本节中,我们介绍我们的神经元选择性迁移(NST)方法。我们将从一个直观的例子开始解释我们的动机,然后就我们提出的方法提出正式的定义和一些讨论。

4.1 Motivation
图2显示了通过VGG16 Conv5_3层中的一个选择的神经元的热点图混合的两个图像。很容易看出这两个神经元具有很强的选择性:左图像中的神经元对猴子脸很敏感,右图像中的神经元强烈地激活了字符。这种激活实际上意味着神经元的选择性,即什么样的输入可以触发神经元。换句话说,来自神经元的激活程度高的区域可能会共享一些任务相关的相似性,即使这些相似之处从人类解释的角度来看可能是不直观的。为了捕捉这些相似之处,应该还有神经元模拟学生网络中的这些激活模式。这些观察指导我们在教师网络中定义一种新型的知识:神经元选择性或称为共同激活,然后将其迁移到学生网络。
这里写图片描述
概率。
MMD损失可以扩展为:
这里写图片描述
4.3 Discussion
在本小节中,我们详细讨论了线性和多项式内核的NST。具体来说,我们展示数学背后的直观解释及其与现有方法的关系。
这里写图片描述
这里写图片描述
5 Experiments
在以下部分中,我们在几个标准数据集评估我们的NST(包括CIFAR-10,CIFAR-100[24]和ImageNet LSVRC 2012 [25]。在CIFAR数据集上,一个非常深的网络,ResNet-1001[26]被用作教师模型,采用Inception-BN[27]的简化版本作为学生模型。在ImageNet上,我们分别采用ResNet-101[28]和原始的Inception-BN [27]作为教师模型和学生模型。

我们将我们的方法与KD[7],FitNet[8]和AT[9]进行比较。对于KD,我们将软化softmax的温度设置为4,λ= 16。对于FitNet和AT,λ的值分别设置为100和1000。对于我们的NST,我们为线性,多项式和高斯核分别设置λ= 5000,5000和10000,所有的实验都在MXNet[29]中进行。我们之后会将实现方法公开。

5.1 CIFAR
我们从CIFAR数据集开始评估我们的方法。CIFAR-10和CIFAR-100数据集分别由10类和100类的50K训练图像和10K测试图像组成。对于数据增广,我们从零填充的40×40图像或其翻转图像如文献[28]中采取32×32的随机crop[28]。权重衰减设定为 这里写图片描述。为了优化,我们在单个GPU上使用具有128批量大小的SGD。我们将网络训练400个epochs。学习率从0.2开始,在200和300个epochs除以10。

对于AT,FitNet和NST,我们在Inception-BN中的“in5b”的卷积层输出和ResNet-1001中的最后一组残差块的输出之间增加了单个迁移损耗。我们还尝试在不同层添加多个迁移loss,发现这些方法对单个loss的改进较小。

表1总结了我们的实验结果。在CIFAR-10中,包括具有不同核的KD,FitNet和NST在内的所有这些方法都比原始学生网络表现出更高的精确度。其中,我们的NST与多项式内核结合表现得最好。在CIFAR-100中,KD达到最佳性能。这与我们的解释一致,KD在具有更多类别的分类任务中表现更好,因为更多的类别提供了关于软化softmax目标中的类内变化(intra-class variation )的更准确的信息。
这里写图片描述
这里写图片描述
5.2 ImageNet LSVRC 2012
在本节中,我们对ImageNet LSVRC 2012分类任务进行大规模实验。数据集由1.28M训练图像和另外50K的验证图像组成。我们使用随机梯度下降(SGD)优化网络,在4个GPU上,批量大小为128进行实验(每个GPU批量大小32)。

SGD的权重衰减为,动量为0.9。对于数据增广,我们遵循公开实现的“ResNet”2。我们将网络训练了130个epoch 。初始学习率设置为0.05,然后分别第在60,90和105个epoch除以10。我们在标准单个测试center-crop设置上报告了top-1 和top-5验证误差。根据上一节,我们只评估我们的NST方法与二阶多项式内核的最佳设置。λ的值设置为。其他设置与CIFAR实验相同。我们的ImageNet实验的所有结果可以在表3和图4中找到。
这里写图片描述
与学生网络相比,我们的方法获得了top-1 0.9%和top-5 0.7%的改善。有趣的是,与[9]不同,我们还发现,在我们的实验中,KD和FitNet都提高了Inception-BN的收敛和准确性。这可能是由于[9]中弱教师网络(ResNet-34)的选择引起的。在所有的方法中,FitNet表现是最好的。然而,当与KD相结合时,我们的NST达到最佳精度,分别将top-1和top-5精度提高了2.2%和1.9%。这些结果进一步验证了我们提出的NST在大规模应用中的有效性,以及与其他最先进的知识迁移方法的互补性。

5.3 Analysis and Discussion
在图5,我们使用文献[30]在CIFAR100实验中可视化我们的NST转移前后的学生和教师网络激活的分布。 图中的每个点表示神经元的激活模式。 如预期,MMD损失显著减少了教师和学生分布之间的差异,这使得学生网络的行为更像教师网络。
这里写图片描述
当有大量类别时,KD可以实现最佳性能。在这种情况下,与类别少的情况的相比,软化的softmax可以将嵌入式标签空间中的每个数据样本描绘的更加精确。然而,KD的缺点是完全基于softmax损失,这限制了其在诸如回归和排名等更广泛的应用中的应用。其它比较方法不一定要满足这样的限制。

对于FitNet,我们发现它的假设太严格了,因为它强制学生网络与前面提到的教师模式的匹配全激活(full activations)。此外,直接匹配特征图的性质使FitNet实际上捕获与KD同类的信息。唯一的区别是它们被应用在网络的不同层上。因此,如我们的实验所示,FitNess和KD的直接结合几乎不能超过KD本身。

6 Conclusions
在本文中,我们通过将知识迁移作为分布对齐问题,为知识迁移提出了新方法。我们利用未开发的知识 - 神经元选择性。它代表CNN中每个神经元的任务相关偏好。详细地,我们通过最小化它们之间的MMD距离来匹配教师和学生网络之间的空间神经元激活的分布。通过这种技术,我们成功地提高了小型学生网络的表现。在我们的实验中,我们在各种数据集上展示了NST方法的有效性,并表明NST与其它现有方法相互补充:具体来说,它们的进一步结合产生了新的最先进的结果。

我们相信我们新的方法将有助于进一步设计知识迁移方法。在未来的工作中,我们计划探索更多NST方法的应用,特别是在各种回归问题中,如超分辨率和光流预测等。

原创粉丝点击