1.卷积神经网络(convolutional neural network)

当处理图片的时候,第一层全连接层将会非常大。为什么呢?想像一下,对于一个100 * 100 * 3的图片,如果第一层神经元个数为1000个,那么将会需要3*10^7+1000个参数,这是很大的一个数字,各位可以感受下。

神经元需要知道整个图片的信息去找到它的模式么?
答案是否定的,一般来说,对于一类图片,有一些特征可以唯一标识这一个种类。好比据说人的耳朵有个部位是一个人的标识,而且不会随着年龄的增大而变化。而且对于输入的图片,我们不能担保它可用对象一定能出现在某个位置,因为我们需要找寻这个位置(这也是很热门的一个领域,detection)。一旦我们找到这样一个小范围,我们可以输入这个小范围的图片信息,减少了各层次间连接的参数。

卷积神经有哪些结构
卷积、池化、卷积、池化、卷积、池化、……、flatten
我们来看一个好看的图,让我们更形象的去理解卷积神经网络。这是卷积神经网络算法的一个实现中的一张图片

该图的输入是一张28*28大小的图像,在C1层有6个5*5的卷积核,因为C1层输出6个(28-5+1)(28-5+1)大小的feature map。然后经过子采样层,这里假设子采样层是对卷积层的均值处理(mean pooling), 其实一般还会有加偏置和激活的操作,为了简化,省略了这两步,只是对卷积层进行一个采样的操作。因此S2层输出的6个feature map大小为(24/2)(24/2).在卷积层C3中,它的输入是6个feature map,与C1不一样(C1只有一个feature map,如果是RGB的话,C1会有三个channel)。C3层有12个5*5卷积核,每个卷积核会与上一层的6个feature map分别做卷积(事实上,一般是选择几种输入feature map来做卷积,而不是全部的feature map),然后对这6个卷积结果求和组成一个新的feature map,即该层会有12个大小为(12-5+1)*(12-5+1)的feature map,这个feature map是经过sigmod 函数处理然后结果下一层S4。

再来一张动态图,让你们更清楚了解CNN卷积过程

以上代码块中的卷积和中的参数是需要学习的,也就是说会给定一个初始值,然后在反复训练的过程中更新参数。另外想说的是,如果存在全0填充的话,图片经过巻积层后维度不会降低;没有的话,就会根据步长大小维度减少。

池化层才是维度降低的关键位置,简单的例子看下图,池化层的步长和大小决定了维度降低的数量。

flatten见下图,就是做了一个reshape操作,数据不变,维度改变。

参考文献:
1. http://blog.csdn.net/zhongkeli/article/details/51854619
2. http://blog.sina.com.cn/s/blog_8e5ce7190102wspj.html
3. http://www.cnblogs.com/hunttown/p/6830581.html

