《Spatially Attentive Output Layer for Image Classification》论文翻译

随手翻译一下最近阅读的论文,原文出处为CVPR 2020 Apr 16的开源期刊,文字叙述部分多为谷歌翻译加微调修改,文章第三节method为个人渣翻译,如果有不足之处请大佬指出。
原文地址:https://arxiv.org/abs/2004.07570
原文代码:https://github.com/ildoonet/spatially-attentive-output-layer(github上的代码好像被原作者删除了,如果哪位大佬有的话,可以私聊给我吗,thank you!)
感谢原作者:Ildoo Kim∗、Woonhyuk Baek∗、Sungwoong Kim、Kakao Brain、Seongnam, South Korea

Spatially Attentive Output Layer for Image Classification

摘要

  大多数用于图像分类的卷积神经网络(CNN)使用全局平均池(GAP),然后使用全连接(FC)层进行输出logit。但是,尽管这种空间信息可能有益于分类,但是这种空间聚合过程固有地限制了神经网络在输出层使用特定位置的信息。在本文中,我们在现有的卷积功能图的基础上提出了一个新颖的空间输出层,以明确利用特定于位置的输出信息。具体来说,在给定空间特征图的情况下,我们通过在空间逻辑模型上使用“注意力蒙版”(attention mask),将先前的GAP-FC层替换为空间关注输出层(SAOL)。本文所提出的方法针对特定地点的注意力选择性地聚集了目标区域内的空间逻辑,这不仅提高了性能,而且让空间可解释性的输出。此外,本文提出的SAOL还允许在训练过程中充分利用针对特定位置的自我监督以及“自我蒸馏”(self-distillation )功能,以增强泛化能力。本文所提出的具有自我监督和自我蒸馏功能的SAOL可以轻松插入现有的CNN中。在各种具有代表性的分类任务实验表明,SAOL在几乎相同的计算成本下仍能持续改善性能。
在这里插入图片描述

1. 简介

  深度卷积神经网络(CNN)在各种计算机视觉任务中都取得了长足的进步,包括图像分类,对象检测和语义分割。特别是,在修改卷积块及其连接方面已有许多研究,例如深度可分离卷积,可变形ConvNet ,ResNet 和NAS-Net 以改善特征表示。但是,与成熟的用于(多尺度)空间特征提取的卷积架构相反,从功能图生成分类对数的输出模块与由全局平均池(GAP)层和完全连接(FC)层组成的标准模块几乎保持不变。 即使已经表明具有这种特征聚合的CNN可以在一定程度上保留其定位能力,但原则上,这些CNN在充分利用图像逻辑分类的输出logit的优势方面受到了限制。
  最近,使用局部特定类的响应引起了对图像分类的越来越多的关注,这使得它具有以下三个主要优点:
