第九章:Adversarial Complementary Learning for Weakly Supervised Object Localization ——对于弱监督对象定位的对抗互补学习

0.摘要

        在这项工作中,我们提出了对抗互补学习(ACoL),以实现弱监督下语义感兴趣的对象的自动定位。我们首先在数学上证明了可以通过直接选择最后一个卷积层的类特定特征图来获得类定位图,这为识别对象区域提供了一种简单的方法。然后,我们提出了一个简单的网络架构,包括两个并行分类器用于对象定位。具体而言,我们利用一个分类分支在前向传递过程中动态定位一些具有区分性的对象区域。尽管它通常对目标对象的稀疏部分有响应,但这个分类器可以通过从特征图中擦除其发现的区域来驱使对应的分类器发现新的和互补的对象区域。通过这种对抗性学习,两个并行分类器被迫利用互补的对象区域进行分类,并最终共同生成完整的对象定位。ACoL的优点主要有两个:1)它可以以端到端的方式进行训练;2)动态擦除使对应的分类器更有效地发现互补的对象区域。我们通过一系列实验证明了ACoL方法的优越性。特别是,在ILSVRC数据集上的Top-1定位错误率为45.14%,达到了新的最先进水平。

1.引言

        弱监督对象定位(WSOL)是指使用图像级别标签在给定图像中学习对象位置的方法。目前,WSOL引起了越来越多的关注,因为它不需要昂贵的边界框注释进行训练,与完全监督的方法相比,可以节省大量的人力成本。

        仅使用图像级别的监督进行学习以定位感兴趣的对象是一项非常具有挑战性的任务。一些先驱性的工作已经提出了根据预训练的卷积分类网络生成类特定定位图的方法。例如,Zhou等人通过将一些高层次的层替换为全局平均池化层和全连接层来修改分类网络(如AlexNet和VGG-16),这可以聚合最后一个卷积层的特征以生成具有区分性的类激活图(CAM)用于定位目的。然而,我们观察到这种解决方案存在一些关键问题,主要包括:1)过度依赖类别间区分性特征进行图像分类;2)未能在图像中密集地定位目标对象的完整区域。这两个问题主要是因为分类网络倾向于从最具区分性的部分识别模式,这不可避免地导致了第二个问题。例如,给定包含猫的图像,网络可以通过识别头部而无视其他部分(如身体和腿)来识别它。

        为解决这些问题,Wei等人提出了一种对抗擦除(AE)方法,通过在部分擦除了具有区分性目标区域的图像上训练额外的分类网络,来发现完整的对象区域。然而,AE的一个主要缺点是需要训练多个独立的分类网络来获得完整的对象区域,这会消耗更多的训练时间和计算资源。最近,Singh等人通过随机隐藏输入图像的补丁来增强CAM,以迫使网络寻找其他区分性部分。然而,随机隐藏补丁而没有任何高级指导是低效的,并且不能保证网络总是能发现新的对象区域。

        在本文中,我们提出了一种新颖的对抗互补学习(ACoL)方法,通过端到端的弱监督训练来发现感兴趣的整个对象。ACoL的关键思想是通过受到AE启发的两个对抗分类器来找到互补的对象区域。具体而言,首先利用一个分类器来识别最具区分性的区域,并引导中间特征图上的擦除操作。然后,我们将被擦除的特征输入到其对应的分类器中,以发现新的和互补的与对象相关的区域。这样的策略驱使这两个分类器挖掘互补的对象区域,并最终获得所期望的完整对象定位。为了方便进行ACoL的端到端训练,我们在数学上证明了可以通过直接从最后一个卷积层的类别特定特征图中选择来获得对象定位图,而不是使用[48]中的后推断方式。因此,在训练前向传递过程中,可以方便地根据在线推断的对象定位图识别出有区分性的对象区域。

        我们的方法相比于AE [39]具有多个吸引人的优势。首先,AE独立地训练三个网络进行对抗擦除。ACoL将这两个对抗分支合并到一个单一的网络中进行联合训练。所提出的联合训练框架更能够整合这两个分支之间的互补信息。其次,AE采用递归方法生成定位图,并且需要多次进行网络前向传递。相反,我们的方法只需一次前向传递就可以生成定位图。这个优势极大地提高了效率,并且使我们的方法更容易实现。第三,AE直接采用CAM [48]生成定位图。因此,AE的生成定位图需要经过两个步骤。与之不同的是,我们的方法通过选择与groundtruth最匹配的特征图作为定位图,只需一步就可以生成定位图。我们还提供了详细的证明,理论上证明了我们的方法更简单、更高效,但是产生的结果与CAM [48]相同(见第3.1节)。

        ACoL的过程如图1所示,其中一张图像被处理以估计马的区域。我们可以观察到,分类器A利用了一些有区分性的区域(马的头部和后腿)进行识别。通过在特征图中擦除这些有区分性的区域,分类器B被引导使用新的和互补的对象区域的特征(马的前腿)进行分类。最后,通过融合两个分支的对象定位图,得到完整的目标区域。为了验证ACoL的有效性,我们进行了一系列的对象定位实验,使用从生成的定位图推断出的边界框。

