在卷积神经网络中,感受野(Receptive Field)的定义是卷积神经网络每一层输出的特征图(feature map)上的像素点在输入图片上映射的区域大小。再通俗点的解释是,特征图上的一个点对应输入图上的区域。
感受野有什么用呢?
-
一般task要求感受野越大越好,如图像分类中最后卷积层的感受野要大于输入图像,网络深度越深感受野越大性能越好
-
密集预测task要求输出像素的感受野足够的大,确保做出决策时没有忽略重要信息,一般也是越深越好
-
目标检测task中设置anchor要严格对应感受野,anchor太大或偏离感受野都会严重影响检测性能
2.感受野的计算
计算方法有2种,分别为 从后向前计算方法和从前往后计算方法。
从后向前计算方法,极其简单适合人脑计算,看看网络结构就知道感受野了。
计算方法可以参考这篇文章:卷积神经网络中感受野的详细介绍(https://blog.csdn.net/program_developer/article/details/80958716)
从前往后计算方法,比较规律适合电脑计算,简单编程就可以计算出感受野大小和位置。
其中
表示特征感受野大小,
表示层数,
,
表示输入层,
,
。
比如下图(该图为了方便,将二维简化为一维),这个三层的神经卷积神经网络,每一层卷积核的
,
,那么最上层特征所对应的感受野就为如图所示的7x7。
第一层特征,感受野为3
第二层特征,感受野为5
第三层特征,感受野为7