往期视频(前往公众号有三AI观看)
为什么CNN中的卷积核一般都是奇数*奇数?
熟悉CNN应该都知道常见的卷积核都是3*3或者5*5等,也就是奇数*奇数,似乎都没看过偶数的,这是为什么呢?
作者/编辑 汤兴旺
在CNN中,卷积核的大小是3*3或者5*5是最常见的。也就是说我们见到的卷积核几乎都是奇数*奇数的。在LeNet5中两个卷积层的卷积核都是5*5。
而在AlexNet中共有5个卷积层,conv1的卷积核大小是11*11;conv2的卷积核大小是5*5;conv3的卷积核大小是3*3;conv4的卷积核大小是3*3;conv5的卷积核大小是3*3。
看到了吗?都是奇数!这是为什么呢?
解答1:更容易padding!
在卷积时,我们有时候需要卷积前后的尺寸不变。这时候我们就需要用到padding。假设图像的大小,也就是被卷积对象的大小为n*n,卷积核大小为k*k,padding的幅度设为(k-1)/2时,卷积后的输出就为(n-k+2*((k-1)/2))/1+1=n,即卷积输出为n*n,保证了卷积前后尺寸不变。但是如果k是偶数的话,(k-1)/2就不是整数了。
解答2:更容易找到卷积锚点!
在CNN中,进行卷积操作时一般会以卷积核模块的一个位置为基准进行滑动,这个基准通常就是卷积核模块的中心。若卷积核为奇数,卷积锚点很好找,自然就是卷积模块中心,但如果卷积核是偶数,这时候就没有办法确定了,让谁是锚点似乎都不怎么好。
思考
你现在知道为什么CNN中的卷积核一般都是奇数*奇数了吗?对于卷积核还有许多细节值得我们思考!如果您对卷积核有什么问题或者见解,欢迎留言!
如果想加入我们,后台留言吧
转载文章请后台联系
侵权必究
更多请关注知乎专栏《有三AI学院》和公众号《有三AI》
网友评论