一天搞懂深度学习—学习笔记2(CNN)相关推荐

  1. 太强了! 李宏毅:1 天搞懂深度学习,我总结了 300 页 PPT

    <1 天搞懂深度学习>,300 多页的 ppt,台湾李宏毅教授写的,非常棒.不夸张地说,是我看过最系统,也最通俗易懂的,关于深度学习的文章. 这份 300 页的 PPT,被搬运到了 Sli ...

  2. 下载 | 李宏毅:1 天搞懂深度学习,我总结了 300 页 PPT

    <1 天搞懂深度学习>,300 多页的 ppt,台湾李宏毅教授写的,非常棒.不夸张地说,是我看过最系统,也最通俗易懂的,关于深度学习的文章. 这份 300 页的 PPT,被搬运到了 Sli ...

  3. 【深度学习】李宏毅:1 天搞懂深度学习,我总结了 300 页 PPT(附思维导图)...

    转载自:机器学习算法那些事 ID:Charlotte77 公众号:Charlotte数据挖掘 By    Charlotte77 前言:李宏毅的教材,非常经典,B站有配套视频,文末附下载链接!     ...

  4. 干货 | 台大“一天搞懂深度学习”课程PPT(下载方式见文末!!)

    微信公众号 关键字全网搜索最新排名 [机器学习算法]:排名第一 [机器学习]:排名第一 [Python]:排名第三 [算法]:排名第四 Deep Learing Tutorial 本篇文章我们给出了一 ...

  5. 李宏毅——一天搞懂深度学习PPT学习笔记

    李宏毅一天搞懂机器学习PPT,SildeShare链接:https://www.slideshare.net/tw_dsconf/ss-62245351?qid=108adce3-2c3d-4758- ...

  6. 读懂深度迁移学习,看这文就够了 | 赠书

    百度前首席科学家.斯坦福大学副教授吴恩达(Andrew Ng)曾经说过:迁移学习将是继监督学习之后的下一个促使机器学习成功商业化的驱动力. 本文选自<深度学习500问:AI工程师面试宝典> ...

  7. [1天搞懂深度学习] 读书笔记 lecture I:Introduction of deep learning

    - 通常机器学习,目的是,找到一个函数,针对任何输入:语音,图片,文字,都能够自动输出正确的结果. - 而我们可以弄一个函数集合,这个集合针对同一个猫的图片的输入,可能有多种输出,比如猫,狗,猴子等, ...

  8. 一文搞懂深度学习正则化的L2范数

    想要彻底弄明白L2范数,必须要有一定的矩阵论知识,L2范数涉及了很多的矩阵变换.在我们进行数学公式的推到之前,我们先对L2范数有一个感性的认识. L2范数是什么? L2范数的定义其实是一个数学概念,其 ...

  9. 深度学习基础笔记(MLP+CNN+RNN+Transformer等等)

    提示:本人还在学习当中,所作笔记仅供大家参考,若有问题欢迎大家指出! 目录 专业词汇 基础神经网络 感知机 多层感知机MLP 卷积神经网络CNN 激活函数 正则化 最优化方法 生成模型GAN 自然语言 ...

  10. [深度学习论文笔记]Multimodal CNN Networks for Brain Tumor Segmentation in MRI

    Multimodal CNN Networks for Brain Tumor Segmentation in MRI: A BraTS 2022 Challenge Solution MRI中用于脑 ...

最新文章

  1. Java基础班学习笔记(13)IO流
  2. 支持国内版Office 365的PowerShell模块现已发布
  3. Silverlight DataGrid超出列表高度时自动滚屏
  4. cmake交叉编译android,CMake Android 交叉编译
  5. vsftp 添加虚拟帐号
  6. Django2.x中url路由的path()与re_path()参数解释(亲测)
  7. 微服务之:从零搭建ocelot网关和consul集群
  8. Express中use挂载中间件的方法
  9. 699 - The Falling Leaves
  10. Linux系统多网卡环境下的路由配置
  11. python变量图片_在Python中向3D图添加第4个变量
  12. vue使用three.js 第一人称移动。与cs控制角色移动一样(第一人称旋转相机+控制相机移动)
  13. mysql并发参数查看_MySQL Innodb 并发涉及参数
  14. ajax的两个重要参数contentType 和dataType
  15. 学生管理系统(JAVA后台简约版)
  16. c语言实验作业,C语言实验报告experience_c语言实验报告结果分析
  17. 电子技术网站大全[转]
  18. html5 按钮css样式修改,css样式制作的漂亮按钮
  19. 东华大学2020考研计算机OJ题目解答分享——进阶篇(34)
  20. 不用找,你想要的游戏成套3d模型素材都在这里

热门文章

  1. ToStringBuilder.reflectionToString用法
  2. 盘点那些适合写api接口的工具
  3. JSP与Servlet 程序设计教程
  4. 初级商业数字营销师超级推荐
  5. BackTrack 4 新功能
  6. PHP网站常见一些安全漏洞及防御方法
  7. 《网管员世界》征稿启事
  8. 引擎提示Alias HeroDB跟游戏引擎启动异常怎么解决?
  9. 【笔记记录】系统策划案该怎么写
  10. javaweb零食商城系统设计与实现(ssm项目)(含论文和源码)