卷积中的特征图大小计算方式有两种,分别是‘VALID’和‘SAME’,卷积和池化都适用,卷积除不尽的结果都向下取整,池化除不尽的结果都向上取整。
1.如果计算方式采用'VALID',则:
其中为输出特征图的大小,为输入特征图的大小,F为卷积核大小,stride为卷积步长。
2.如果计算方式采用'SAME',输出特征图的大小与输入特征图的大小保持不变,
其中padding为特征图填充的圈数。
若采用'SAME'方式,kernel_size=1时,padding=0;kernel_size=3时,padding=1;kernel_size=5时,padding=3,以此类推。
例题:
输入图片大小为200×200,依次经过一层卷积(kernel size 5×5,padding 1,stride 2),pooling(kernel size 3×3,padding 0,stride 1),又一层卷积(kernel size 3×3,padding 1,stride 1)之后,输出特征图大小为:97
解析:
一层卷积 :
注意:这里卷积是向下取整的
池化:
二层卷积:
计算尺寸不被整除只在GoogLeNet中遇到过。卷积向下取整,池化向上取整。
例如:本题 (200-5+2*1)/2+1 为99.5,取99
(99-3)/1+1 为97
(97-3+2*1)/1+1 为97
研究过网络的话看到stride为1的时候,当kernel为 3 padding为1或者kernel为5 padding为2 一看就是卷积前后尺寸不变。
计算GoogLeNet全过程的尺寸也一样。