总结起来,我们的主要贡献有三个:

  • 我们在前向传递过程中提供了产生类别特定特征图的理论支持,这样对象区域可以在方便的方式下简单地被识别出来,这有助于未来相关研究的发展。
  • 我们提出了一种新颖的ACoL方法,在弱监督的情况下通过两个对抗分类器高效地挖掘不同的区分性区域,从而发现对象的完整目标区域进行定位。
  • 在弱监督设置下,这项工作在ILSVRC 2016数据集上取得了当前最先进的结果,Top-1误差率为45.14%,Top-5误差率为30.03%。

图1:提出的ACoL方法的示意图。我们证明了在前向传递过程中可以方便地获得对象定位图。基于此,我们设计了并行对抗分类器架构,通过对抗擦除特征图,两个分类器(A和B)发现了互补的区域(头部和后腿对应前腿)。GAP表示全局平均池化。

2.相关工作

全监督的检测已经得到了广泛研究并取得了非凡的成功。最早用于以一阶段方式检测对象的深度网络之一是OverFeat [32],它采用多尺度和滑动窗口的方法来预测对象边界,然后将这些边界应用于累积边界框。SSD [25]和YOLO [28]使用类似的一阶段方法,它们专门设计用于加速检测。Faster-RCNN [29]采用了一种新颖的两阶段方法,在目标检测方面取得了巨大成功。它使用滑动窗口生成区域提案,并在统一的网络中实时预测高可靠性的对象位置。Lin等人 [24]指出,通过以较小的额外成本构建特征金字塔,可以显著提高Faster-RCNN的性能。

弱监督的检测和定位旨在通过仅使用图像级别的监督来使用一种替代性更便宜的方法[2,35,1,38,30,19,10,9,18,22,26]。Oquab等人[26]和Wei等人[42]采用了类似的策略,利用最大池化MIL学习多标签分类网络,然后将网络应用于粗糙的对象定位[26]。Bency等人[2]应用了一种束搜索方法,逐步定位边界框候选区域。Singh等人[35]提出了一种在输入图像上随机隐藏补丁的方法,以寻找更多的对象区域。类似地,Bazzani等人[1]通过随机屏蔽输入图像的区域分析分类网络的分数,并提出了一种聚类技术来生成自学习的定位假设。Deselaers等人[7]使用具有可用位置注释的额外图像来学习对象特征,然后应用条件随机场来将通用知识通常适应于特定的检测任务。

弱监督分割应用类似的技术来预测像素级标签[40,41,39,16,20,27,43]。Wei等人[40]利用具有简单场景的额外图像,提出了一个从简单到复杂的方法,逐步学习更好的像素注释。Kolesnikov等人[20]提出了SEC,将种子生成、扩展和边界约束三个损失函数整合到一个统一的框架中,以学习分割网络。Wei等人[39]提出了与我们类似的想法,以找到更具辨别性的区域,他们在后处理步骤中通过训练额外的独立网络来生成类别特定的激活图,并在预训练网络的帮助下进行。

3.对抗互补学习

        在本节中,我们将详细描述用于弱监督目标定位的提出的对抗互补学习(ACoL)方法的细节。首先,我们回顾了CAM [48]并介绍了一种更方便的方法来生成定位图。然后,我们介绍了基于上述发现的ACoL的详细信息,用于挖掘高质量的对象定位图并定位完整的对象区域。

