TS-CAM:用于弱监督目标定位的令牌语义耦合注意图
弱监督对象定位(WSOL)是一个具有挑战性的问题,当给定图像类别标签时,需要学习对象定位模型。优化卷积神经网络(CNN)进行分类,倾向于激活局部区分区域,而忽略完整的对象范围,导致部分激活问题。在本文中,我们认为部分激活是由CNN的内在特征引起的,其中卷积操作产生局部接受域,并难以捕获像素之间的长程特征依赖性。我们引入了令牌语义耦合注意图(TS-CAM),以充分利用视觉转换器中的自注意机制进行长程依赖性提取。TS-CAM首先将图像分割成一系列补丁标记进行空间嵌入,从而产生长距离视觉依赖的注意图,以避免部分激活。然后,TS-CAM为补丁令牌重新分配与分类相关的语义,使每个标记都能够知道对象类别。TS-CAM最终将补丁标记与语义不可知的注意图耦合,以实现语义感知定位。在ILSVRC/CUB-200-2011数据集上的实验表明,TS-CAM优于7.1%/27.1%对WSOL的CNN-CAM,实现了最先进的性能。代码可在https://github.com/vasgaowei/TS-CAM上找到。
弱监督学习是指利用标注不完整的训练数据来学习识别模型的方法。弱监督对象定位(WSOL)
只需要图像级别的注释来表示图像中存在或不存在一类对象来学习定位模型[21,22,25,43]。WSOL吸引了越来越多的关注,因为它可以利用带有标记的丰富Web图像来学习对象级模型[43]。
图1所示。弱监督对象定位结果的比较。(一)输入图像。(b)类激活图(CAM)。(c)转移注意力:基于变压器的注意力。(d) TS-CAM。对象本地化框是红色的。(彩色浏览效果最佳)。
类激活映射(Class Activation Mapping, CAM)[51]作为WSOL[6]的基石,利用最后一卷积层的激活映射生成语义感知的定位映射,用于对象边界框估计。然而,由于通过class分类模型激活的识别区域往往比物体的实际范围[2]小得多,CAM对物体区域的估计严重不足。局部鉴别区域能够最大限度地减少图像分类损失,但很难实现目标的精确定位[43],图1(b)。为了解决这一问题,人们做了很多努力,提出了各种正则化[47,48,43,19,20]、发散性活动[30,43,45]或对抗性训练[7,20,40,47,45,30]。然而,很少有人关注从根本上解决CNN的局部代表的固有缺陷,如图2(a)。获取长程特征依赖是WSOL的关键,它可以解释为不同空间位置特征之间的语义相关性。
图2。比较(a)基于cnn的CAM、(b)基于转换模型的Attention和(c)提出的TS-CAM的机制。
基于cnn的CAM方法受小范围特征依赖的限制,基于变压器的注意受语义问题的限制。
TS-CAM能够生成语义耦合的注意力地图,用于完整的目标定位。
近年来,视觉转换器已被引入计算机视觉领域。视觉转换器[9]通过将输入图像分割成带有位置嵌入的小块,并应用级联的transformer模块来提取视觉表示,从而构造一个令牌序列。由于自我注意机制和多层感知器(Multilayer Perceptron, MLP)结构,视觉变压器可以学习复杂的空间位置变换并自适应地反映大范围语义关联,这对定位完整的对象范围至关重要。1 (d)。然而,由于以下两个原因,视觉转换器不能直接缓解WSOL的影响:(1)在使用patch embedding时,破坏了输入节点的空间拓扑结构,阻碍了目标定位激活图的生成。(2) visual转换器的注意地图是语义不可知的(不能与对象类区分),并且不能进行语义感知定位,如图2(b)。
在本研究中,我们提出标记语义耦合注意地图(TS-CAM),首次尝试用视觉转换器进行弱监督对象定位。TSCAM引入了一个具有两个网络分支的语义耦合结构,如图2(c),一个使用补丁令牌执行语义重新分配,另一个在类令牌上生成语义不可知的注意图。通过类补丁语义激活,语义重新分配使补丁令牌能够感知对象类别。语义不可知的注意映射旨在利用变压器中级联的自注意模块的优势,捕获补丁标记之间的长距离特征依赖关系。TS-CAM最终将语义感知地图与语义不可知的目标定位注意地图结合起来,如图所示。
这项工作的贡献如下:
(1)我们提出令牌语义耦合注意图(TS-CAM),作为通过利用远程特性依赖来使用可视化转换器的WSOL的第一个可靠基线。
(2)我们提出了语义耦合模块,将语义感知标记与语义不可知的注意地图相结合,为利用视觉转换器提取的语义和定位信息进行对象定位提供了一种可行的方法。
(3)TS-CAM在两个具有挑战性的WSOL基准测试中实现了比先前方法的实质性改进,充分利用了可视化转换器的长期特性依赖性。
弱监督对象定位(WSOL)旨在学习仅给定图像级类别标签的对象定位。一个典型的WSOL研究是CAM[51],它通过使用特定于类的完全连接层聚合深度特征图来生成局部地图。通过去除最后一层全连接层,CAM也可以通过全卷积网络[14]实现。
尽管基于cam的方法简单有效,但它们难以识别物体的小区分部分。为了提高CAMs的激活度,HaS[30]和CutMix[30]对输入图像采用对抗性擦除,驱动以扩展对象部分为重点的定位模型。
ACoL[47]和ADL[7]代替了对应于区分区域的擦除特征映射,并使用对抗训练的分类器对缺失部分进行重新转换。SPG[48]和I2C[49]通过在网络中引入像素级相关性的约束,提高了定位图的质量。
DANet[43]在WSOL中应用了发散激活来学习互补的视觉线索。SEM[50]利用种子区域内的点相似性对定位图进行了改进。GC-Net[19]考虑了WSOL的几何形状,提出了一种多任务损失函数。
上述方法大多通过在CAM中引入复杂的空间正则化技术来扩展激活区域。然而,图像分类和目标定位之间的矛盾一直困扰着他们。根据可视化方法[3,46]的观察,cnn倾向于将对象分解为对应于局部接受域的局部语义元素。激活一些语义元素可以带来良好的分类结果。如何从局部接受域收集全局线索的问题仍然存在。
弱监督检测和分割是与WSOL密切相关的视觉任务。弱监督检测训练网络同时进行图像分类和实例定位[38,36,24]。在给定数千个区域建议的情况下,学习程序在训练检测器的同时从包中选择得分高的实例。同样,弱监督分割训练分类网络来估计伪掩模,伪掩模再用于训练分割网络。为了生成准确的伪掩码,[16,1,13,38]采用区域增长策略。同时,也有研究者研究直接增强特征级激活区域[17,41]。另一些则通过多阶段[15]训练来积累cam,探索边界约束[5],利用等价性进行语义分割[39],挖掘跨图像语义[32]来精炼伪掩模。
与WSOL类似,许多弱监督检测和分割方法都倾向于定位目标的部分,而不是整个目标范围。为了系统地解决局部激活问题,需要探索新的分类模型。
大范围特征依赖。cnn产生了具有不同接收域的局部特征的层次化集合。不幸的是,大多数cnn[28, 11]都擅长提取局部特征,但很难捕捉全局线索。
为了缓解这一限制,一种解决方案是利用像素相似性和全局线索来细化激活图[38,39,49,50]。
Cao等人[4]研究发现,对于查询位置,非局域网络所建模的全局上下文几乎相同,因此提出了NLNet[38]和SENet[12]进行全局上下文建模。MST[31]提出了可学习树过滤器来捕获最小生成树的结构属性,以建模长期依赖关系。另一种解决方法是注意机制[37,23]。非局部操作[37]以自注意的方式引入cnn,使每个位置的响应是所有(全局)位置特征的加权和。SASA[23]验证了self-attention是cnn有效的独立层。关系网络[8]提出通过特征和几何之间的交互,同时处理一组对象,允许建模对象之间的空间关系。最近的研究在transformer模型中引入了一种级联自我注意机制来捕捉远程特征依赖[42,34,44]。
在本节中,我们首先给出视觉转换器的初步介绍。然后介绍TS-CAM方法。最后通过特征可视化和特征依赖量化对TS-CAM进行分析。
对于视觉转换器[9],将W × H分辨率的输入图像分割为w×h 小块,其中w =W/P, h =W/P, P为patch的宽度/高度。将分割后的patch平展并进行线性投影,构造N = w × h patch令牌 {}类令牌 图3。D表示每个令牌嵌入的维度。类令牌可以通过随机初始化学习。每个令牌都添加了一个可学习的位置,以基于元素的方式嵌入。这些令牌被馈送给L级联转换器模块,每个转换器块由一个多头自注意层和一个多层感知器(Multilayer Perceptron, MLP)块组成。
图3。TS-CAM框架,该框架由特征提取可视化转换器、语义重新分配分支和语义耦合模块组成。
注意,没有沿着语义重新分配分支的梯度反向传播。
将和分别表示为第n个补丁令牌和第l个转换器块的类令牌。最后一个嵌入的类令牌被提供给MLP块进行预测分类概率为:, -------(1)
其中, C为类数。表示c类的预测概率。MLP(·)表示MLP块实现的分类函数。
注意图像x的基本真值标签为y∈{1,2,…, C},定义分类损失函数为:用来训练视觉转换器。
我们提出了TS-CAM方法,在经过训练的视觉变压器上生成感知的语义定位地图。3.然而,在可视化转换器中,只有类标记是语义感知的,而patch标记是语义不可知的。为了实现语义感知的定位,我们引入语义重新分配分支,将语义从类令牌转移到patch令牌,并生成语义感知的映射图。这种语义感知的图与语义不可知的注意图相结合,生成语义感知的定位热图。
语义重新分配:视觉转换器使用类标记来预测图像类别(语义),同时使用语义不可知的patch标记来嵌入对象空间位置并反映特征空间依赖性。为了生成语义感知补丁令牌,我们建议将语义从类令牌重新分配给补丁令牌.
如图(3)所示,将第L个可视转换器块的patch token嵌入串接并转置为。然后它们被reshape为tocken特征映射,其中, d∈{1,2,…, D}表示第D个特征图。c类的语义感知映射通过卷积计算为: (3)
其中为卷积核,为由c和d索引的3×3核映射。∗为卷积运算符。为了生成语义感知的映射,将Eq. 2中定义的损失函数更新为(4):
其中是类c的第n个patch令牌的语义。当优化Eq. 1时,将语义分配给类令牌,最小化Eq. 4重新分配语义给patch tokens ,为WSOL生成语义感知映射。
语义未知的注意力地图:为了充分利用视觉转换器的long-range特征依赖,我们提出聚合类标记的注意向量来生成语义不可知的注意地图。表示为变压器块l的输入,其计算方法是将所有令牌的嵌入连接起来。在第(l)个变压器块的自注意操作中,所嵌入的token 计算公式(5)为:
式中和分别为第(l)个转换器块自注意运行线性变换层的参数。T是一个转置算子。为注意矩阵,为类令牌的注意向量。在考虑 K heads的多头注意层中,将Eq. 5中的D更新为,其中 = D/K。然后将更新为来自K个头的注意力向量的平均值。
Eq. 5意味着通过矩阵乘法运算记录类令牌对所有令牌的依赖性。Eq.5表示自注意操作的类标记的嵌入是通过将其注意力向量与第(l)个转换器块中的嵌入相乘计算得出的。因此,能够“看到”所有patch token,其中,表示对每个标记进行了多少关注。当优化Eq. 4时,注意力向量被驱动聚焦于用于图像分类的目标区域(例如,语义的全局特征)。最后的注意向量A∗被定义为公式(6):
它聚集注意力向量(),并从级联的变压器块收集特性依赖,以指示整个对象范围。
Semantic-Attention耦合:由于注意向量A∗是语义不可知的,因此我们使用元素乘法来将其与语义感知映射耦合,以获得每个类c的语义耦合注意图Mc,图3。耦合过程的表达式为公式(7):
其中,⊗表示元素的乘法和加法操作。(·)表示将注意力向量()转换为注意力地图()的reshape函数。将Mc上采样到一个语义感知的定位图中,使用阈值法[48]进行对象边界盒预测。
特征可视化。在图4中,我们可视化了CNN和TS-CAM的特征图。特征图是从不同的块/层中随机选择的。可以看出,CNN的特征图倾向于激活局部的区别区域。TS-CAM的特征图可以激活整个物体范围。
图4。VGG-CAM与TS-CAM的特征图比较。在VGG-CAM特征图中,局部识别区域被激活,而在TS-CAM中,激活的特征表现为长期依赖。
远程功能依赖。在图5右侧,我们使用patch token嵌入(特征)之间的余弦相似度量化特征依赖范围。可以看出,不仅在对角线上,而且在第一行和最后一行/列上,虽然距离较大,但相似值显著,如图5所示。相似度矩阵表明TS-CAM能够捕获远距离特征依赖关系。
图5。左:输入补丁符号之间的距离。每一行/列表示带有所有补丁令牌的补丁到token之间的欧氏距离。暖色/冷色意味着较长的/短的航程。右:补丁标记位置嵌入之间的相似性。每一行/列表示一个令牌的位置嵌入与所有位置嵌入之间的余弦相似度。
4.1 实验设置
数据集。
TS-CAM采用两个常用的基准进行评估,即CUB-200-2011[35]和ILSVRC[26]。CUB-200-2011是一个包含200个不同物种的细粒度鸟类数据集,该数据集分为5 994张图像的训练集和5 794张图像的测试集。在ILSVRC中,大约有120万幅图像,大约有1000个类别用于训练,50000幅图像用于验证。模型在训练集上训练,在验证集上评估,其中边界框注释仅用于评估。
评价指标。Top-1/Top-5分类精度(Top-1/Top-5 Cls)Acc), Top-1/Top-5定位精度
((top-1、top-5 Loc Acc)和地面真实类定位精度(Gt-Known Loc。Acc)作为eval评价指标,遵循基线方法[26,48,51]。对于定位,当预测满足以下条件时为正:预测的分类是正确的;预测的边界框有超过50%的IoU与至少一个ground-truth框。Gt-Known表示它考虑定位而不考虑分类。
实现细节:
TS-CAM是基于Deit骨干[34]实现的,[34]是在ILSVRC[26]上预先训练的。每个输入图像被重新缩放为256×256像素,并随机裁剪为224×224像素。我们通过移动MLP头部,并添加一个卷积层,内核大小为3×3,步幅为1,pad 1具有200个输出单元(ILSVRC为1000个单元)。新添加的层在下面初始化,他的方法是[10]。在训练WSOL模型时,我们使用AdamW [18], =1e-8, β1=0.9, β2=0.99,重量衰减为5e-4。在CUB-200-2011上,training procedure持续60个时代,学习率5e-5,批量大小128。在ILSVRC数据集上,训练进行12个epoch,学习率为5e-4,批大小为256。