【深度学习】卷积概念以及卷积核层数
对图像(不同的数据窗口数据)和滤波矩阵(一组固定的权重:因为每个神经元的多个权重固定,所以又可以看做一个恒定的滤波器filter)做内积(逐个元素相乘再求和)的操作就是所谓的『卷积』操作,也是卷积神经网络的名字来源。
中间的过程部分可以理解为一个滤波器,即带着一组固定权重的神经元,多个滤波器的叠加便成了卷积层。
一般而言,深度卷积网络是一层又一层的。
层的本质是特征图, 存贮输入数据或其中间表示值。
一组卷积核则是联系前后两层的网络参数表达体, 训练的目标就是每个卷积核的权重参数组。
描述网络模型中某层的厚度,通常用名词通道channel数或者特征图feature map数。
不过人们更习惯把作为数据输入的前层的厚度称之为通道数(比如RGB三色图层称为输入通道数为3),
把作为卷积输出的后层的厚度称之为特征图数。
卷积核(filter)一般是3D多层的,除了面积参数, 比如3x3之外, 还有厚度参数H. 还有一个属性是卷积核的个数N。
卷积核的厚度H, 一般等于前层厚度M(输入通道数或feature map数).
卷积核的个数N, 一般等于后层厚度(后层feature maps数,因为相等所以也用N表示)。
卷积核厚度等于1时为2D卷积,对应平面点相乘然后把结果加起来,相当于点积运算;
卷积核厚度大于1时为3D卷积,每片分别平面点求卷积,然后把每片结果加起来,作为3D卷积结果;
1x1卷积属于3D卷积的一个特例,有厚度无面积, 直接把每片单个点乘以权重再相加。
归纳之,卷积的意思就是把一个区域,不管是一维线段,二维方阵,还是三维长方块,全部按照卷积核的维度形状,对应逐点相乘再求和,浓缩成一个标量值也就是降到零维度,作为下一层的一个feature map的一个点的值!
可以比喻一群渔夫坐一个渔船撒网打鱼,鱼塘是多层水域,每层鱼儿不同。 船每次移位一个stride到一个地方,每个渔夫撒一网,得到收获,然后换一个距离stride再撒,如此重复直到遍历鱼塘。 A渔夫盯着鱼的品种,遍历鱼塘后该渔夫描绘了鱼塘的鱼品种分布; B渔夫盯着鱼的重量,遍历鱼塘后该渔夫描绘了鱼塘的鱼重量分布; 还有N-2个渔夫,各自兴趣各干各的; 最后得到N个特征图,描述了鱼塘的一切!
2D卷积表示渔夫的网就是带一圈浮标的渔网,只打上面一层水体的鱼; 3D卷积表示渔夫的网是多层嵌套的渔网,上中下层水体的鱼儿都跑不掉; 1x1卷积可以视为每次移位stride,甩钩钓鱼代替了撒网;
【深度学习】卷积概念以及卷积核层数相关推荐
- 一种基于深度学习(卷积神经网络CNN)的人脸识别算法-含Matlab代码
目录 一.引言 二.算法的基本思想 三.算法数学原理 3.1 权值共享 3.2 CNN结构 四.基于卷积神经网络的人脸识别算法-Matlab代码 五.Matlab源代码获取 一.引言 在工程应用中经常 ...
- 想知道深度学习卷积在GPU上如何优化吗?“大神”赵开勇带你深入浅出
想知道深度学习卷积在GPU上如何优化吗?"大神"赵开勇带你深入浅出 2016-08-19 11:54 转载 陈杨英杰 0条评论 雷锋网(搜索"雷锋网"公众号关注 ...
- 深度学习卷积神经网络大事件一览
转载自:http://blog.csdn.net/u013088062/article/details/51118744 深度学习(DeepLearning)尤其是卷积神经网络(CNN)作为近几年来模 ...
- 深度学习 卷积神经网络-Pytorch手写数字识别
深度学习 卷积神经网络-Pytorch手写数字识别 一.前言 二.代码实现 2.1 引入依赖库 2.2 加载数据 2.3 数据分割 2.4 构造数据 2.5 迭代训练 三.测试数据 四.参考资料 一. ...
- 毕设 深度学习卷积神经网络的花卉识别
文章目录 0 前言 1 项目背景 2 花卉识别的基本原理 3 算法实现 3.1 预处理 3.2 特征提取和选择 3.3 分类器设计和决策 3.4 卷积神经网络基本原理 4 算法实现 4.1 花卉图像数 ...
- 深度学习 卷积神经网络原理
深度学习 卷积神经网络原理 一.前言 二.全连接层的局限性 三.卷积层 3.1 如何进行卷积运算? 3.2 偏置 3.3 填充 3.4 步长 3.5 卷积运算是如何保留图片特征的? 3.6 三维卷积 ...
- 毕业设计 - 题目:基于深度学习卷积神经网络的花卉识别 - 深度学习 机器视觉
文章目录 0 前言 1 项目背景 2 花卉识别的基本原理 3 算法实现 3.1 预处理 3.2 特征提取和选择 3.3 分类器设计和决策 3.4 卷积神经网络基本原理 4 算法实现 4.1 花卉图像数 ...
- 机器学习基础:人工智能、机器学习、深度学习的概念和关系(一)
本文属于入门深度学习系列文章的第一篇,该系列专栏主要是记录我在Coursera上学习Andrew Ng的 Machine Learning 和 Deep Learning.AI课程时做的笔记,如果有错 ...
- 基于keras的深度学习基本概念讲解
基于keras的深度学习基本概念讲解 Tensorflow1.0正式发布,谷歌首届Tensorflow开发者大会在山景召开,深度学习迎来新的高潮和狂欢.随着深度学习框架的普及和推广,会有越来越多人加入 ...
最新文章
- python将一组数分成每3个一组
- 第五章 Octave 教程-机器学习老师板书-斯坦福吴恩达教授
- openresty开发系列2--nginx的简单安装,正向、反向代理及常用命令和信号控制介绍...
- 面向.NET开发人员的Dapr——服务调用
- MySQL 基准测试(sysbench)工具安装时提示 automake 1.10.x (aclocal) wasn‘t found, exiting
- 软件工程导论 06章详细设计
- 字节跳动辟谣“出售AI技术”和“成立打车项目”;GitHub 因代码版权问题遭抵制;贝佐斯正式卸任亚马逊 CEO|极客头条...
- 【HNOI 2016】序列
- Silverlight 2 Beta 1学习资源
- 呦乐乐_百科讲解大全
- 原来闭包也可以这么简单
- 报童问题求解最大利润_OM | 选址问题模型研究——以悠桦林仓库布局实践为例...
- python批处理删除文件夹中以xxx后缀名结尾的文件
- 工具--Typora详解
- C语言100个囚犯和灯泡,一百个囚犯和一个灯泡
- 病毒泄密一个接一个,有7招能保护你的数字生活
- Elasticsearch7.3文档管理
- Ubuntu 13.04搭建J2EE开发环境
- Lua内存泄露检查和性能检测工具
- ubuntu snort-mysql_Ubuntu 16.04 搭建Snort