感受野

感受野

概念

感受野(Receptive Field)的定义是卷积神经网络每一层输出的特征图(feature map)上的像素点在输入图片上映射的区域大小。即特征图上的一个点跟原图上有关系的点的区域。
感受野被称作是CNN中最重要的概念之一,目标检测流行的算法比如SSD,Faster RCNN等中的 prior box 和 anchor box的设计都是以感受野为依据做的设计。

计算

原始输入图大小为 $7 \times 7$

网络层 kernel deepth strids padding input output feature
conv1 [3,3] 1 1 VALID [7,7,1] [5,5,1] $(7-3+1)/1=5$
conv2 [3,3] 1 1 VALID [7,7,1] [5,5,1] $(5-3+1)/1=3$

可以知道原始输入的感受野是1,conv1层感受野是3,conv2层感受野5。

最终我们可以得出,一个[5,5]卷积核感受野与两个[3,3]卷积核的感受野等效。一个[7,7]卷积核的感受野和3个[3,3]卷积核的感受野等效。

感受野的计算公式为
\begin{equation}
r_n = r_{n-1}+(k_n - 1)\prod_{i=1}^{n-1}s_i
\end{equation}
其中$r_{n-1}$表示上一层感受野大小,$k_n$表示本层卷积核尺寸,而$S_i$表示卷积步幅大小
例如,
conv1:$3 \times 3$ strides = 1 valid
conv2:$3 \times 3$ strides = 1 valid
conv3:$3 \times 3$ strides = 1 valid
conv4:$3 \times 3$ strides = 1 valid
maxp:$2 \times 2$ strides = 2
$(计算感受野时,maxp 看做 conv:2 \times 2, strides = 2)$

感受野:
原图:1
conv1:$1+(3-1)=3$
conv2:$3+(3-1) \times 1 = 5$
conv3:$5+(3-1) \times 1 \times 1 = 7$
conv4:$7+(3-1) \times 1 \times 1 \times 2 = 11$
maxp:$11+(2-1) \times 1 \times 1 \times 2 \times 1 = 13$


   转载规则


《感受野》 kieranych 采用 知识共享署名 4.0 国际许可协议 进行许可。
  目录