Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020

Squeeze-and-Attention Networks for Semantic Segmentation
语义分割的压缩注意力网络。对SE改进使适用于语义分割

Abstrct:
当前语义分割方向注意力机制的聚合,由于更多的信息特征增强了性能。然而,注意力机制忽视了语义分割的隐藏任务(pixel grouping),并受限于卷积核的网络形状。本文我们提出了一个新的squeeze-and-attention network(SANet),利用了SA module 去解释分割的两个相显著的特点:i)pixel-group attention and ii)pixel-wise prediction。SA module 通过在传统卷积上引入注意力卷积通道利用pixel-group attention,来用一种有效的方式解释spatial-channel 交互。最终的结果通过合并SANet四阶段的输出来聚合多尺度的上下文信息来增强pixel-wise prediction。在两个具有挑战性的公共数据集上的经验实验验证了所提出的SANets的有效性,在PASCAL VOC上实现了83.2%的miou(未经过COCO预处理),在PASCAL上下文上实现了最先进的54.4%的mIoU。

Introduction
语义分割不完全等同于pixel-wise prediction。本文将语义分割分为两个独立的部分:pixel-wise prediction and pixel grouping。pixel-wise prediction 处理每个像素的预测,而pixel-grouping增强像素之间的联系。先前的分割任务主要关注于从pixel-level来提升分割性能,但忽略了pixel-group的隐藏任务。
通过将语义分割分为2个子任务可以解决被忽略的pixel-grouping。
Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020
如图1所示,第一个子任务需要精准的pixel-wise的标注和引入了图像分类的空间限制。当前通过分割模型通过池化金字塔和空洞卷积聚合上下文特征在pixel-wise得到了很好地效果。然而,卷积核的网格结构限制了分割网络中学到的特征shape。特征几何策略增强了pixel-wise prediction结果,但理解图像的global perspective为得到利用
接下来,我们引入了第二个子任务pixel grouping,鼓励同一类的pixel聚合在一起without spatial limitation。我们设计了SA module来缓解卷积核的局部限制理解:前文提到传统卷积核受到网格结构的限制,SA module并不是打破网格结构的限制而是添加注意力得到非局部的特征)。SA模块包含能够下采样但不完全压缩的注意力通道,以有效地产生非局部空间注意力,避免在output中使用繁重的空洞卷积。具体讲,注意力卷积来生成attention masks,因为每个卷积核都会在输入特征图进行扫描。不同于SE模型增强主干网络,SA模型整合了空间注意力和head单元,其输出通常被整合在一起以提高分割性能。SA module引入空间注意力机制增强了pixel groups的注意力强调不同空间尺度下属于同一类的注意力。另外,squeezed channel也作为global attention masks
我们设计SANet采用4个SA模型来处理分类的两个任务。SA modules学习多尺度特征和非局部特征来克服卷积层的限制。我们使用带空洞的resnet和Efficient Nets作为主干网络利用他们强大的特征提取能力。为聚合多阶段非局部特征,我们在主干网络的多级输出上采用SA模块,来获得更好的目标对象边界和场景解析结果。SANets可以简单地推广到其他相关的视觉识别任务。

Famework
Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020
图2:SA与SE相似,都有一条额外的路径来学习权重来重新校准输出特征Xout的通道。不同的是SA采用average pooling来缩小特征图,没有想SE那样全部挤压1x1xc。将此通道称为注意力卷积(ACONV)通道。
(a)残差块:F代表残差,两个字母代表2个卷积层
Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020
(b)SE模块:
Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020
Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020
(c)SA模块:
对语义分割有用的特征形式是global and local levels。在pixel level,卷积层生成关于local information的特征图,卷积是对每个像素进行计算。pixel level的卷积层作为所有语义分割模型的基础,以各种方式增加感受野从而提升分割性能,表明larger context对由于分割有帮助。
在global image level,context被利用去决定那部分特征图被**,因为contextual features表明哪些类别可能会一起出现。Global contest features 对区域整体编码,而不是对图像的每个部分在学习赋予权重。
本文设计了SA模块通过重新赋予global and local 权值来学习更多的语义分割代表特征。SA在SE进行改进,没有将空间信息完全压缩
Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020
公式(5)ˆXattn 上采样来匹配主通道 Xres的输出。
SA模块使用所保留的空间信息来扩展SE模块,并且注意通道Xatten进行上采样后输出在主要通道上,来聚集非局部的特征。
Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020最终的loss分为3部分:dense loss(CE loss), mask loss(CE loss), and categoricalloss(binary CE loss).ynj 是Yden平均池化的结果。
Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020
a=0.2,β=0.8
Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020
Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020
带空洞卷积的FCNs作为主干网络,input 3x512x512 ,SA模块的主通道与它们的注意力对应的通道数相同,与输入特征的空间大小相同。在主通道和注意力通道中,我们将输入的通道减小到四分之一,将注意通道的下采样(最大pooling)和上采样率设置为8,并将SE模块的中间全连接层的通道数设置为4,采用两个分组卷积在主通道和注意力通道上进行第一次卷积操作。同样,将SA head的输出调整为分割数据集的类别数。
Squeeze-and-Attention Networks for Semantic Segmentation | CVPR2020
有趣的是,如图6所示,低层(SA head1)和高层(SA head4)中的注意力占据了不同的角色。在低阶阶段,注意通道的注意图具有广阔的视场,主通道的特征图侧重于局部特征的提取,同时保持了物体边界。而在高级阶段,注意通道的注意图主要集中在所选点周围的区域,主通道的特征图比head1的特征图表现语义更加清晰。