Dual Attention Network for Scene Segmentation 学习笔记
方法:
基于自注意力机制捕获丰富的上下文依赖关系,提出了一种双注意力网络DANet,以自适应地将局部特征与其全局依赖关系集成。分别对空间和通道维度的语义相互依赖性进行了建模。位置注意力模块有选择得聚合通过所有位置要素加权总和计算每个位置的要素。相似的特征无论距离如何都会相互关联;通道注意力通过整合所有通道中的关联特征,选择性的强调相互依赖的通道图,通过将两个注意力模块输出相加,进一步改进特征表示,从而获得更精确的结果
贡献
在三个场景分割书记上实现了新的最先进的分割性能
引言
背景
场景分割是基本而有挑战性的问题,目标是将场景图像分割并解析为与语义类别相关的不同图像区域包括事物和离散物体。
挑战
对这项任务的研究可以应用于潜在的应用,为了有效完成场景分割的任务,需要区分一些令人疑惑的类别,因此需要增强特征表示的判别能力,以进行像素级识别。
研究现状
人们提出了全卷积网络FCN来解决上述问题,通过多尺度上下文融合来聚合多尺度上下文特征,还有一些工作通过使用不同的卷积和池化操作生成的特征图聚合不同尺度的上下文,一些工作通过分解结构以扩大核大小或引入有效的编码层来捕捉更丰富的全局上下文信息。此外还提出编码器-解码器结构来融合中级高级语义特征。
另一种方法通过循环神经网络来提高场景分割的准确性,然而其有效性很大程度上依赖于长期记忆的学习结果
提出新方法
提出了新的框架名为双注意力网络,引入自注意力机制,分别捕获空间维度和通道维度上的特征依赖关系,具体地说在FCN上附加了两个并行的注意力模块一个是位置注意力,一个是空间注意力模块,在位置注意力模块中引入自注意力机制捕获特征图的任意两个位置之间的空间依赖关系,对于某个位置的特征,通过加权求和聚合所有位置的特征更新,其权重由两个位置之间的特征相似性决定,也就是说,任何两个具有相似特征位置都可以相互改进,无论他们在空间维度上距离有多远,对于通道注意力模块,使用类似的自注意力机制来捕获两个通道映射之间的通道依赖关系,并使用通道映射的加权和更新每个通道映射最后将两个注意力模块的输出融合在一起以加强特征表示。
贡献
提出了一种具有自注意力机制的新型双注意力网络以增强特征表示对场景分割的判别能力
提出了一种基于位置注意力模块来学习特征的空间相互依赖性,并设计了一种通道注意力模块来模拟通道的相互依赖性,通过对局部特征丰富上下文依赖关系,显著改善了分割效果
在三个流行的基准测试中取得了新的最先进的效果
相关工作
语义分割
基于全卷积网络的方法在语义分割领域取得了长足的进步,有通过空间金字塔嵌入上下文信息的PSPNet设计金字塔池化模块收集有效的上下文先验。编码器-解码器结构融合了中级和高级语义特征,以获得不同尺度上下文,学习局部特征的上下文依赖关系也有利于特征表示。DAG- RNN模型具有递归神经网络的定向无环图以捕获丰富的上下文依赖关系。PSANet通过卷积层捕获像素级关系和空间维度上的相对位置信息。
自注意力模块
注意力模块可以对远程依赖关系进行建模,并已广泛应用于许多任务。
本研究精心设计了两种类型的注意力模块以捕获丰富的上下文关系,以更好的表示特征
预先准备
给定一个局部特征表示A∈RC×H×W\mathbf{A} \in \mathbb{R}^{C \times H \times W}A∈RC×H×W
输出特征E∈RC×H×W\mathbf{E} \in \mathbb{R}^{C \times H \times W}E∈RC×H×W
方法部分
动机
给定场景分割的图片,事物在比例、照片和视图上是不同的;由于卷积操作会导致局部感受野,因此相同标签的像素对应的特征可能存在一些差异,这些差异影响了识别精度
方法
通过建立特征与注意力机制之间的关联来探索全局上下文信息。该方法可以自适应地聚合远距离上下文信息,从而改善场景分割的特征表示
输入图像先通过ResNet提取特征,然后通过位置注意力模块和通道注意力模块想加的到输出特征
位置注意力模块
给定局部特征表示A∈RC×H×W\mathbf{A} \in \mathbb{R}^{C \times H \times W}A∈RC×H×W
通过卷积层得到B、C、D∈RC×H×WB、C、D\in \mathbb{R}^{C \times H \times W}B、C、D∈RC×H×W
其中将B、C、D重塑为RC×N(N=H×W)\mathbb{R}^{C \times N} (N=H \times W)RC×N(N=H×W)
然后在B和C的转置之间进行矩阵乘法,通过softmax计算权重
S=Softmax(B⋅CT)\mathbf{S}=Softmax(B \cdot C^T)S=Softmax(B⋅CT)
其中SjiS_{ji}Sji表示第i个位置与第j个位置的相似度
在D和S之间进行矩阵乘法,得
K∈RC×H×W=reshape(D⋅S)\mathbf{K} \in \mathbb{R}^{C \times H \times W}=reshape(D \cdot S)K∈RC×H×W=reshape(D⋅S)
再乘上超参数α\alphaα,α\alphaα表示领域位置特征所占比例
E=αK+AE=\alpha \mathbf{K}+\mathbf{A}E=αK+A
E是所有位置特征和原始特征的加权和,具有全局上下文视野,可通过空间注意力图选择性聚合上下文信息。
通道注意力模块
通道注意力模块与位置注意力模块相似,但原始特征A并没有通过卷积来嵌入特征,以保持不同通道之间的映射关系
对于给定输入A∈RC×H×W\mathbf{A} \in \mathbb{R}^{C \times H \times W}A∈RC×H×W
先通过reshape操作的到A∈RC×N(N=H×W)A \in \mathbb{R}^{C \times N} (N=H \times W)A∈RC×N(N=H×W)
在A与ATA与A^TA与AT之间进行矩阵乘法,并通过softmax获得通道注意力图X∈RC×C\mathbf{X} \in \mathbb{R}^{C \times C}X∈RC×C
X=Softmax(A⋅AT)X=Softmax(A \cdot A^T)X=Softmax(A⋅AT)
在X与A之间进行矩阵乘法得到Y∈RC×N\mathbf{Y} \in \mathbb{R}^{C \times N}Y∈RC×N
reshape操作恢复至Y∈RC×H×W=reshape(X⋅A)\mathbf{Y} \in \mathbb{R}^{C \times H \times W}=reshape(\mathbf{X} \cdot \mathbf{A})Y∈RC×H×W=reshape(X⋅A)
通过超参数β\betaβ调节邻域通道特征比例,E是所有通道特征和原始特征的加权和
E∈RC×H×W=βY+AE \in \mathbb{R}^{C \times H \times W}=\beta \mathbf{Y}+\mathbf{A}E∈RC×H×W=βY+A
最后将这两个特征E相加得到最终输出
实验部分
数据集
Cityscapes数据集包含从 50 个不同城市捕获的 5,000 张图像。每个图像都有 2048×1024 像素,这些像素具有 19 个语义类的高质量像素级标签。训练集中有 2,979 张图像,验证集中有 500 张图像,测试集中有 1,525 张图像。在实验中不使用粗略数据。
PASCAL VOC 2012 数据集有 10,582 张用于训练的图像、1,449 张用于验证的图像和 1,456 张用于测试的图像,其中涉及 20 个前景对象类和 1 个背景类。
ASCAL 上下文数据集提供了整个场景的详细语义标签,其中包含 4,998 张用于训练的图像和 5,105 张用于测试的图像。对最常见的 59 个类别以及一个背景类别(总共 60 个类别)评估了该方法。
COCO Stuff 数据集包含 9,000 张用于训练的图像和 1,000 张用于测试的图像。报告了 171 个类别的结果,包括 80 个对象和 91 个对每个像素进行注释的东西。
实现细节
基于Pytorch实现方法,采用了“多元”学习率政策,其中初始学习率(1−itertotal_iter)0.9\left(1-\frac{iter}{total\_iter}\right)^{0.9}(1−total_iteriter)0.9
在每次迭代后乘以。Cityscapes 数据集的基本学习率设置为 0.01。动量和权重衰减系数分别设置为 0.9 和 0.0001。用同步 BN 训练我们的模型 。 对于城市景观,批量大小设置为 8,对于其他数据集,批量大小设置为 16。在采用多尺度增强时,将 COCO Stuff 的训练时间设置为 180 个 epoch,其他数据集的训练时间设置为 240 个 epoch。按照,当同时使用两个注意力模块时,在网络末端采用多损耗。对于数据增强,在 Cityscapes 数据集的消融研究中在训练期间应用随机裁剪(裁剪大小 768)和随机左右翻转。
Cityscape 数据集结果
消融实验
如表所示,注意力模块显著提高了性能与基线模型FCN相比提高了5.71%使用更深层的ResNet-101时也带来了5.03%的分割性能,表明注意力模块为场景分割带来了巨大的好处
改善策略的消融实验
通过DA(随机缩放的数据增强),多网格和MS(推理过程中的多尺度输入)进行消融实验
在通过随机缩放的数据增强下性能提高了近1.26%,这表明网络受益于丰富训练数据的尺度多样性,使用多网格获得了更好的预训练网络特征表示,进一步实现了1.11%的提升,最后多尺度输入再次提高了2.20%
与PASCAL上下文数据集结果
通过ResNet-101,模型结果达到了52.6%的平均IoU,大大优于以前的方法,与之前的方法不同,引入了注意力模块来显式捕获全局依赖关系,所提出的方法可以达到更好的性能。
COCO Stuff 数据集
对COCO Stuff数据集进行了实验验证了网络的泛化性,与之前最先进的方法比较,模型在平均 IoU 中达到了 39.7%,大大优于这些方法。
结论
方法
提出了一宗基于场景分割的双注意力网络,利用自注意力机制自适应地整合了局部语义特征,通过引入位置注意力模块和通道注意力模块,分别捕获空间维度和通道维度的全局依赖关系
效果
消融实验表明双注意力模块可以有效捕获远距离上下文信息,并给出更精确的分割结果
展望未来
降低计算复杂度和增强模型鲁棒性