20 卷积层里的填充和步幅【动手学深度学习v2】(笔记)

目录

一、填充

二、代码实现

三、问题总结

一、填充

1、不太理解,为啥是更大的卷积核,可以更快减小?哦,理解了,减去的是K,K大,减得多

当我想用大的卷积核,但是我的图片小,怎么办,我想用几百个卷积层怎么办

一个办法,就是填充

2、我填充之后,我的输出是4*4,比我的输入3*3还要大呢

3、填充的取值如下,这样做,代入可以看到可以抵消,可以让我们的输入输出和原来保持一致

4、出现这种问题,层数太多太多,咋办?步幅

5、啥意思?就是说 每次多跳一点,跳两列,跳两行

6、那该怎么算最后的输出大小?有点麻烦,快看不懂了

7、www最后有点点不懂,+步幅 / 步幅 ,算是成倍减少输出形状,我先去写代码吧

二、代码实现

0、comp_conv2d 函数是补充通道数和批量大小数,再调用conv2d

1、X=X.reshape((1,1)+X.shape) 加上一个通道数和批量大小数,是为了接下来调用conv2d函数

2、Y.reshape(Y.shape[2:]) 这个得到的是一个四维的,把前面两维拿掉

3、padding = 1 ,意思是左右各填充一行

4、8+2-3+1 = 8输出还是8*8

5、stride = 2 步幅,输出减半 (8+2-3+2)/ 2= 4.5 =4, 这里是+2(加的是步幅),再向下取整

6、(8+0-3+3)/3=2 (8+2-5+4)/4=2

7、总结一下公式 (输入维度+填充(1是左右两列)-核数+步幅)/步幅

三、问题总结

  • 超参数的重要程度
      • 核大小:通常来说最重要
      • 填充: 通常设置成 (核数-1)
      • 步幅:大部分时候=1更好,这样可以看得更多;使用的时候是因为数据量大
  • 卷积核的边长一般取奇数,比较好对称
  • 卷积处理之后的输出维度并不是都要减半,要做很深的网络哇
  • 问题16:老师,那多层的3*3卷积是不是和用不同大小的卷积核分别对原始图像做处理以后,再联合这些算出来的特征进行分类这种情况等价?

是有这个情况的,但是3*3的算的快,这和计算复杂度有关了

  • 最后老师谈到钱的问题,突然觉得,有点幸运,能够学习到这种前沿的知识,这本身就是很贵很贵的,享受其中吧

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值