3.1.重新审视CAM(类激活图)

        对象定位图已经在许多任务中被广泛使用[26,40,1,45],为可视化深度神经网络在识别中关注的区域提供了一种有希望的方式。Zhou等人[48]提出了一个两步方法,可以通过将最后一个全连接层的权重与特征图相乘来生成对象定位图。

        假设我们有一个全卷积网络(FCN),其最后的卷积特征图记为S∈RH×H×K,其中H×H是空间尺寸,K是通道数。在[48]中,特征图被输入到一个全局平均池化(GAP)[23]层,然后是一个全连接层。在顶部应用了一个softmax层进行分类。我们将第k个特征图的平均值表示为sk=∑i,j(Sk)i,j/(H×H),其中(Sk)i,j是第k个特征图Sk中第i行第j列的元素。全连接层的权重矩阵表示为Wfc∈RK×C,其中C是目标类的数量。为了方便起见,我们忽略了偏置项。因此,对于目标类别c,第c个softmax节点ycfc的输入可以定义为:        其中Wfc k,c表示矩阵Wfc中第k行第c列的元素。第k行Wk,c fc,k =0,1,...,K −1对计算ycfc的值有贡献。因此,[48]中提出的类别c的对象定位图Afc c可以通过以下方式聚合特征图S来获得,

 

         CAM提供了一种有用的方式来检查和定位目标对象的区域,但在前向传播之后需要额外的步骤来生成对象定位图。在这项工作中,我们揭示了可以通过直接从最后一个卷积层的特征图中进行选择来方便地获得对象定位图。最近,一些方法[17,4]已经使用这种方式获得了定位图,但我们是第一个证明这种方便的方法可以生成与CAM相同质量的定位图,这是有意义的,并有助于将定位图嵌入到复杂网络中。接下来,我们提供了理论证明和可视化比较,以支持我们的发现。给定FCN的输出特征图S,我们在特征图S的顶部添加一个通道数为C、卷积核大小为1×1、步长为1的卷积层。然后,输出被输入到一个GAP层,然后是一个softmax层进行分类。假设1×1卷积层的权重矩阵为Wconv∈RK×C。我们将定位图Aconv c,c = 0,1,...,C −1定义为1×1卷积层的输出特征图,Aconv c可以通过以下方式计算得到:

 其中Wk,c表示矩阵W的第k行第c列的元素。因此,softmax层的第c个输入值ycconv是Aconv c的平均值。因此,ycconv可以通过以下方式计算得到

         观察到如果我们以相同的方式初始化两个网络的参数,ycfc和ycconv是相等的。此外,Afc c和Aconv c具有相同的数学形式。因此,在网络收敛后,我们获得相同质量的对象定位图Afc c和Aconv c。实际上,这两种方法生成的对象定位图非常相似,并且突出显示了相同的目标区域,除了由于随机优化过程引起的一些边缘差异。图2比较了由CAM和我们修正的方法生成的对象定位图。我们观察到这两种方法都可以生成相同质量的地图,并在给定图像中突出显示相同的区域。然而,使用我们修正的方法,对象定位图可以在前向传播中直接获得,而不是CAM中提出的后处理步骤。

图2:生成定位图方法的比较。我们的方法可以以与CAM [48]相同的质量生成定位图,但更加方便。

图3:提出的ACoL方法的概述。输入图像经过Backbone处理,提取中层特征图,然后输入到两个并行分类器中,用于发现互补的对象区域。每个分类器由几个卷积层组成,后面是一个全局平均池化(GAP)层和一个softmax层。与分类器A不同,分类器B的输入特征图会根据分类器A的对象定位图进行擦除。最后,来自两个分类器的对象地图被融合用于定位。

