求解三层CNN输出元素的感受野及通用计算公式
CNN感受野计算问题解答
针对你的三层卷积的感受野计算
假设所有卷积层的步长stride=1,padding=0(未指定参数时的默认设置),第三层输出元素的感受野计算过程如下:
从输出层(第三层)往前逐层推导:
- 第三层输出元素自身的感受野为1
- 第三层是4x4卷积核,对应第二层的感受野:
(1 - 1)*1 + 4 = 4 - 第二层是2x2卷积核,对应第一层的感受野:
(4 - 1)*1 + 2 = 5 - 第一层是3x3卷积核,对应原始输入的感受野:
(5 - 1)*1 + 3 = 7
最终第三层输出元素的感受野是7x7。
通用计算公式
感受野可通过从后向前逐层推导的方式计算,通用公式如下:
当前层对应的前一层感受野 = (当前层输出的感受野 - 1) * 当前层步长 + 当前层核大小(或池化窗口大小)
关键注意点:
- 初始值:输出层的感受野为1
- 步长:卷积/池化层的移动步长直接影响感受野的跨度
- 池化层:计算逻辑和卷积层一致,将池化窗口大小视为核大小即可
- Padding:仅用于调整输出尺寸,不会改变原始输入中被覆盖的区域范围,因此不影响感受野计算
内容的提问来源于stack exchange,提问作者crazysonntil
相关产品推荐
相关产品推荐

