(请老师回答)关于padding的same和valid以及降采样图像变为原来一半的疑惑
来源:4-4 VGG-ResNet实战(1)
CrazyCat岩
2018-12-06
在本节15分10秒,老师说由于图像大小是32*32,每次除以2可以除尽,因此padding选择same或valid无所谓,不存在数据丢失的问题。
问题1:如果在conv1中发生了降采样,那么padding设为same,作用不应该是使图像的输出大小等于输入大小吗,为什么会变为原来的一半?
问题2:如果padding为valid,图像经过3 * 3,步长为(2,2)的卷积后大小是15 * 15呀,数据还是会丢失。
问题3:在卷积操作中,不考虑卷积核大小,只要步长为2的就一定是降采样吗,即图像就一定是原来的一半吗?
老师,这块反复看了几遍视频,还是对这部分有些疑惑,不明所以,希望老师给出详细的解答,谢谢老师~
2回答
-
幕布斯4180522
2019-04-24
问题1:降采样可以使用重叠的pool池化层或者步长大于1的卷积层。在残差学习F(x)的代码中使用步长为2的卷积层来进行降采样,由于padding=same,意思是数据不会丢失,但每次卷积前进2步,因此输出图像大小为输入图像的一般。注:padding为same时表示进行padding来保证数据不丢失,比如输出为32*32,卷积核为3*3,步长为2,则(32-3+1)/2+1=16,括号中的1就是padding增加的。
问题2:在重叠的pool池化层,代码的pooled_x = tf.layers.average_pooling2d()使用池化核(2,2)、步长为2的平均值池化。它不是卷积操作,是池化操作,因此输入为32*32,经过池化后为(32-2)/2+1=16,无论padding为same或valid,输出都是为原来的一半。注:padding为valid意思是不进行padding,不足的直接丢弃。
问题3:在卷积操作中,无论卷积核大小,只要padding为same,步长为2,则输出图像一定是原图像的一般,但是卷积核越大,参数越多,计算量越大,而且不利于特征的提取。
以上均是个人理解,老师在视频中讲的或许有点难以理解,但是都是正确的,多百度就行了。
30 -
正十七
2019-01-03
参考这个同样问题的回答:https://coding.imooc.com/learn/questiondetail/91363.html
10
相似问题