关于padding的same和valid以及降采样图像变为原来一半的疑惑

来源:4-4 VGG-ResNet实战(1)

CrazyCat岩

2018-12-03

在本节15分10秒,老师说由于图像大小是32*32,每次除以2可以除尽,因此padding选择same或valid无所谓,不存在数据丢失的问题。
问题1:如果在conv1中发生了降采样,那么padding设为same,作用不应该是使图像的输出大小等于输入大小吗,为什么会变为原来的一半?
问题2:如果padding为valid,图像经过3 * 3,步长为(2,2)的卷积后大小是15 * 15呀,数据还是会丢失。
问题3:在卷积操作中,不考虑卷积核大小,只要步长为2的就一定是降采样吗,即图像就一定是原来的一半吗?
老师,这块反复看了几遍视频,还是对这部分有些疑惑,不明所以,希望老师给出详细的解答,谢谢老师~

写回答

2回答

正十七

2019-01-03

问题1: padding 设为same指的不是让输入和输出一样,而是说不丢失数据。设为valid是指如果有不足的部分,就丢弃掉。 可以参考这个链接:https://stackoverflow.com/questions/37674306/what-is-the-difference-between-same-and-valid-padding-in-tf-nn-max-pool-of-t

问题2:padding是valid,卷积后大小是15*15,但是因为所有数据都参与了运算,所以我们不认为有数据丢失。也就是说,数据丢失与否不是由输出size是否变小来决定的。

问题3:基本上是,由我们卷积输入输出size公式可以看到,padding和卷积核大小只是加减,步长是用来除的,所以步长为2就是变为原来的一半。

2
1
CrazyCat岩
老师,还是问题2,设置成valid后,不足的会抛弃,那32*32按3*3,步长为2的卷积肯定有不够用的,比如第32维像素,没有参与计算被丢弃,这不就是数据丢失了吗
2019-01-03
共1条回复

慕九州9175731

2018-12-06

降采样是在pooling层做的,目的是减少输入维度的同时获取某个区域内更具代表性的特征。padding是在卷积层做的,目的是提取特征,在卷积层不希望数据被丢失,也希望边缘数据能被最大化利用才会被做padding。两个层的任务不一样。个人理解。

2
0

深度学习之神经网络(CNN/RNN/GAN)算法原理+实战

深度学习算法工程师必学,深入理解深度学习核心算法CNN RNN GAN

2617 学习 · 935 问题

查看课程