3.2.提出的ACoL(Adversarial Complementary Learning)

        第3.1节中的数学证明为所提出的ACoL提供了理论支持。我们认识到深度分类网络通常利用特定类别的独特模式进行识别,并且生成的对象定位图只能突出显示目标对象的一个小区域,而不是整个对象。我们提出的ACoL旨在通过对抗学习的方式发现完整的对象区域。特别是,它包括两个分类器,可以在给定图像中挖掘目标对象的不同但互补的区域。

        图3展示了提出的ACoL的架构,包括三个组件:骨干网络(Backbone)、分类器A和分类器B。骨干网络是一个完全卷积网络,作为特征提取器,接受原始的RGB图像作为输入,并生成具有多个通道的高级位置感知特征图。来自骨干网络的特征图然后被送入以下的并行分类分支。每个分类器的对象定位图可以通过在第3.1节中描述的方式方便地获得。两个分支都由相同数量的卷积层组成,紧接着是一个全局平均池化层(GAP层)和一个softmax层用于分类。两个分类器的输入特征图是不同的。特别地,分类器B的输入特征通过分类器A产生的挖掘出的判别区域的指导进行擦除。我们通过对分类器A的定位图进行阈值处理来识别判别区域。对于分类器B的输入特征图中相应的区域,我们通过将其值替换为零以对抗方式进行擦除。这样的操作鼓励分类器B利用目标对象的其他区域的特征来支持图像级别的标签。最终,通过将两个分支生成的定位图进行组合,可以得到目标对象的完整定位图。

        形式上,我们将训练图像集表示为I = {(Ii, yi)}Ni=0-1,其中yi是图像Ii的标签,N是图像的数量。输入图像Ii首先通过Backbone f(θ0)转换为具有K个通道和H1×H1分辨率的空间特征图S ∈ RH1×H1×K。我们用θ表示CNN的可学习参数。分类器A被表示为f(θA),它可以以弱监督的方式根据输入特征图S生成大小为H2×H2的对象地图MA,如第3.1节所述。MA通常突出显示目标类别的独特区域。

        我们将具有大于给定阈值δ的像素值的区域识别为最具有判别性的区域,这些像素值位于对象定位图中。如果H1 ≠ H2,则将MA通过线性插值调整大小为H1×H1。根据挖掘出的判别区域,我们在S中擦除这些区域。我们用S˜表示被擦除的特征图,可以通过将被识别的判别区域的像素值替换为零来生成。分类器B f(θB)可以使用输入S˜生成对象定位图MB ∈ RH2×H2。然后,可以通过反向传播来更新网络的参数θ。最后,我们可以通过合并MA和MB两个地图来获得类别c的完整对象地图。具体来说,我们将两个地图归一化到范围[0,1],并将它们表示为M¯A和M¯B。融合的对象定位图M¯fuse通过M¯i,j fuse =max(M¯i,j A ,M¯i,j B)来计算,其中M¯i,j是归一化地图M¯在第i行和第j列的元素。整个过程以端到端的方式进行训练。两个分类器都采用交叉熵损失函数进行训练。算法1说明了提出的ACoL方法的训练过程。

        在测试过程中,我们根据预测的类别提取融合的对象地图,并通过线性插值将它们调整为与原始图像相同的大小。为了进行公平比较,我们采用了[48]中详细描述的相同策略来基于生成的对象定位图生成对象边界框。具体而言,我们首先通过固定阈值对前景和背景进行分割。然后,我们寻找覆盖前景像素中最大连通区域的紧密边界框。更多细节请参考[48]。

4.实验

4.1.实验设置

数据集和评估指标我们在两个数据集上评估ACoL的分类和定位准确性,即ILSVRC 2016 [6,31]和CUB-200-2011 [37]。ILSVRC 2016包含1.2百万张来自1,000个类别的图像用于训练。我们在验证集上与其他方法进行比较,该集合包含50,000张图像。CUB-200-2011 [37]包含11,788张来自200个类别的图像,其中5,994张用于训练,5,794张用于测试。我们使用[31]建议的定位指标进行比较。该指标计算具有与真实边界框50%以上IoU的图像的百分比。此外,我们还在Caltech-256 [14]上实现了我们的方法,以展示在定位整个目标对象方面的出色性能。

实现细节我们使用VGGnet [34]和GoogLeNet [36]来评估提出的ACoL方法。特别地,我们移除了VGG-16网络中conv5-3之后的层(从pool5到prob),以及GoogLeNet中的最后一个inception块。然后,我们添加了两个卷积层,卷积核大小为3×3,步长为1,填充为1,具有1024个单元,以及一个卷积层,卷积核大小为1×1,步长为1,具有1000个单元(对于CUB-200-2011和Caltech-256数据集分别为200和256个单元)。根据第3.1节的证明,可以方便地从1×1卷积层的特征图中获取定位图。最后,在卷积层的顶部添加了一个GAP层和一个softmax层。两个网络都在ILSVRC [31]的预训练权重上进行微调。输入图像在调整为256×256像素后,被随机裁剪为224×224像素。我们测试了不同的擦除阈值δ,从0.5到0.9。在测试中,擦除阈值δ与训练中的值保持不变。对于分类结果,我们对10个裁剪图像(4个角落加中心点,与水平翻转相同)的softmax层得分进行平均。我们使用具有12GB内存的NVIDIA GeForce TITAN X GPU训练网络。

表1:在ILSVRC验证集上的分类错误率。

4.2.与当前主流方法的对比

分类:表1显示了在ILSVRC验证集上的Top-1和Top-5错误率。我们提出的方法GoogLeNet-ACoL和VGGnet-ACoL在分类结果上略优于GoogLeNet-GAP和VGGnet-GAP,并且与原始的GoogLeNet和VGGnet相当。对于细粒度识别数据集CUB-200-2011,也取得了显著的性能。表2总结了分类任务中使用或不使用边界框注释的基准方法。我们发现,我们的VGGnet-ACoL在不使用边界框的所有方法中,错误率最低,为28.1%。

        总结一下,虽然我们修改后的网络实际上并没有使用全连接层,但是我们提出的方法可以使网络实现与原始网络相当的分类性能。我们将这归因于擦除操作,它引导网络发现更具区分度的模式,从而获得更好的分类性能。

