来源:机器学习算法与自然语言处理

作者:白雪峰

转载于:https://blog.csdn.net/np4rHI455vg29y2/article/details/78958121

1、CNN例子

Yann LeCun提出的最基本和开始的CNN结构图

2、什么是CNN

2.1、什么是卷积

连续和离散卷积的定义:

特点:

2.2、离散卷积的例子

丢骰子时加起来要等于4的概率是多少?

二维离散的卷积

计算的动图如下

2.3、用到二维图像上

关于卷积中常用到的一些概念:神经网络的卷积是对应位相乘,现在是信号相乘。

在图像处理中,卷积通常被称作为filtering,现在也有很多著名的filtering/convolution kernels都是在图像中抓取直观特征的。

下面移动的小矩阵有两种叫法:一种叫做滤波器filter,一种叫做卷积核kernel,是相同东西的两种不同叫法。

2.4、用到神经网络中

我们其实需要学习的就是里面的线上面对应的权值,比如下面绿色的代表3*1的卷积核大小,只是这里用神经网络的结构表示出来了。

2.5、卷积的细节

  • filter/kernel size, number

假设神经网络的输入是6*6的图像。

其中每个卷积核代表提取不同的特征, 多个卷积核提取的特征然后进行组合(这样更强大),一同送入到后续的结构。

下面来一个更通俗的解释:

每个人代表一个卷积核来进行提取不同的特征,一个人是弱小的,但是一组人就强大了,他们有着不同的知识(权重),这样类比来理解,就会好理解很多。

  • stride

使用filter扫描图片的步的大小。

  • zero-padding

一种不忽略边界模式的方法。

新图像要比原图像更小。

  • channel

2.6、池化(pooling)

池化层从它们的输入中子取样。

1)、Spatial pooling(也称作subsampling或者downsampling)减少每个特征映射的维度。

2)、保持最重要的信息。

max pooling例子(average pooling etc)

  • Pooling具有局部不变性。
  • 图像往左或者往右移动,pooling的结果是不变的。

2.7、flatten

2.8、Convolution VS Fully Connected

2.9、CNN的整体

所以从整体来看,CNN的组成:

  • Convolution(卷积层)
  • Nolinearity:e.g ReLu(非线性转化)
  • Pooling(池化)
  • FC Layers(全连接层)

3、为什么CNN有效

3.1、一些模式是比整幅图像更小的图像

3.2、一些相同的模式出现在不同的区域中

3.3、子采样像素不会改变对象

4、对CNN的一些其他理解

4.1、关于接受域(receptive field)

称在底层中影响上层输出单元s的单元合集为s的接受域(receptive field)。

处于卷积网络更深的层中的单元,它们的接受域要比处在浅层的单元的接受的域更大。如果网络还包含类似步幅卷积或者池化之类的结构特征,这种效应会加强。这意味着在卷积网络中尽管直接连接都是很稀疏的,但处在更深的层中的单元可以间接地链接到全部或者大部分输入图像。(表现性能)

4.2、卷积和池化作为一种无限强的先验

首先,弱先验具有较高的熵值,因此自由性较强,强先验具有较低的熵值,这样的先验在决定参数最终取值时可以起着非常积极的作用。

把卷积网络类比成全连接网络,但对于网络的权重具有无限强的先验。

  • 所有隐藏单元的权重是共享的。

  • 除了一些连续的小单元的权重外,其他的权重都是0.

  • 池化也是一个无限强的先验:每个单元都具有对少量平移的不变性。

卷积和池化可能导致欠拟合!任何其他先验类似,卷积和池化只有当先验的夹着合理且正确时才有用。如果一项任务依赖于保存精确的空间信息,那么在所有的特征上使用池化将会增大训练误差。

根据实际需求选取先验。

