问题源头:
老师在上课中对LeNet-5的过程进行了解析,我在看回放的时候,发现在第一层卷积的时候,padding的值没搞清楚多少,故对于输出计算不太理解。(听老师口述padding=1,却不知道在不需要填充的时候,就不用padding值,在结尾已给出叙述和资料解释)
LeNet流程如下:
**输出:**w_out=(w_in+2P-R)/S+1
padding的解释:
对边缘部分没有运算的数据,做补0操作。当padding=1,则周围都补0,padding=0的话,代表不需要填充
附:
valid padding(有效填充):完全不使用填充。
half/same padding(半填充/相同填充):保证输入和输出的feature map尺寸相同。
full padding(全填充):在卷积操作过程中,每个像素在每个方向上被访问的次数相同。
arbitrary padding(任意填充):人为设定填充。
> 注意:padding填充方式:对图片进行四周填充。
如果图片大小滑动窗口大小,步长,它们的取值使得图片的所有像素都被滑动窗口遍历完,这时候就无需零填充了。(padding虽被设置为SAME,但只有在需要零填充时才进行零填充)
R是维度,比如5*5
S是步长值,比如左上角四个,然后中间四个,再右侧四个,这步长就是1
**总结:**由于在此采用的是非全零填充方式,即valid padding,所以padding=0,即输出为(32-5)/1+1=28
文章用来记录生活。
部分内容取自csdn前人,致敬。