CNN中的感受野和有效感受野会对模型产生怎样的影响?
点击上方“小白学视觉”,选择加"星标"或“置顶”
重磅干货,第一时间送达
在卷积神经网络中,感受野是一个非常重要的概念,今天,我们具体来看一下感受野的相关概念以及如何计算感受野。
让我们快速回顾一下如何计算感受野的大小。
为了更好地理解感受野,我们可能希望以不同的方式可视化卷积步骤。
在右边,我们查看输出神经元,也就是新的feature map,而不改变当前feature map的分辨率。我们也可以用下面的方法计算每一层新的感受野。
在现实生活中,我们打算用一个程序来实现这一点。
注:据我所知,双线性上采样和大多数其他上采样方法不会增加感受野。但是,如果我的逻辑是对的,转置卷积应该会增加感受野。很容易想象,放置在一个转置卷积之后的平均神经元通过多个途径接收输入。
在这篇论文中:Understanding the Effective Receptive Field in Deep Convolutional Neural Networks,作者尝试从输出映射的中心像素向网络反向传播一个梯度,并将所有其他梯度设置为零。然后,我们检查应用于输入层的梯度。
实验表明,梯度的性质是高斯的,中心像素受影响较大,离中心越远梯度信号越弱。梯度信号的衰减是指数级的,这意味着应用于感受野的大多数像素的梯度将是可忽略的(如果有的话)。因此,这使得作者创造了“有效感受野”这个术语,因为实际的感受野只占理论感受野的一小部分。这是有意义的,因为更多的中央神经元将有更多的路径来传播信息,从而将从最后一层的中心像素的梯度传播回所有可能的路径,导致了梯度有更大的幅度。
那么,还有什么影响有效感受野呢?
Relu—添加任何激活都会改变ERF的分布,因为梯度的大小现在也依赖于输入。实际上,只有Relu似乎创建了一个较少的高斯分布,因为Relu将导致我们的梯度的很大一部分为零。
添加层—正如所期望的那样,添加层使ERF成倍增长。然而,相对于我们的理论感受野,我们的ERF正在缩小。我们的有效感受野在理论感受野中所占的比例越来越小。注意,随着层数的增加,ERF / RF比值的收缩速度也会变小。此外,作者指出,stride卷积和dilated卷积都显示出可以扩展ERF,虽然他们没有提到相对于理论RF的影响。
训练—在训练过程中,ERF扩展到RF的更大部分,这是有意义的,因为网络学会适应把越来越大的权重放在我们感受野的更多外部像素上。在CamVid中,ERF从100增加到150直径,而理论RF为505 x 505。
最后,让我们看一下fast-rcnn的RPN。
我们最大的anchor应该是64*8 = 512,使用一个程序我们可以很容易地找到我们的RF是1335,这是一半以上。从之前的实验中我可以推测出ERF大约是RF的1/3。好,在RPN中负责计算512×512锚点作为对象或前景的概率的单元格只有大约445×445个输入数据的窗口,小于锚框。对于负责调整我们的建议边界框的回归部分也可以进行类似的计算。在这一点上,令人惊讶的是,我们的RPN竟然这么好!
下载1:OpenCV-Contrib扩展模块中文版教程 在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。 下载2:Python视觉实战项目52讲 在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。 下载3:OpenCV实战项目20讲 在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。 交流群
欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~