为什么CNN中的卷积核一般都是奇数
本博客只用于自身学习,如有错误,虚心求教!!!
为什么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中的卷积核一般都是奇数相关推荐
- 为什么CNN中的卷积核一般都是奇数?
本博客只用于自身学习,如有错误,虚心求教!!! 为什么CNN中的卷积核一般都是奇奇数*奇数,没有偶数*偶数的? 咱们经常见到的多为 3 * 3.5*5;怎么从来没有见过 4*4,6*6 之类的卷积核? ...
- 【AI-1000问】为什么CNN中的卷积核半径都是奇数?
往期视频(前往公众号有三AI观看) 为什么CNN中的卷积核一般都是奇数*奇数? 熟悉CNN应该都知道常见的卷积核都是3*3或者5*5等,也就是奇数*奇数,似乎都没看过偶数的,这是为什么呢? 作者/编辑 ...
- CNN中的卷积核及TensorFlow中卷积的各种实现
声明: 1. 我和每一个应该看这篇博文的人一样,都是初学者,都是小菜鸟,我发布博文只是希望加深学习印象并与大家讨论. 2. 我不确定的地方用了"应该"二字 首先,通俗说一下,CNN ...
- 为什么卷积核通常都是奇数(1x1、3x3...)
使用小的卷积核代替大卷积核的目的有两个,第一,降低参数数量,第二,顺带的效果是增加了网络深度. 1,为了方便same padding时的处理.如步长为1时,要补充k-1的zero padding才能使 ...
- CNN 中1X1卷积核的作用
转载自: http://blog.csdn.net/u014696921/article/details/52950247 http://www.caffecn.cn/?/question/136 从 ...
- python 图像卷积_[卷积神经网络(CNN)中的卷积核到底是如何提取图像特征的(python实现图像卷积运算)]...
1.前言 我们知道,卷积核(也叫滤波器矩阵)在卷积神经网络中具有非常重要的作用.说白了,CNN主要作用在于提取图像的各种特征图(feature maps). CNN主要是通过卷积运算来完成特征提取的. ...
- 【深度学习】CNN 中 1x1 卷积核的作用
最近研究 GoogLeNet 和 VGG 神经网络结构的时候,都看见了它们在某些层有采取 1x1 作为卷积核,起初的时候,对这个做法很是迷惑,这是因为之前接触过的教材的例子中最小的卷积核是 3x3 , ...
- CNN为什么卷积核的大小都是奇数
CNN的卷积核大小都是奇数而没有偶数主要有以下两点原因: 1.奇数卷积核有中心像素点 如下图中,奇数大小的卷积核有唯一的中心像素点,而偶数大小的卷积核没有中心像素点 ...
- 深度学习基础学习-1x1卷积核的作用(CNN中)
前言 这里就不赘述卷积神经网络相关内容了,直接通过博主看的一些资料,自己进行了一些整合,大佬绕道. 对于1x1卷积核的作用主要可以归纳为以下几点 增加网络深度(增加非线性映射次数) 升维/降维 跨通道 ...
最新文章
- Windows10下如何安装配置 perl 环境
- 5分钟学会开发浏览器扩展
- 统计学中的自由度 Degrees of freedom (statistics)
- 盘点:弱电施工过程中的电线电缆36计
- 【笔记】分离字符串中的数字、字母和汉字
- java 最大子数组_求一个数组中子数组的最大和算法(Java实现)
- Web前端开发面试考点指南
- 【报告分享】2021制造业与人工智能创新应用发展报告.pdf(附下载链接)
- baseurl php,html base URL是什么?html base详细解析汇总
- 使用Visual Studio进行单元测试-Part4
- JavaJDBC异常记录:关于sql上能够正常执行的sql语句,在java中执行了但是返回结果不一致问题
- Ubuntu16.04 安装Firefox火狐浏览器中国版使用及升级
- 红帽linux系统服务器下载,redhat linux 下载地址大全 完全整理
- Unity下载安装和Android打包成APK
- iPhone如何连接U盘呢 iphone连接u盘方法教程
- SpringBoot的Upd服务端,客户端案列
- C#开源代码Newbeecoder.UI控件库极力推荐
- 三星android系统应用,三星Android系统文件夹全解
- mysql中+desc用法,数据库desc的用法有哪些用法
- 全国2012年1月高等教育考试