本博客只用于自身学习,如有错误,虚心求教!!!

为什么CNN中的卷积核一般都是奇奇数*奇数,没有偶数*偶数的?

咱们经常见到的多为 3 * 3、5*5;怎么从来没有见过 4*4,6*6 之类的卷积核?无论奇数 or 偶数,都是能够做卷积的呀

之前学习的时候真的没有想过这些问题,再复习时,觉得全是 Why?说明之前还是没有搞明白

从AlexNet模型的11*11、5*5、3*3,还有VGG开始统一卷积核为3*3,再到之后的模型,都没有用过 偶数*偶数的卷积核,说明它是有问题的,或者是没有 奇数*奇数的方便

这一串的问题,原因有两个:

1.保证了 锚点 刚好在中间

锚点也就是卷积核滑动时的一个参考点(相对于图像来说,自己理解的,不保证正确,没找到相关资料)。奇数过滤器的锚点正好在中心位置,避免了位置信息发生偏移,如果卷积核是偶数*偶数时,这时候就没有办法确定了锚点了。让谁是锚点,卷积核上下左右移动之后,位置信息都会发生偏移。

2. same convolution,偶数卷积核会出现问题

说点题外话

做卷积时会出现两种问题

1)图像越来越小;

2)图像边界信息丢失,即有些图像角落和边界的信息发挥作用较少

所以有时候我们会在图像的周围填补 0 ,一来减缓图像变小的速度,二来,保证边界信息不丢失。甚至有时候会让输入输出的大小一样,也就是 same convolution 比如下图的VGG模型,卷积时输入输出的大小是保持不变的,只有在池化层是才会缩减一半。

卷积之后的尺寸大小计算公式为:

  • 输入图片大小 W×W
  • Filter大小 F×F
  • 步长strides  S
  • padding的像素数 P
  • 输出大小为NxN

于是我们可以得出

这里写一下我的理解:公式中Padding 为啥要乘以 2 ,我的理解为 在周围填 0 的话,左右(上下)两边都填补 0 才有意义,保证是对称的

做same convolution,步长S=1  Padding  P = (F-1)/ 2,也即是需要在原图边长基础上padding F-1个 0 (这个应该很好理解),当卷积核为偶数时,P就不能保证平均分配到卷积两边  。

为什么CNN中的卷积核一般都是奇数相关推荐

  1. 为什么CNN中的卷积核一般都是奇数?

    本博客只用于自身学习,如有错误,虚心求教!!! 为什么CNN中的卷积核一般都是奇奇数*奇数,没有偶数*偶数的? 咱们经常见到的多为 3 * 3.5*5;怎么从来没有见过 4*4,6*6 之类的卷积核? ...

  2. 【AI-1000问】为什么CNN中的卷积核半径都是奇数?

    往期视频(前往公众号有三AI观看) 为什么CNN中的卷积核一般都是奇数*奇数? 熟悉CNN应该都知道常见的卷积核都是3*3或者5*5等,也就是奇数*奇数,似乎都没看过偶数的,这是为什么呢? 作者/编辑 ...

  3. CNN中的卷积核及TensorFlow中卷积的各种实现

    声明: 1. 我和每一个应该看这篇博文的人一样,都是初学者,都是小菜鸟,我发布博文只是希望加深学习印象并与大家讨论. 2. 我不确定的地方用了"应该"二字 首先,通俗说一下,CNN ...

  4. 为什么卷积核通常都是奇数(1x1、3x3...)

    使用小的卷积核代替大卷积核的目的有两个,第一,降低参数数量,第二,顺带的效果是增加了网络深度. 1,为了方便same padding时的处理.如步长为1时,要补充k-1的zero padding才能使 ...

  5. CNN 中1X1卷积核的作用

    转载自: http://blog.csdn.net/u014696921/article/details/52950247 http://www.caffecn.cn/?/question/136 从 ...

  6. python 图像卷积_[卷积神经网络(CNN)中的卷积核到底是如何提取图像特征的(python实现图像卷积运算)]...

    1.前言 我们知道,卷积核(也叫滤波器矩阵)在卷积神经网络中具有非常重要的作用.说白了,CNN主要作用在于提取图像的各种特征图(feature maps). CNN主要是通过卷积运算来完成特征提取的. ...

  7. 【深度学习】CNN 中 1x1 卷积核的作用

    最近研究 GoogLeNet 和 VGG 神经网络结构的时候,都看见了它们在某些层有采取 1x1 作为卷积核,起初的时候,对这个做法很是迷惑,这是因为之前接触过的教材的例子中最小的卷积核是 3x3 , ...

  8. CNN为什么卷积核的大小都是奇数

    CNN的卷积核大小都是奇数而没有偶数主要有以下两点原因: 1.奇数卷积核有中心像素点 如下图中,奇数大小的卷积核有唯一的中心像素点,而偶数大小的卷积核没有中心像素点                   ...

  9. 深度学习基础学习-1x1卷积核的作用(CNN中)

    前言 这里就不赘述卷积神经网络相关内容了,直接通过博主看的一些资料,自己进行了一些整合,大佬绕道. 对于1x1卷积核的作用主要可以归纳为以下几点 增加网络深度(增加非线性映射次数) 升维/降维 跨通道 ...

最新文章

  1. Windows10下如何安装配置 perl 环境
  2. 5分钟学会开发浏览器扩展
  3. 统计学中的自由度 Degrees of freedom (statistics)
  4. 盘点:弱电施工过程中的电线电缆36计
  5. 【笔记】分离字符串中的数字、字母和汉字
  6. java 最大子数组_求一个数组中子数组的最大和算法(Java实现)
  7. Web前端开发面试考点指南
  8. 【报告分享】2021制造业与人工智能创新应用发展报告.pdf(附下载链接)
  9. baseurl php,html base URL是什么?html base详细解析汇总
  10. 使用Visual Studio进行单元测试-Part4
  11. JavaJDBC异常记录:关于sql上能够正常执行的sql语句,在java中执行了但是返回结果不一致问题
  12. Ubuntu16.04 安装Firefox火狐浏览器中国版使用及升级
  13. 红帽linux系统服务器下载,redhat linux 下载地址大全 完全整理
  14. Unity下载安装和Android打包成APK
  15. iPhone如何连接U盘呢 iphone连接u盘方法教程
  16. SpringBoot的Upd服务端,客户端案列
  17. C#开源代码Newbeecoder.UI控件库极力推荐
  18. 三星android系统应用,三星Android系统文件夹全解
  19. mysql中+desc用法,数据库desc的用法有哪些用法
  20. 全国2012年1月高等教育考试

热门文章

  1. 倒谱法的基因周期检测matlab,Matlab在基音周期检测教学中的应用研究
  2. Web前端:JavaScript最强总结 附详细代码 (带常用案例!)
  3. 使用路由器中碰到的问题总结
  4. Linux系统编程 46 -lseek函数
  5. office outlook配置hotmail
  6. 盒子拉伸拉扯(左右模式)
  7. @schedule定时注解
  8. Deep Q-Learning(DQN)
  9. 浅谈模式 - 桥梁模式
  10. 程序员健身总动员:写代码后你胖了几斤?