定位:表3展示了在ILSVRC验证集上的定位错误率。我们观察到我们的ACoL方法优于所有基准方法。VGGnet-ACoL比VGGnet-GAP显著更好,而GoogLeNet-ACoL也比采用随机擦除输入图像策略的GoogLeNet-HaS-32表现更好。我们在CUB-200-2011数据集上展示了定位性能,如表4所示。我们的方法在Top-1错误率上比GoogLeNet-GAP提高了4.92%。

        通过将我们的定位结果与最先进的分类结果(如ResNet [15]和DPN [5])相结合,进一步提高了定位性能,以打破在计算定位准确性时分类的限制。如表5所示,随着分类结果的改善,定位准确性不断提高。当应用来自集成DPN的分类结果时,我们的Top-1错误率提高到45.14%,Top-5错误率提高到38.45%。此外,我们只选择来自前三个预测类别的边界框(参考[48]),仅通过选择这些边界框,我们将Top-5定位性能(用*表示)提升到30.03%(在ILSVRC上)。

        图4可视化了所提出的方法和CAM方法[48]的定位边界框。ACoL生成的目标定位图可以覆盖更大的目标区域,从而获得更准确的边界框。例如,我们的方法可以发现鸟的几乎整个部分,如翅膀和头部,而CAM方法[48]只能找到鸟的一小部分,如头部。图5比较了两个分类器在挖掘目标区域时的目标定位图。我们观察到分类器A和分类器B在发现不同但互补的目标区域方面都取得了成功。这两个分类器的定位图最终可以融合成一个稳健的定位图,在其中整个目标得到有效的突出显示。因此,我们获得了提升的定位性能。

表2:在细粒度CUB-200-2011测试集上的分类错误率。

表3:在ILSVRC验证集上的定位错误率(*表示仅使用高分预测来提高Top-5性能的方法)

表4:在CUB-200-2011测试集上的定位错误率。

表5:在ILSVRC验证集上,使用最先进的分类结果的定位/分类错误率。

4.3.消融研究

        在所提出的方法中,通过擦除分类器B的输入特征图,两个分类器定位不同的感兴趣区域。我们通过一个硬阈值δ来确定具有辨别力的区域。为了检查阈值对定位准确性的影响,我们在表6中测试了不同的阈值值δ∈{0.5,0.6,0.7,0.8,0.9}。在ILSVRC上,当阈值δ=0.6时,我们获得了最佳的Top-1错误性能,而当擦除阈值较大或较小时,性能变差。我们可以得出以下结论:1)所提出的互补分支(分类器B)成功地与分类器A协同工作,因为前者可以挖掘互补的目标区域,从而生成完整的目标区域;2)良好设计的阈值可以提高性能,因为过大的阈值不能有效地鼓励分类器B发现更多有用的区域,过小的阈值可能会引入背景噪声。

        我们还测试了一个由三个分类器组成的级联网络。具体来说,我们添加了第三个分类器,并根据来自分类器A和B的融合目标定位图擦除其输入特征图。我们观察到,在分类和定位性能方面没有显著的改善。因此,添加第三个分支并不一定会提高性能,通常两个分支足以定位完整的目标区域。

        此外,我们消除了分类结果造成的影响,并使用真实标签比较了使用地面实况的定位准确性。如表7所示,所提出的ACoL方法在Top-1错误率上达到了37.04%,超过了其他方法。这表明了我们方法生成的目标定位图的优越性,并显示出所提出的两个分类器能够成功地定位互补的目标区域。

图4:与CAM方法的比较。我们的方法可以定位更大的目标区域,从而提高定位性能(地面真实边界框为红色,预测边界框为绿色)。

表6:使用不同的擦除阈值的定位错误率。

表7:在ILSVRC验证数据集上使用真实标签的定位错误率。

5.总结

        首先,我们通过数学证明了可以通过从特征图中选择来方便地获得目标定位图。基于此,我们提出了一种名为Adversarial Complementary Learning的方法,以弱监督的方式定位目标物体区域。所提出的两个对抗分类器可以定位不同的物体部分,并发现属于同一物体或类别的互补区域。大量实验证明,所提出的方法可以成功挖掘出完整的目标区域,并且胜过了最先进的定位方法。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值