SegNeXt: Rethinking Convolutional Attention Design for Semantic Segmentation 论文解读
论文解读)
前言
本文提出了卷积注意力以取得和自注意力在语义分割领域相同的效果。实际上就是试图把transfomer的计算过程移植到卷积上,尽可能模仿出transfomer的优秀网络结构。
论文地址:论文PDF地址
代码地址:github代码地址
0.摘要
本文声称证明了卷积注意力比transfomer中的自注意力模块能更加高效,有效的对上下文信息进行编码。本文观察并总结了几种优秀的分割模型所拥有的特征,发现了几种改进分割模型性能改进的关键点。
1.introduction
本文通过观察,发现成功的分割模型往往具有以下几个特征。
1.强大的编码器backbone,transfomer模型比CNN表现更优秀,主要原因是transfomer更strong的网络。
2.多尺度信息交互。语义分割作为密集预测任务,需要优秀的上下文交互。
3.spatial attention。 空间注意力允许模型通过对语义区域内的区域进行优先级排序来执行分割。
4.低计算复杂度。这对高分辨率图像尤为重要。
一些transfomer分割模型使用transfomer编码器,卷积部分做解码器。本文反转了这种结构。编码器部分使用改进的卷积设计来唤起空间注意力,解码器聚合多级特征,使用Hamburger进一步提取全局上下文。
2.related work
。。。
3.method
SegNeXt采用的是编码器和解码器结构。
d代表depthwise conv,7x1代表kernel_size是7x1
3.1encoder
参考上图a,本文将一个transfomer块中的attention和FFN计算做了调整替换以尽可能像的模仿transfomer。self-attention被替换成为MSCA块,即多尺度卷积注意力块,那么原来的attention块就被替换成了MSCA。而包含MSCA,FFN的transfomer块被称为MSCAN.多尺度卷积注意力网络。
我们具体看一下MSCA,看一下卷积注意力是什么操作。在图b可以看到,在一次5x5depth-wise卷积后,兵分4路以达到多尺度的效果,其中一路不变,另外三路独立的进行两次条状卷积,1x7和7x1的两次卷积,因为stride=1,padding=3,且为depthwise深度卷积,所以这个特征图的shape ,包括channel,H,W,B都是不变的。可以从上图看出三路kernelsize分别取7,11,21,没做处理的相当于取1,这4路特征图代表了不同尺度的特征,且shape相同,将它们直接相加等于融合了多尺度特征。