卷积层与池化层输出的尺寸的计算公式详解

 用文字简单表述如下

卷积后尺寸计算公式:
(图像尺寸-卷积核尺寸 + 2*填充值)/步长+1
池化后尺寸计算公式:
(图像尺寸-池化窗尺寸 + 2*填充值)/步长+1

一、卷积中的相关函数的参数定义如下:
in_channels(int) – 输入信号的通道
out_channels(int) – 卷积产生的通道
kerner_size(int or tuple) - 卷积核的尺寸
stride(int or tuple, optional) - 卷积步长
padding (int or tuple, optional)- 输入的每一条边补充0的层数
dilation(int or tuple, optional) – 卷积核元素之间的间距
groups(int, optional) – 从输入通道到输出通道的阻塞连接数
bias(bool, optional) - 如果bias=True,添加偏置

二、卷积层和池化层后输出size公式如下:
①卷积层参数:
W:宽
H:高
D:深度
K:卷积核的个数
F:卷积核的大小
S:步长
P:用0填充


公式:W/H=[(输入大小-卷积核大小+2*P)/步长] +1

上图中的output =[(7-3)+2*1]/1 +1 =7


关于padding:

自动补全的话,考虑步长为1,每一卷积从第一个维度开始一步一步移动,直到最后一个维度,那么输出肯定是和原来的维度一样,如果步长不是1比如为2 就要向上取整。比如77的图像采用33大小的卷积核进行卷积操作,padding = “SAME”的情况下就是[7/2] = 4,其中[]表示向上取整,最后输出为4*4大小的feature map
① padding = “VALID”, stride = 4, (227 - 11 + 2x0)/ 4 + 1 = 55
② padding = “VALID”, stride = 2, (55 - 3 + 2x0)/ 2 + 1 = 27
③ padding = “SAME”, stride = 1, 27 / 1 = 27
④ padding = “VALID”,stride = 2, (27 - 3 + 2x0) / 2 + 1 = 13

总结:
padding = “VALID”,N = [(W-F+2P)/S]+1,这里表示的是向下取整再加1
padding = “SAME”,N = [W/S],这里表示向上取整

②池化层参数:
池化层的计算与卷积层一样

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

2ephyr

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值