交互分割实战知识笔记(1):感受野计算

交互分割实战知识笔记1

对于分割网络而言,CNN是十分核心的部分。
由于以前都是比较零散地去了解一些CNN相关的东西以使用CNN网络,
对于CNN一些基础概念的理解非常浅薄。
最近终于还是下了决心仔细地补一下基础,本文将首先针对CNN,
进行一个知识点的记录。

重要术语

特征图(feature map)

标准卷积过程

一个标准的卷积过程如上,的输入
和一个的卷积核进行卷积运算,
最后得到的是的输出。

将上一级输入进过一个卷积层处理完之后得到的输出,
可以看做是上一级输入内容在空间维度上的某一级别的特征表示,所以被称为特征图

特征图大小的计算公式可简单总结为:

,分别为输出的特征图大小和上一层的特征图/输入数据大小。

感受野(receptive field)

感受野是指特征图上的一个点在输入空间上所受影响的区域,
用人话说也就是特征图上的点对应的原始数据上的空间大小

以上图的标准卷积过程为例,
输出的是有输入的一个的区域计算而来的,
也就是它能够感受到这个区域的信息

感受野大小的计算公式可简单总结为:

,分别为输入输出特征图的感受野,原始图像感受野为。

填充(padding)

显而易见,卷积操作让图像缩水了一圈,影响了图像的分辨率。

为了平衡这种影响,直接在图像周围填充一圈,就可以让图像的feature map尺寸维持不变。

padding示意图

如图所示,padding操作影响了输出的大小,加入padding后的feature map size和 receptive field size计算公式如下:

为两侧padding之和。

步幅(stride)

stride示意图

当输入图像过大的时候,卷积操作是很费时的,
那么是否可以跳着卷积,就像数据抽稀一样呢?

答案显然是肯定的,这同样也是卷积的基础操作之一,按照一定步幅(stride)进行跳步(stride)。

如上图所示,对的图像进行的padding,得到的输入;
如果按照传统卷积方式,的卷积核显而易见会输出的输出。

此处执行跳步卷积,在的横向下一个位置为,竖向下一个位置为
步幅为,当跳步后的位置不足以进行卷积运算时则跳转到下一行。

考虑到stride后,公式更新为:

空洞卷积(dilation convolution)

空洞卷积/带洞卷积/膨胀卷积,dilation convolution有很多翻译。这种形式的卷积核比传统的卷积核多了一些空洞,因而尺寸就膨胀了。

空洞卷积

相当于一种折中的增大卷积核的方法,卷积核变大了,但是中间很多地方是洞,所以计算量不怎么变。

考虑到dilation后,
使用
替换原公式中的,
公式更新为:

卷积的不同参数的效果

kernal size

比较常见的卷积核大小为、,
理论上越大的卷积核提取的信息就越全局,学术点说就是感受野随卷积核大小增大

但是理论上两个卷积核的嵌套就可以替代一个的卷积核,
但是计算量上,两个的卷积核为级别,
而一个的卷积核为级别。

显而易见,计算量随卷积核的大小指数级增长,所以明显使用多个小卷积核的卷积层是更经济的

所以在一般问题中,我们都选用的卷积核。

stride

从原理上说,stride代表对图像特征提取的精度,stride越大则精度越低

作用类似于pooling,可以模糊一些特征,从而降低过拟合。

dilation

dilation来自于[1],由于之前的CNN通常使用conv + pooling的方式先提取并浓缩特征,
然后再将特征upsampling回原始分辨率。

pooling虽然增大了感受野,却丢失了信息;dilation方式可以扩大感受野,减少信息损失
却又不增加计算量。

不过显然,dilation也存在以下问题:

  • 损失了信息的连续性,会引起Gridding Effect
  • 长距离信息相关性不足

据说这两篇文章[2][3]中着重提了这些问题。


  1. F. Yu and V. Koltun, “Multi-Scale Context Aggregation by Dilated Convolutions,” arXiv:1511.07122 [cs], Apr. 2016, Accessed: Oct. 22, 2020. [Online]. Available: http://arxiv.org/abs/1511.07122. ↩

  2. P. Wang et al., “Understanding Convolution for Semantic Segmentation,” arXiv:1702.08502 [cs], May 2018, Accessed: Oct. 22, 2020. [Online]. Available: http://arxiv.org/abs/1702.08502. ↩

  3. L.-C. Chen, G. Papandreou, F. Schroff, and H. Adam, “Rethinking Atrous Convolution for Semantic Image Segmentation,” arXiv:1706.05587 [cs], Dec. 2017, Accessed: Oct. 22, 2020. [Online]. Available: http://arxiv.org/abs/1706.05587. ↩

你可能感兴趣的:(交互分割实战知识笔记(1):感受野计算)