【论文笔记_知识蒸馏、注意力机制、2017经典论文】PAYING MORE ATTENTION TO ATTENTION

该研究探讨了在人工视觉系统中如何利用注意力信息来提高卷积神经网络的性能。通过定义基于激活和基于梯度的注意力图,作者提出了一种将注意力从教师网络转移到学生网络的方法,从而显著提高了学生网络的性能。实验结果显示,这种方法在多种数据集和网络架构上都表现出一致的改进。
摘要由CSDN通过智能技术生成

请添加图片描述
(下文中的“剩余”可以修改为“残差”)

摘要

注意力在人类视觉体验中起着至关重要的作用。此外,最近的研究表明,在将人工神经网络应用于计算机视觉和NLP等领域的各种任务时,注意力也可以发挥重要作用。在这项工作中,我们表明,通过正确定义卷积神经网络的注意,我们实际上可以使用这类信息,通过强迫学生CNN网络模仿强大教师网络的注意图,显著提高其性能。为此,我们提出了几种转移注意力的新方法,在各种数据集和卷积神经网络结构中表现出一致的改进。我们的实验代码和模型在https://github.com/szagoruyko/attention-transfer.

1.介绍

其中一个流行的假设是,存在非注意和注意知觉过程。非注意过程有助于观察一个场景并收集高级信息,当与其他思维过程相关联时,这些信息有助于我们控制注意力过程并导航到场景的某个部分。这意味着不同的观察者拥有不同的知识、不同的目标,因此不同的注意策略可以对同一场景有不同的看法。这就引出了本文的主题:在人工视觉系统中注意力是如何不同的,我们能否利用注意力信息来提高卷积神经网络的性能?更具体地说,教师网络能否通过向另一个学生网络提供有关其外观的信息(即其注意力集中在哪里)来提高其表现?

为了研究这些问题,我们首先需要正确地说明如何通过给定的卷积神经网络定义注意力。为此,我们将注意力视为一组空间映射,该空间映射本质上试图对网络的输入的空间区域进行编码,以最大化其输出决定(例如,对图像进行分类),此外,这些映射可以被定义为W.R.T.网络的各个层,以便它们能够捕获低,中级和高级表示信息。更具体地说,在这项工作中,我们定义了两种类型的空间注意图:基于激活的和基于梯度的。我们探索了这两种注意力图在不同的数据集和体系结构中是如何变化的,并表明它们实际上包含有价值的可用于显著提高卷积神经网络结构(各种类型,并针对各种不同任务进行训练)的性能的信息。 为此,我们提出了几种将注意力从强大的教师网络转移到较小的学生网络的新方法,目的是提高后者的性能(图1)。

请添加图片描述
图1:(a)卷积网络的输入图像和相应的空间注意力图,显示了网络聚焦的位置,以便对给定图像进行分类。当然,这种类型的地图必须包含有关网络的宝贵信息。我们在本文中提出的问题是:我们能否利用这类知识来改进CNN模型的训练?(b) 注意力转移的示意图表示:学生CNN的训练不仅是为了做出良好的预测,而且是为了拥有与已经受过训练的教师CNN相似的空间注意力地图。

我们的贡献如下:
1.我们建议将注意力作为一种将知识从一个网络转移到另一个网络的机制
2.我们建议使用基于激活和基于梯度的空间注意力地图
3.我们通过实验证明,我们的方法在各种数据集和深度网络架构中提供了显著的改进,包括残差网络和非残差网络
4.我们表明,基于激活的注意转移比完全的激活转移有更好的改善,并且可以与知识蒸馏相结合

本文的其余部分结构如下:我们首先在第2节描述了相关工作,在第3节解释了我们基于激活和基于梯度的注意转移方法,然后在第4节给出了这两种方法的实验结果。我们在第5节总结本文。

2.相关工作

3.知识转移

在本节中,我们将解释定义卷积神经网络的空间注意图所使用的两种方法,以及在每种情况下如何将注意信息从教师转移到学生网络。

