python field怎么理解_如何理解CNN中的感受野(receptive-field)?

1. Receptive field (RF) 是什么?The receptive field is defined as the region in the input space that a particular CNN’s feature is looking at (i.e. be affected by). —— Dang Ha The Hien

在卷积神经网络中,感受野的定义是 卷积神经网络每一层输出的特征图(feature map)上的像素点在原始图像上映射的区域大小。 ——博客园

在机器视觉领域的深度神经网络中有一个概念叫做感受野,用来表示网络内部的不同位置的神经元对原图像的感受范围的大小。 ——蓝荣祎

大家知道现在CNN深度学习越来越深

为了压缩计算量越到后面的层数往往feature size越来越小

但参与“决策”往往是最后几层网络(当然有FPN等神迹)

因此

如何保证小的网络仍然具有全局性是构建CNN网络的一个重要依据

RF便是一个考量feature map中每个神经元具有多少全局性的指标

2. Receptive field 可视化

下图显示了一个常见的CNN的三层(左下角,由下往上数)

第一层feature size 5x5

第二层feature size 3x3

第三层feature size 2x2计算每一层Feature size的公式

Feature size越来越小

但是Feature size减小

每个feature上神经元可以“感知”到的原图的size--即感受野却没有减小

第一层(输入层)RF size 1x1

第二层 RF size 3x3

第三层 RF size 7x7

没错。。比原图size还大。。

因此计算得出的只是理论RF

大于实际RF~

3. Receptive field size计算公式

注:以下公式不光计算了size,还计算了神经元中心坐标

它们都是以原图(input feature作为基准的)

4. 计算Receptive field size的小程序

1) Tensorlow自带求RF的函数

不光有程序,还写了UI

良心推荐!

3) [1]中作者自制,附Python源代码

输入任何feature map的名字和在map中的索引,返回对应感受野的size及location

参考文章:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值