CNN卷积神经网络结构及参数配置相关推荐

  1. 深度学习 | MATLAB实现CNN卷积神经网络结构及参数概述

    深度学习 | MATLAB实现CNN卷积神经网络结构及参数概述 目录 深度学习 | MATLAB实现CNN卷积神经网络结构及参数概述 基本介绍 模型描述 训练过程 计算函数 参考资料 基本介绍 卷积神 ...

  2. CNN 卷积神经网络结构

    CNN cnn每一层会输出多个feature map, 每个Feature Map通过一种卷积滤波器提取输入的一种特征,每个feature map由多个神经元组成,假如某个feature map的sh ...

  3. CNN卷积神经网络结构遐思

    残缺的神经网络 卷积神经网络,是神经网络的子集,是残缺的神经网络. [a00a01a02a10a11a12a20a21a22]⊙[b00b01b10b11]=[c00c01c10c11]\left[\ ...

  4. CNN卷积神经网络结构

    卷积神经网络通常是由四部分组成:输入层.卷积层.下采样层.全连接层和输出层.典型的卷积神经网络中,开始的几层一般是卷积层和下采样层交替出现,靠近输出层的最后几层通常是全连接层,其结构如图2-4所示.一 ...

  5. 卷积神经网络结构图分析,卷积神经网络结构图片

    如何用visio画卷积神经网络图.图形类似下图所示 . 大概试了一下用visio绘制这个图,除了最左面的变形图片外其余基本可以实现(那个图可以考虑用其它图像处理软件比如Photoshop生成后插入vi ...

  6. 机器学习——深度学习之卷积神经网络(CNN)——AlexNet卷积神经网络结构

    目录 一.AlexNet卷积神经网络结构模型 1.数据库ImageNet 2.AlexNet第一层卷积层 二.AlexNet卷积神经网络的改进 1.非线性变化函数的改变--ReLU 2.最大池化(Ma ...

  7. 机器学习——深度学习之卷积神经网络(CNN)——LeNet卷积神经网络结构

    目录 一.卷积神经网络 1.卷积神经的作用 2.LeNet 1)数据库准备--minst 2)模型· 二.关于卷积神经网络结构的一些术语定义 1.特征图(Feature map) 2.height(长 ...

  8. 【卷积神经网络结构专题】经典网络结构之VGG(附代码实现)

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! [导读]本文是卷积神经网络结构系列专题第三篇文章,前面我们先后介绍了LeNet和A ...

  9. 【卷积神经网络结构专题】一文详解LeNet(附代码实现)

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 近期,公众号将推出卷积神经网络结构系列专题文章,将深入浅出的为大家介绍从1998年 ...

最新文章

  1. python默认数据类型转换_Python 数据类型转换
  2. 基于NHibernate的三层结构应用程序开发初步
  3. Pause/Resume Instance 操作详解 - 每天5分钟玩转 OpenStack(34)
  4. 2010中国杭州电子信息博览会通讯报道
  5. ssh-add Could not open a connection to your authentication agent.
  6. EasyUI实现工地领款单项目
  7. k8s extender_Windows Home Server的Drive Extender的9种选择
  8. Linux可以对目录进行硬链接,Linux硬链接与软链接原理及用法解析
  9. 每日算法系列【LeetCode 1006】笨阶乘
  10. Selenium私房菜系列6 -- 深入了解Selenium RC工作原理(1)
  11. 为什么机器学习在投资领域不好使
  12. PostgreSQL在何处处理 sql查询之二十九
  13. Hadoop权威指南-读书笔记
  14. 记录Elastic Job服务处于下线状态排查
  15. apple id 如何注册来啦?(亲测流程)
  16. 单片机at89c51数字钟c语言,基于AT89C51单片机的数字钟设计
  17. 开源路由器-OpenWRT/梅林
  18. java 获取月份 几周_获取日期是月份中的第几周(以周一为开始时间)
  19. iOS小技能:iOS15适配导航条主题: 背景颜色、标题颜色
  20. 蓝牙初学者要知道的几件事

热门文章

  1. 相亲婚恋交友网站建设制作,第五篇
  2. python 十六进制字符串相加
  3. Linux:cd命令详解
  4. mysql触发器教程
  5. H5网页获取微信授权登录
  6. java复制文件拒绝访问权限_无法复制文件,拒绝访问路径
  7. PTA C语言结构体 7-5 复数四则运算 (15 分)
  8. 别逗了!知识付费能支撑起喜马拉雅的200亿估值?
  9. ubuntu16.04输入密码后登入黑屏
  10. 《MySQL数据库原理、设计与应用》课后习题及答案 黑马程序员编著