3.1基于激活的注意力转移
让我们考虑一个CNN层及其相应的激活张量A∈ R C×H×W,由空间尺寸为H×W的C个特征面组成。基于激活的映射函数F(关于该层)将上述3D张量A作为输入,并输出空间注意图,即在空间维度上定义的平坦的2D张量,或
请添加图片描述
为了定义这样一个空间注意映射函数,我们在本节中所做的隐含假设是,隐式神经元激活的绝对值(当网络在给定输入上进行评估时产生)可以用作指示该神经元相对于特定输入的重要性。因此,通过考虑张量A元素的绝对值,我们可以通过计算通道维度上这些值的统计信息来构建空间注意图(见图3)。更具体地说,在这项工作中,我们将考虑以下基于激活的空间注意力图: (即把C个H×W的特征图用以下三种计算方法对其中的单个元素进行处理,得到一个H×W的特征图,即注意力图
请添加图片描述
(1)绝对值求和(2)p次幂的绝对值之和(3)p次幂的绝对值的最大值

式中,Ai=A(i,:,:)(使用Matlab表示法),max、求幂和绝对值运算是元素运算(例如,|Ai | p相当于abs(Ai)∧p表示法)。

请添加图片描述
图2:在为人脸识别训练的网络的不同级别上的绝对值之和注意力图Fsum。中等水平的注意力地图在眼睛、鼻子和嘴唇周围有较高的激活水平,高水平的激活对应于整个面部。

我们在几个数据集上可视化了各种网络的激活,包括ImageNet分类和定位、COCO目标检测、人脸识别和细粒度识别。我们主要关注的是没有顶层密集线性层的现代架构,例如Network-In-Network、ResNet和Inception,它们具有流线型卷积结构。我们还研究了相同架构、宽度和深度的网络,但使用不同的框架进行训练,在性能上有显著差异。我们发现,上述隐藏激活的统计数据不仅与图像级别上的预测对象具有空间相关性,而且在精确度较高的网络中,这些相关性也往往更高,并且在弱网络没有的情况下,强网络具有注意峰值(例如,见图4)。此外,注意力图关注网络中不同层次的不同部分。在第一层,神经元激活水平对于低阶梯度点来说是高的,在中间,它对于眼睛、轮子等最有辨别力的区域来说更高,在顶层中它反映了完整的对象。例如,Parkhi等人(2015年)为人脸识别训练的网络的中级注意图将在眼睛、鼻子和嘴唇周围有更高的激活,最高级别的激活将对应于完整的面部(图2)。

关于上面定义的不同注意映射函数,这些函数的属性可能略有不同。例如:
1.与Fsum(A)相比,Fp sum(A)的空间图(p>1)对对应于具有最高激活的神经元的空间位置赋予了更多的权重,即对最具辨别力的部分赋予了更多的权重(p越大,则对具有最高激活的部分的关注就越多)。
2.此外,在对应于相同空间位置的所有神经元激活中,F PMAX(A)将只考虑其中一个给该空间位置赋权(与F P SAM(A)相反,F PMAX(A)有利于携带高激活的多个神经元的空间位置)。

为了进一步说明这些功能的差异,我们可视化了3个在分类性能上有足够差异的网络的注意图:网络中的网络(top-1 准确度62%)、ResNet34(top-1 准确度73%)和ResNet-101(top-1 准确度77.3%)。在每个网络中,我们获取了最后一个预降采样激活图,左侧为中级,右侧为图4中的最高预平均池激活。顶级地图是模糊的,因为它们的原始空间分辨率是7×7。很明显,大多数辨别区域都有较高的激活水平,例如狼的脸,形状细节随着参数p(用作指数)的增加而消失。

请添加图片描述
图3:特征维度上的注意力映射。

在注意力转移中,考虑到教师网络的空间注意力图(使用上述任何一种注意力映射函数计算),目标是训练一个学生网络,该网络不仅能做出正确的预测,而且还具有与教师相似的注意力图。一般来说,我们可以将转移损失放置在跨多个层计算的注意力地图上。例如,在RESNET架构的情况下,可以考虑以下两种情况,这取决于教师和学生的深度:
(1)相同深度:在每个残差块后可能有注意力转移层
(2)不同深度:对每组残差块的输出激活进行注意力转移

类似的情况也适用于其他架构(例如NIN,在这种情况下,组指的是一个由3×3、1×1、1×1卷积组成的块)。在图5中,我们提供了残差网络架构的不同深度情况的示意图。

请添加图片描述
图4:各种ImageNet网络的激活注意图:网络中的网络(62%top-1 准确度)、ResNet-34(73%top-1 准确度)、ResNet-101(77.3%top-1 准确度)。左部分:中级激活,右部分:顶级预softmax激活

请添加图片描述
图5:当两个网络都是残差的,并且教师更深时,师生注意力转移的示意图。

在不丧失普遍性的情况下,我们假设转移损失位于具有相同空间分辨率的学生和教师注意力图之间,但如果需要,可以对注意力图进行插值以匹配其形状。设S,T和WS,WT分别表示学生、教师及其权重,L(W,x)表示标准的交叉熵损失。令I表示所有师生激活层对的索引,我们要为其转移注意力图。然后我们可以定义以下总损失:
请添加图片描述
其中,请添加图片描述分别是向量化形式的第j对学生和教师注意力图,p表示范数类型(在实验中,我们使用p=2)。可以看出,在注意转移过程中,我们使用L2正则化的注意图,即我们用请添加图片描述替换每个向量化的注意图Q(也可以使用L1正则化)。 值得强调的是,注意力图的正则化对于学生训练的成功非常重要。

注意力转移也可以与知识蒸馏相结合,Hinton等人(2015),在这种情况下,只需在上述损失中加入一个附加项(对应于教师和学生标签上软化分布之间的交叉熵)。当两者结合时,注意力转移只会增加很少的计算成本,因为在前向传播过程中,教师的注意力图可以很容易地计算出来,这是蒸馏所需要的。

3.2基于梯度的注意力转移
在这种情况下,我们将注意力定义为梯度。关于输入,可以将其视为输入敏感性图(Simonyan等人(2014)),即输入空间位置处的注意代表了输出预测对该输入位置处的变化的敏感程度(例如,如果像素处的微小变化可能对网络输出产生较大影响,那么假设网络正在“注意”该像素是合乎逻辑的)。让我们将教师和学生的损失关于输入的梯度定义为:
请添加图片描述
然后,如果我们想让学生的梯度注意力与教师的注意力相似,我们可以最小化它们之间的距离(这里我们使用L2距离,但也可以使用其他距离):
请添加图片描述
如WT和x所示,为了得到所需的导数如WS:
请添加图片描述

进行更新时,我们首先需要进行前向和后向传播,得到JS和JT,计算第二个误差请添加图片描述并再次传播。在这种情况下,二次传播与正向传播类似,并且涉及二阶混合偏导数计算请添加图片描述、 上述计算类似于Drucker&LeCun(1992)开发的双反向传播技术(其中输入的梯度的L2正则化用作正则化器)。此外,它可以在具有自动差异化支持的框架中高效地实现,即使对于具有复杂图形的现代体系结构也是如此。第二次反向传播的成本与第一次反向传播大致相同,不包括前向传播。

我们还建议在梯度注意图上强制水平翻转不变性。为了做到这一点,我们传播水平翻转的图像以及原始图像,反向传播和反向翻转梯度注意力贴图。然后,我们在获得的注意和输出上添加l2损失,并进行第二次反向传播:
请添加图片描述
其中flip(x)表示翻转运算符。这类似于Cohen&Welling(2016)提出的集团等变CNN方法,但这不是一个硬约束。我们通过实验发现,这对训练有规律性的影响。

我们应该注意,在这项工作中,我们只考虑对于输入层的梯度,但一般情况下,可能有建议的注意力转移和对称约束,关于网络的更高层次。

4.实验部分

在本节中,我们将探讨各种图像分类数据集上的注意力转移。我们将该部分分为两部分,第一部分包括基于激活的注意转移和基于梯度的注意转移实验,第二部分是在更大的数据集上进行基于激活的注意转移实验。对于基于激活的注意力转移,我们使用了Network InNetwork Lin et al.(2013)和基于ResNet的架构(包括最近引入的宽残留网络(WRN)Zagoruyko&Komodakis(2016)),因为与AlexNet或VGG相比,它们的性能最好,并且在参数数量上设置了强大的基线,并且在各种各样的论文中,通过大小数据集进行了探索。在场景、CUB和ImageNet中,我们使用ResNet-18和ResNet-34进行了实验。对于基于梯度的注意,由于需要复杂的自动区分,我们将自己局限于网络中的网络,而没有批量标准化和CIFAR数据集。

4.1CIFAR实验

4.2大型图像输入的网络

5.结论

我们提出了几种将注意力从一个网络转移到另一个网络的方法,并在多个图像识别数据集上进行了实验。在空间信息更为重要的情况下,如目标检测或弱监督定位(这是我们计划在未来探索的),观察注意力转移是如何工作的将是一件有趣的事情。
总的来说,我们认为我们有趣的发现将有助于进一步推进知识蒸馏,并从总体上理解卷积神经网络。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值