(1)有助于通过“视觉解释”(visual explanation)来表述的决策;
(2)通过将注意力集中在语义上与所考虑的标签相关的区域上,可以将空间注意机制用于性能改进;
(3)可以利用基于空间变换的、利用辅助的、自我监督损失或任务,从而增强网络的泛化能力。
  但是,大多数以前的方法都是通过常规的类激活映射技术(例如类激活映射(CAM)和梯度加权类激活映射(Grad-CAM)来获得空间logit或注意力图。他们仍然利用GAP进行图像级预测,这种方法只定位了目标对象的一小部分或跨类参与了不可分割的区域。这种不准确的注意力图妨碍了其用于提高分类准确性的用途,它也限制了有关空间标记的自我监督的应用,比如在简单空间变换(例如旋转和翻转)下保持注意力的一致性或原始注意力的裁剪和下降。
  因此,我们建议通过使用一种称为空间关注输出层(SAOL)的新输出模块,生成明确且更精确的空间逻辑图和注意力图,并进行有效的自我监督。具体来说,我们从特征图中分别获得空间logit(特定位置的类响应)和空间注意图。然后,将注意力权重用于空间对数的加权和,以产生分类结果。图1显示了与常规输出层相比所提出的输出层的整体结构。
  本文提出的输出过程可以看作是在空间逻辑上的加权平均池,以有选择地关注目标类别区域。对于更准确的空间对数,我们聚合了用于语义分段的解码器模块的多尺度空间对数。请注意,SAOL可以在向前传播过程中直接生成空间可解释的注意力输出,并定位目标位置,而无需任何后处理。此外,本文所提出的SAOL的计算成本和参数数量与先前基于GAP-FC的输出层几乎相同。
  此外,我们基于CutMix 应用了两种新颖的基于位置的自我监督损失,以提高泛化能力。我们注意到,与CutMix不同的是,CutMix将 “真实图像标签”(ground truth image labels)按比例混合到组合输入小块的区域,而所提出的自我监督则根据混合输入对自带注释的空间标签进行剪切和粘贴。拟议的损失使我们的空间逻辑和注意力图更加完整和准确。我们还通过将常规的GAP-FC和SAOL附加到SAP中,并通过将SAOL logits蒸馏到GAP-FC中来探索自蒸馏。该技术可以在不更改测试时间的情况下改善现有CNN的性能。
  我们使用各种最新的CNN在CIFAR-10 / 100和ImageNet 分类任务上进行了广泛的实验,并观察到提出的具有自我监督和自我蒸馏功能的SAOL也在不断提高性能我们的主要贡献可总结如下:
  •在现有CNN之上提出了SAOL,旨在通过显式位置特定类别响应上的空间注意机制来提高图像分类性能。
  •在SAOL中,单独获取归一化空间注意图以执行加权平均聚合精细的空间逻辑上的门,可以通过向前传播产生可解释的注意力输出和对象定位结果。
  •新颖的位置特定的自我监督损失和自我蒸馏损失被用于增强图像中SAOL的一般化能力级别的监督学习。
  •在具有各种基准数据集和网络体系结构的图像分类任务和弱监督对象定位(WSOL)任务上,提出的具有自我监督功能的SAOL均能持续改善性能。此外,消融实验显示出:神经网络从更准确的空间注意力以及更复杂的位置特定的自我监督中受益。
在这里插入图片描述

2. 相关工作

  类激活映射法。类激活映射方法已广泛使用(1)可视化空间类激活用于解释最终分类输出的决策;(2)结合基于其的辅助正则化以提高分类性能,或(3)用于执行WSOL。具体而言,CAM [47]通过将最后的卷积特征图与最后一个FC层上与该类别相关联的权重进行线性组合,可以获得每个类别的激活图。但是,CAM需要用卷积和GAP替换FC层以产生最终的分类输出。另一方面,提出了引导反向传播,解卷积和Grad-CAM 来通过使用反向传播中的梯度来生成类注意图,而无需改变架构。 Grad-CAM ++ 修改了Grad-CAM,以使用高阶导数更精确地定位相同类的多个实例。这些方法仍将GAP应用于图像级预测,这通常导致仅突出显示目标上可判别但不完整的部分。
  注意力机制。最近有几项研究探讨了将注意力机制用于图像分类和WSOL 。残差注意网络通过堆叠多个逐步完善特征图的软注意模块来修改ResNet 。 Jetleyet等提出了一个可训练的模块,用于生成注意力权重,以关注与手头分类任务相关的不同特征区域。 Wooetal引入了卷积块注意模块,该模块依次应用通道和空间注意模块以完善中间特征图。 Attention BranchNetwork(ABN)设计了一个基于CAM的单独的关注分支以生成关注权重,并使用它们来关注重要的特征区域。尽管所有这些注意方法都完善了中间特征图,但我们在输出层上应用了注意机制以直接改善空间输出logit。 Girdharet等人介绍了一种基于空间注意力的更紧密相关的方法,该方法用于将空间logit集中在动作识别任务上。但是,他们依旧仅使用最后一个特征图的简单线性映射。
  CutMix和注意力引导的自我监督。CutMix作为一种高效,强大的数据增强方法,最近得到了发展,它的性能大大优于诸如Cutout 和Mixup等以前的数据增强方法。但是,CutMix无法保证随机裁剪的补丁始终具有与标签混合使用相同比例的相应目标对象的一部分。最近的一些工作使用注意力图得出了辅助自我监督的损失。例如,Guoet等人提出在简单的空间变换下增强注意力的一致性,Huet等人将注意裁剪应用于数据增强。 Liet al提出了引导注意推理网络,该网络探索自我指导的监督以优化注意图。特别是,他们将注意力挖掘技术与图像裁剪技术结合使用来制作完整的注意力映射;但是,这些图是基于Grad-CAM获得的。Zhang et al介绍了对抗学习,以利用CAM发现的互补对象区域来发现整个对象。 Wang et等人 提出了新的学习目标,以增强跨层的注意分离性和注意一致性。与这些注意力指导的自我监督学习方法不同,我们在设计上使用了CutMix来实现更复杂的特定于位置的自我监督。
在这里插入图片描述

3. 方法

  在本节中,我们将详细描述拟议的称为SAOL的输出层体系结构以及特定于位置的自我监督损失和自我蒸馏损失。

3.1. 空间注意型输出层

  x和y分别为输入的图片和其对应的one-hot标签,对于卷积神经网络的图片分类,输入,的作为第一个输入到连续的大小为L个的卷积块的参数,其中中间特征层在第L级卷积块的计算过程表述为。这里
分别为输入第L级卷积矩阵的高、宽和通道长度。最后输出的标准化逻辑参数,该参数可以被视为预测结果对应k类的概率分布,全局池化层加全连接层的输出结构可以表述为:
在这里插入图片描述
  在上公式中,,表示经过GAP操作的到的特征向量,表示输出全连接层的权重矩阵。在上述公式中,其中表示在最后一个卷积块(第L个)中第c层特征图上(i,j)位置的元素。我们的方法不是在最后的特征图上进行聚合,而是在每个空间位置上显式生成输出对数,然后通过空间关注机制选择性地将它们进行聚合。
  特别的,本文提出的SAOL方法,首先会生成“空间注意图”(Spatial Attention Map)和“空间逻辑参数”(Spatial Logits),分别表示为。这里我们默认,注意力值通过跨空间位置的softmax进行归一化,而我们对跨类的空间logit采用softmax,由于使用softmax易知。我们通过如下公式生成最终的输出参数:在这里插入图片描述  SAOL中的体系结构在图2中进行了详细描述。首先获得空间注意力图A,我们再将最后一个卷积特征图XL输入到入两层卷积中,然后再输入到softmax函数。同时,为了获得精确的空间逻辑,我们结合了以前的解码器模块进行语义分割的多尺度空间逻辑。具体来讲,就是在每个被选定块上,将特征图调整为输出空间分辨率后,通过卷积将其映射到中间的空间逻辑。然后,通过另一个卷积层和softmax函数将一组中间空间逻辑连接起来,并重新映射到最终空间逻辑Y。请注意,与CAM 和Grad-CAM 相比,此SAOL可以以前馈方式使用A和Y直接生成空间可解释的注意力输出或目标对象位置。这使得有可能在训练期间使用特定于位置的正则化器,如下一节所述。
在这里插入图片描述

3.2. 自我监督的损失

  本文提出的SAOL在训练时,即使仅以一般交叉熵损失LCE(交叉熵)作为我们监督的损失,使得,也能表现良好。但是,为了充分利用特定位置的输出信息来提高分类性能,我们添加了两个受CutMix 和自我监督学习方法启发的新颖的空间损失。
  CutMix通过混合某个样本(xB,yB)和从另一个样本(xA,yA)提取的随机补丁生成一个新的训练样本(x’,y’),如下所示:
在这里插入图片描述  其中M表示用于裁剪和粘贴矩形区域的二进制掩码,而λ是使用beta分布采样的组合比率。这种标签混合策略意味着,在其标签范围内,切割区域的含义应与裁剪区域的大小相同。但是,这种假设通常是不正确的,因为随机裁剪的补丁可能无法捕获到相应目标对象,尤其是在目标对象较小时。
  特别的,我们还是采用了两个自主设计的空间标签和自我监督损失函数,如图3所示,给定一个CutMix版本的输入图像,第一个自我监督的损失LSS1在调整为Ho×Wo后使用了一个附加的地面真相标签。
  我们提出的第二个自我监督损失LSS2是将混合输入的粘贴区域中的空间对数与原始数据的剪切区域中的空间对数进行匹配,如下所示:
在这里插入图片描述
  其中DKL表示KullbackLeibler散度2,YA表示xA的空间对数。由于这些自我监督可以规范化网络以标识特定的粘贴位置或在粘贴区域中产生相同的空间对数,因此可以导致空间上一致的特征表示,从而提高性能。值得注意的是,我们仅通过来更新网络的梯度。

3.3. 自蒸馏损失

  由于可以将拟议的SAOL插入现有的CNN中,因此在训练过程中,我们同时利用了先前基于GAP-FC的输出层和SAOL,如图2所示。具体来说,我们提出了从SAOL到现有输出层的知识转移。为此,我们设计了一个自蒸馏损失LSD,其中两个最终输出对数由两个输出层从给定的输入图像分别获得,如下所示:
在这里插入图片描述  其中,β是两个损失项之间的相对权重,在其他自蒸馏方法中也类似使用。我们将β= 0.5。在测试时,我们仅采用两个输出模块之一来产生分类结果。如果选择基于GAP-FC的输出层,尽管可以忽略不计,但在测试时可以提高现有CNN的分类性能而无需更多的算力。
  最后,我们在训练中使用的最终损失L定义为:
在这里插入图片描述
如果实验使用不同的损失比例实验结果可能会进一步改善。

在这里插入图片描述

4. 实验

  与以前的方法相比,我们通过自我监督和自我蒸馏来评估我们的SAOL。我们首先在4.1节中研究我们提出的方法对几种分类任务的影响。然后,为了对获得的注意力图进行定量评估,在4.2节中进行了WSOL实验。
  所有实验都在PyTorch 中进行了,通过修改官方的CutMix源代码。为了进行合理的比较,我们尝试不从诸如CutMix和ABN之类的标准方法中更改超参数。我们通过提议的自蒸馏损失以端到端的方式同时训练了SAOL和基于GAP-FC的输出层。在测试时,我们通过SAOL或基于GAP-FC的输出层获得了分类结果。

4.1. 图像分类任务

4.1.1 CIFAR-10, CIFAR-100 数据集分类

  图像分类的首次性能评估是在CIFAR-10和CIFAR-100基准测试中进行的,这是研究最广泛的分类任务之一。我们使用来自AutoAugment 的Wide-ResNet 的相同超参数。使用相同设置的ABN 训练了ResNet和DenseNet模型,以相互比较。对于PyramidNet200(扩展因子α= 240),我们使用与CutMix 中使用的相同的超参数,但学习速率及其衰减时间表除外。我们使用0.1作为余弦退火进度表的初始学习率。虽然我们的初始网络在进行此细微更改后仍无法获得更好的结果,但拟议中的SAOL并没有实现明显的性能改进。每个实验执行五次以报告其平均性能。
  表1和表2分别比较了CIFAR-10和CIFAR-100的初始网络和添加SAOL方法的网络。在DenseNet-100以外的所有模型中,本文的SAOL始终优于初始的方法。此外,在大多数情况下,对于CIFAR-10,SAOL对自蒸馏GAP-FC进行了明显改进。但是,我们自蒸馏的GAP-FC也始终优于初始的方法。这意味着,即使没有诸如对象定位标签之类的空间监督,SAOL仍可以适当地学习空间注意力,并且最终比平均功能要好。当我们在培训期间额外使用CutMix时,这种一致的改进也得以保持。
  我们还将SAOL与最近提出的ABN进行了比较。就使用注意力图而言,两种方法之间存在相似之处。但是,SAOL使用注意力图来聚合空间输出logit。相反,ABN仅在最后的特征图上使用注意力机制,并改编先前的GAP-FClayer。对于ResNet-110和DenseNet-100,我们使用ABN中使用的相同超参数训练了模型。 ResNet-110和带有ABN的DenseNet-100在CIFAR-10上的准确度分别为95.09%,95.83%和在CIFAR-100上的准确度分别为77.19%,78.37%。这些结果表明,具有SAOL的模型的性能要比具有ABN的模型好得多。我们强调ABN也需要更多的计算。具体而言,带有ABN的ResNet-110需要5.7GFLOP,而带有SAOL的ResNet-110仅需要2.1GFLOP。由于原始的ResNet-110可计算多达1.7个GFLOP,因此SAOL不仅比ABN更有效,而且还提供了一种通过自我蒸馏保持完整计算量的方法。

4.1.2 图像网络的分类

  我们还根据ILSVRC 2012分类基准(ImageNet)对SAOL进行了评估,该基准由120万张用于训练的自然图像和50,000张用于1,000个类别的验证的图像组成。我们对CutMix使用了相同的超参数。
  为了更快地进行训练,我们只是将批量大小更改为4,096,并采用线性调整的学习速率和逐步的预热时间表,如我们所述,我们还用深度可拆分卷积替换了SAOL中的所有卷积以减少计算量。 我们发现,在许多情况下,这种卷积变化在性能上产生了边际差异。
  表3显示了具有不同架构的性能。 我们引用了CutMix论文的结果,但ResNet-200除外,该论文未经CutMix测试。 我们训练了所有具有相同超参数的模型,以进行公平的比较。 我们的结果表明,使用SAOL的模型始终优于使用GAP-FC的模型。 例如,经过CutMix规范化训练的ResNet-101架构获得了top-1准确性的79.83%,比不使用CutMix的78.13%有所提高;对于不使用和使用CutMix这两种情况,SAOL都将模型分别提高了0.46%和0.66% 。 我们注意到添加SAOL仅需要增加6%的计算(从7.8 GFLOP到8.3 GFLOP),与以前的方法相比,它是高效的。 如图4所示,SAOL的表现要优于残留注意力网络和ABN,即使计算成本要小得多。
在这里插入图片描述

4.1.3消融研究

  在本节中,我们对SAOL中的许多因素进行了消融实验,以衡量它们对我们出色绩效的贡献
  空间Logit多层特征聚合的有效性 SAOL不仅使用lastconvolution块中的功能,还使用多个中间块中的功能来生成空间logit。在检测和分割任务中,大多数工作类似地在解码器中使用了多个特征层,以实现更大的尺寸不变性。我们在CIFAR-100上进行了实验,以验证根据不同数量的性能变化组合特征以生成SAOL的空间对数,表4显示了获得的结果。可以通过使用更多用于空间logit的要素层来提高性能。
  自我监督的有效性 为了验证所提出的两个自我监督损失的好处,我们在CIFAR-10和CIFAR-100(C-100)上使用Wide-ResNet 40-2进行了实验,结果如表5所示。与基准模型相似,仅原始的CutMix正则化也改善了SAOL。但是,附加包含LSS1或LSS2的性能进一步增强。将两种自我监督的损失与SAOL结合使用可实现最佳性能。
  请注意,我们还尝试在基线上使用LSS1。 为此,我们在最后一个卷积块上附加了辅助层,以生成预测CutMix区域的空间图,并共同训练原始图像分类损失和LSS1。结果,使用LSS1并不能改善基线的性能。我们推测SAOL与LSS1配合得很好,因为它试图同时学习分类输出的注意图。
  自蒸馏的有效性 我们还对CIFAR-100进行了实验,以测量自蒸馏的有效性。标准交叉熵(CE)代替了SAOL的蒸馏结果,而不是SAOL的蒸馏结果。在训练过程中,损耗仅加在GAP-FC辅助层上。结果显示在表6中。无论在测试时选择哪个输出层,都对SAOL和基于GAP-FC的输出层进行相同的CE损失训练会导致性能下降(与使用我们的自我评估方法相比)蒸馏损失LSD,即使它仍然优于基线。这表明通过我们的自我蒸馏,将知识从可靠的SAOL转移到基于GAP-FC的常规输出层是有益的,可提高性能.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.2. 弱监督的对象本地化任务

  为了通过SAOL定量评估空间注意力图,我们使用ResNet-50模型对WSOL的​​任务进行了实验。我们遵循了现有WSOL方法的评估策略。 WSOL中的一种常见做法是使用最小-最大或最小化对得分图进行归一化以使其值介于0和1之间。可以通过阈值对归一化的输出得分图进行二值化,然后选择二进制掩码中最大的连接区域。对我们的模型进行了修改,以将空间注意力图和空间对数的空间分辨率从7×7扩大到14×14,并对ImageNet训练模型进行了微调。我们将获得的空间注意力图和空间对数作为无元素乘积相结合,以生成类空间注意图。
  结果如表7所示,与以前的性能良好的方法相比,我们的方法在ImageNet和CUB200-2011上具有竞争性的定位精度。值得注意的是,我们的竞争方法只需要很少的计算就可以生成注意力图以进行对象定位。虽然使用CAM很普遍,但不可避免的是繁琐的反向计算。最近提出的ABN 可以通过单次向前通过生成注意力图;但是,它使用计算昂贵的注意力机制修改了骨干网络。 SAOL在竞争激烈的情况下,会减少计算费用。我们还强调,我们的结果无需任何复杂的后处理即可获得,这是许多WSOL方法所要求的。利用复杂的后处理以及具有更大注意力图的培训可以进一步改善结果。
  图5可视化了SAOL在CutMix版本图像上获得的空间注意图和空间对数。我们的空间注意力图着眼于与客观性一般概念相对应的区域。另一方面,空间输出记录显示了特定类别的激活图,这些激活图在相应的目标对象区域中得分较高。 在两个对象混合在一起的情况下,SAOL的注意力图很好地定位了每个对象,并且其得分也更准确地反映了每个对象的相对重要性。

在这里插入图片描述

5.结论

  我们提出了一个用于图像分类的新输出层,称为空间关注输出层(SAOL)。新颖的两个分支(空间注意力图和空间逻辑)的输出通过注意力机制生成分类输出。提出的SAOL以几乎相同的计算成本提高了各种任务的代表性体系结构的性能。此外,专门为SAOL设计的其他自我监督损失也进一步改善了性能。 SAOL产生的注意力图和空间对数可用于弱监督的对象定位(WSOL),不仅对WSOL任务而且对可解释的网络都显示出令人鼓舞的结果。我们将继续进行这项研究,以开发出更好的类似于解码器的输出结构来进行图像分类任务,并探索在无需人工的情况下更复杂地使用自注释空间信息的方法。

之后还应该会更新一篇相应的阅读笔记,翻译不易,如要转载请注明出处~

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值