CNN的学习笔记
1、卷积核的概念,卷积核的size,就是滑动窗口的大小,例如原始数据为28*28的手写数字,滑动窗口size为5*5,则卷积核的size为5*5。卷积核就是权重集合,就是5*5+1。1表示偏置项。卷积核就是输入层的25个点+1个偏置项,链接卷积层的一个点后的权重值集合W。
2、feature map 就是通过卷积以后,计算的输出的神经元值的集合,比如输入28*28的手写数字,经过5*5的卷积核卷积,通过sigmod的函数计算得到的输出神经元的值的集合24*24就是一个feature map,由于一般用多个卷积核进行卷积,假设6个,那么第二层就有6*24*24的数据,即6个featuremap。
3、每一层内的权值即卷积核是共享的,值是一样的。例如6个featuremap,那么输入层到某一个featuremap的时候有24*5*5个链接,如果按照普通的神经网络的话就有24*5*5个w需要学习,但是权值共享以后(即权值相同),就只要学习5*5个w权值即可。因为另外23个5*5的值与这个5*5是一样的。
4、pool又叫subsampling,就是子采样。其实就是把图片模糊化,目的是降维。例如24*24的C1层经过pooling后,变为6个14*14的featuremap。S3层的卷积核一般为2*2,即卷积核是1/4。其实就是w=1/4。c层与s层的链接w是不需要学习的。S3层的featuremap(其实就相当于这层的值)也不用sigmod计算,而是直接把上一层C2层的featuremap直接mean pooling。均值化即可。
5、C3层也是卷积层,同样采用5*5的卷积核。要从上面的6个subsampling的featuremap中链接。这一层的featuremap为16个,也就是用16个卷积核去卷积。C3中的每个featuremap是连接到S2中的所有6个或者几个featuremap的,表示本层的特征map是上一层提取到的特征map的不同组合(这个做法也并不是唯一的)。为什么不把S2中的每个特征图连接到每个C3的特征图呢?原因有2点。第一,不完全的连接机制将连接的数量保持在合理的范围内。第二,也是最重要的,其破坏了网络的对称性。由于不同的特征图有不同的输入,所以迫使他们抽取不同的特征。
6、最后一层输出层,采用全连接的形式 F6层有84个单元(之所以选这个数字的原因来自于输出层的设计),与C5层全相连。有10164个可训练参数。如同经典神经网络,F6层计算输入向量和权重向量之间的点积,再加上一个偏置。然后将其传递给sigmoid函数产生单元i的一个状态。
7、cnn源码中的d表示残值,就是对cost function 求导数的来的,步骤如下
CNN的学习笔记的更多相关文章
- 卷积神经网络(CNN)学习笔记1:基础入门
卷积神经网络(CNN)学习笔记1:基础入门 Posted on 2016-03-01 | In Machine Learning | 9 Comments | 14935 Vie ...
- CNN学习笔记:批标准化
CNN学习笔记:批标准化 Batch Normalization Batch Normalization, 批标准化, 是将分散的数据统一的一种做法, 也是优化神经网络的一种方法. 在神经网络的训练过 ...
- CNN学习笔记:目标函数
CNN学习笔记:目标函数 分类任务中的目标函数 目标函数,亦称损失函数或代价函数,是整个网络模型的指挥棒,通过样本的预测结果与真实标记产生的误差来反向传播指导网络参数学习和表示学习. 假设某分类任务共 ...
- CNN学习笔记:卷积神经网络
CNN学习笔记:卷积神经网络 卷积神经网络 基本结构 卷积神经网络是一种层次模型,其输入是原始数据,如RGB图像.音频等.卷积神经网络通过卷积(convolution)操作.汇合(pooling)操作 ...
- CNN学习笔记:全连接层
CNN学习笔记:全连接层 全连接层 全连接层在整个网络卷积神经网络中起到“分类器”的作用.如果说卷积层.池化层和激活函数等操作是将原始数据映射到隐层特征空间的话,全连接层则起到将学到的特征表示映射到样 ...
- CNN学习笔记:池化层
CNN学习笔记:池化层 池化 池化(Pooling)是卷积神经网络中另一个重要的概念,它实际上是一种形式的降采样.有多种不同形式的非线性池化函数,而其中“最大池化(Max pooling)”是最为常见 ...
- CNN学习笔记:卷积运算
CNN学习笔记:卷积运算 边缘检测 卷积 卷积是一种有效提取图片特征的方法.一般用一个正方形卷积核,遍历图片上的每一个像素点.图片与卷积核重合区域内相对应的每一个像素值乘卷积核 .内相对应点的权重,然 ...
- CNN学习笔记:激活函数
CNN学习笔记:激活函数 激活函数 激活函数又称非线性映射,顾名思义,激活函数的引入是为了增加整个网络的表达能力(即非线性).若干线性操作层的堆叠仍然只能起到线性映射的作用,无法形成复杂的函数.常用的 ...
- CNN学习笔记:梯度下降法
CNN学习笔记:梯度下降法 梯度下降法 梯度下降法用于找到使损失函数尽可能小的w和b,如下图所示,J(w,b)损失函数是一个在水平轴w和b上面的曲面,曲面的高度表示了损失函数在某一个点的值
随机推荐
- Linux Tomcat重新启动
在Linux系统下,重启Tomcat使用命令操作的! 首先,进入Tomcat下的bin目录 cd /usr/local/tomcat/bin 使用Tomcat关闭命令 ./shutdown.sh 查看 ...
- date.getTime()
Date date = new Date(); System.out.println(date.getTime()); 输出结果是1210745780625 编译时间当时时间大概是2008年5.14好 ...
- sass使用指南
[sass使用指南] http://www.ruanyifeng.com/blog/2012/06/sass.html
- socket.io api 总结
server 端const io = require('socket.io')(8000, { // path: '/socket', pingInterval: 10000, pingTimeout ...
- Excel Sheet Column Number(STRING-TYPE CONVERTION)
QUESTION Related to question Excel Sheet Column Title Given a column title as appear in an Excel she ...
- Unity 5.1+ Assertion Library (断言库)
Unity 5.1+ ,加入了“断言库”,在 Asset 类中可以方便的找到需要使用断言的函数. UnityEngine.Assertions.Assert.IsNotNull( ) 为何使用断言 使 ...
- inputStream、File、Byte、String等等之间的相互转换
一:inputStream转换 1.inputStream转为byte //方法一 org.apache.commons.io.IOUtils包下的实现(建议) IOUtils.toByteArray ...
- ContentProvider-------------自定义的内容提供者 然后去访问
自定义提供者 import android.content.Context; import android.database.DatabaseErrorHandler; import android. ...
- dede 复制文章,远程图片无法本地化
解决方法: 1.找到dede的后台目录,在后台目录下的inc下找到inc_archives_functions.php 2.搜索GetCurContent函数,找到如下这段代码: preg_match ...
- Struts2的拦截器技术
1. 拦截器的概述 * 拦截器就是AOP(Aspect-Oriented Programming,面向切面)的一种实现.(AOP是指用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作 ...