论文地址 :Large Kernel Matters——Improve Semantic Segmentation by Global Convolutional Network
1. 问题提出
当前网络的设置倾向于使用小尺寸滤波器,在相同的计算代价下效果与大核的效果相同,但是后者在同时处理分类和定位任务时非常关键。
分类和定位任务“天生”矛盾,对于分类任务来说,其要求网络具有不变性,即在各种变化和旋转之后,类别仍然一致;对于定位任务则相反,要求其对变换敏感。
2. 解决方案
为了克服上面提到的问题,提出了遵循下面两个准则的Global Convolutional Network(GCN):
- 对于分类任务:使用较大尺寸的核函数使得特征图和逐像素点分类器之间能够建立密集连接
- 对于定位任务:使用全卷积,剔除全连接和全局池化
具体地: - 为了使全局卷积便于执行,文中采用对称可分离的大滤波器来减少参数并降低计算代价;
- 设计了边界精细模块集成到网络中,精细化物体边界,并能够端到端的训练;
基于此,论文的主要贡献在于: - 提出全局卷积网络。减缓定位任务和分类任务的矛盾
- 提出边界精细模块使得物体边界处的定位更加精细
3. 网络架构
3.1 GCN:Global Convolutional Network
对于分类任务,模型需要抽取图像深层的特征(小尺寸的特征图),空间维度上比较粗糙,但能够使分类器和特征图通过全连接层建立密集连接;而对于定位任务,模型需要尽可能大的特征图来编码空间信息。当前的语义分割模型都着重于后者,使得分类器可能难以捕获某些关键的特征从而影响分类,出现下面的问题:图像尺寸变大后感受区域不能覆盖整个物体:
下面介绍GCN模块,如下图所示:
根据定位任务的要求采取全卷积的方式,根据分类任务密集连接的启发设计大尺寸的核函数,如果内核尺寸扩大到和特征图一致,则模型拥有了分类任务中密集连接的优点。
具体地,GCN并不直接使用更大的核函数或者是全局卷积,GCN将核大小为
的卷积结合来建立特征图中一个较大的
的区域和分类器的密集连接,与普通的
卷积相比计算代价仅为
。
3.2 模型整体框架
模型是哟个ResNet作为主干网络在不同阶段进行多尺度的特征提取,之后上采样至相同大小并add up,交由预测模块输出最终结果,整个流程如下图:
3.3 Boundary RefineMent Block
该模块设计为残差模块,具体如下图所示:
4. 实验
4.1 烧蚀实验
烧蚀实验是为了确定每一个部分对实验结果的影响情况而设计的实验。
4.1.1 k的尺寸的影响
使用不同的k来训练模型,得到效果最好的一个,如下图所示:
根据这个实验有以下几个问题:
- 更多的参数是否能有助于效果改善?
过多的参数会使模型过拟合,在实际训练中,普通的大尺寸核函数会使得收敛困难。
- GCN和串行的小的卷积快
- GCN如何提升分割的效果
GCN利用大尺寸滤波器,与“纯”的分类近似般,使得分类器和特征图建立了密集连接提升了分割的效果,文章还预测对于较大的且多数像素集中在物体重心的物体分割效果会很好。
4.1.2 在GCN中使用不同的预训练模型
将GCN的思想用在ResNet上得到ResNet-GCN,如下图:
4.2 PASCAL VOC 2012
4.2.1 三个阶段
- stage-1:混合COCO,SBD和VOC12的数据(输入图像尺寸 )
- stage-2:混合SBD和VOC12(输入图像尺寸 )
- stage-3:仅使用VOC12(输入图像尺寸
)