深度学习:卷积神经网络CNN变体
http://blog.csdn.net/pipisorry/article/details/76573696
带步幅的多通道巻积
很多时候,我们输入的是多通道图像。如RGB三通道图像,下图就是。也有可能我们出于特定目的,将几张图组成一组一次性输入处理。
多通道巻积
假定我们有一个 4 维的核张量 K,它的每一个元素是 K i,j,k,l ,表示输出中处于通道 i 的一个单元和输入中处于通道 j 中的一个单元的连接强度,并且在输出单元和输入单元之间有 k 行 l 列的偏置。假定我们的输入由观测数据 V 组成,它的每一个元素是 V i,j,k ,表示处在通道 i 中第 j 行第 k 列的值。假定我们的输出 Z 和输入V 具有相同的形式。如果输出 Z 是通过对 K 和 V 进行卷积而不涉及翻转 K 得到的,那么
这里对所有的 l,m 和 n 进行求和是对所有(在求和式中)有效的张量索引的值进行求和。在线性代数中,向量的索引通常从 1 开始,这就是上述公式中 −1 的由来。但是像 C 或 Python 这类编程语言索引通常从 0 开始,这使得上述公式可以更加简洁。
带步幅巻积
我们有时会希望跳过核中的一些位置来降低计算的开销(相应的代价是提取特征没有先前那么好了)。我们可以把这一过程看作是对全卷积函数输出的下采样(downsampling)。如果我们只想在输出的每个方向上每间隔 s 个像素进行采样,那么我们可以定义一个下采样卷积函数 c 使得
我们把 s 称为下采样卷积的 步幅(stride)。当然也可以对每个移动方向定义不同的步幅。
示例
对于这种情况,这时一个过滤器或卷积核其实对应的是x个卷积核(对应x通道)和一个偏置量,如下图中的W0
和W1
。一个通道中的某个区域(蓝框)和它对应的卷积核(红框)做卷积,多个通道的卷积结果线性相加,再加上偏置量(最下的单个红框),得到卷积结果(最右列中心的绿色框)。下图的卷积层包含2个多通道卷积核W0
和W1
,所以结果为2个绿色矩阵。而该卷积层的输出对于下一卷积层一定程度上也就可以说是2通道,处理方式也是类似。
下面的动画显示了包含两个filter的卷积层的计算。我们可以看到7*7*3输入,经过两个3*3*3filter的卷积(步幅为2),得到了3*3*2的输出。另外我们也会看到下图的Zero padding是1,也就是在输入元素的周围补了一圈0。Zero padding对于图像边缘部分的特征提取是很有帮助的。
以上就是卷积层的计算方法。这里面体现了局部连接和权值共享:每层神经元只和上一层部分神经元相连(卷积计算规则),且filter的权值对于上一层所有神经元都是一样的。对于包含两个3*3*3的fitler的卷积层来说,其参数数量仅有(3*3*3+1)*2=56个,且参数数量与上一层神经元个数无关。与全连接神经网络相比,其参数数量大大减少了。
示例中图和公式9.8对应关系。
[cs231 Convolutional Neural Networks]
[卷积神经网络CNN基本概念笔记]
from: http://blog.csdn.net/pipisorry/article/details/76573696
ref:
深度学习:卷积神经网络CNN变体相关推荐
- 深度学习--卷积神经网络CNN
主要内容 1. 神经网络 1.1 感知器 1.2 Sigmoid神经元 1.3 神经网络 2. 卷积神经网络CNN 2.1 卷积神经网络结构 2.2 数据输入层 2.3 卷积层 2.3.1 局部感知( ...
- 深度学习——卷积神经网络CNN
这两天看了不少讲卷积神经网络的文章和视频,由于我本人才疏学浅,在学习过程中基本上是一头雾水,导致的结果就是不过幸好,在快要绝望的时候,我在知乎上发现了一篇宝藏文章卷积神经网络CNN完全指南终极版这篇文 ...
- 深度学习 --- 卷积神经网络CNN(LeNet-5网络详解)
卷积神经网络(Convolutional Neural Network,CNN)是一种前馈型的神经网络,其在大型图像处理方面有出色的表现,目前已经被大范围使用到图像分类.定位等领域中.相比于其他神经网 ...
- 深度学习 --- 卷积神经网络CNN(LeNet-5网络学习算法详解)
上一节我们详细探讨了LeNet-5网络的架构,但是还没有解释该网络是如何进行学习的,如何更新权值的,本节将接着上一节进一步CNN的学习机制和权值更新过程,这里请大家一定要对CNN网络有一个清晰的认识, ...
- 一种基于深度学习(卷积神经网络CNN)的人脸识别算法-含Matlab代码
目录 一.引言 二.算法的基本思想 三.算法数学原理 3.1 权值共享 3.2 CNN结构 四.基于卷积神经网络的人脸识别算法-Matlab代码 五.Matlab源代码获取 一.引言 在工程应用中经常 ...
- 深度学习卷积神经网络CNN之 VGGNet模型主vgg16和vgg19网络模型详解说明(理论篇)
1.VGG背景 2. VGGNet模型结构 3. 特点(创新.优缺点及新知识点) 一.VGG背景 VGGNet是2014年ILSVRC(ImageNet Large Scale Visual R ...
- 深度学习 卷积神经网络原理
深度学习 卷积神经网络原理 一.前言 二.全连接层的局限性 三.卷积层 3.1 如何进行卷积运算? 3.2 偏置 3.3 填充 3.4 步长 3.5 卷积运算是如何保留图片特征的? 3.6 三维卷积 ...
- DL之CNN优化技术:学习卷积神经网络CNN的优化、实践经验(练习调参)、从代码深刻认知CNN架构之练习技巧
DL之CNN优化技术:学习卷积神经网络CNN的优化.调参实践.从代码深刻认知CNN架构之练习技巧 目录 卷积神经网络CNN调参学习实践 练习技巧 1.练习攻略一 2.VGG16练习攻略二 卷积神经网络 ...
- 深度学习 卷积神经网络-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 花卉图像数 ...
最新文章
- 简单来说一下java中的泛型,ssh中dao层使用会简化代码量
- javascript是一门多线程的语言_Javascript:10天设计一门语言
- Java 12 switch表达式新特性(->,yield)
- zynq文档学习之GPIO和MIO和EMIO的基本介绍
- 【转】超现实的经典语录
- 简单的linux下docker的下载与安装
- 【操作系统】Unix文件类型有哪些
- java生成二维码工具
- 串级控制系统matlab仿真,锅炉串级三冲量给水控制系统的MATLAB 仿真
- 数据库update更新date类型数据
- office卸载工具怎么用(官方干净卸载方法)
- 微信公众号消息模板发送
- “收藏本站”,“设为首页”的脚本
- PPC关闭和切换程序小软件收集
- vue视频,vue视频下载
- 接口与接口、接口与类之间的关系
- 不再贩卖「情怀」的锤子手机
- linux群晖系统密码忘记,【系统篇】猫盘群晖重置密码、重装、重置、升级与降级等...
- P1941 [NOIP2014 提高组] 飞扬的小鸟——解题报告
- LED显示行业之刷新率