目录

0. 前言

1. LeNet-5

2. AlexNet

3. VGG-16

4. ResNet 残差网络

5. Inception Network


如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔~我会非常开心的~

花书+吴恩达深度学习(十)卷积神经网络 CNN 之卷积层

花书+吴恩达深度学习(十一)卷积神经网络 CNN 之池化层

花书+吴恩达深度学习(十二)卷积神经网络 CNN 之全连接层

花书+吴恩达深度学习(十三)卷积神经网络 CNN 之运算过程(前向传播、反向传播)

花书+吴恩达深度学习(十四)卷积神经网络 CNN 之经典案例(LetNet-5, AlexNet, VGG-16, ResNet, Inception Network)

0. 前言

本篇文章主要介绍一些经典的卷积神经网络。

  • LeNet-5
  • AlexNet
  • VGG-16
  • ResNet
  • Inception Network

1. LeNet-5

LeNet-5 表示一个  层的卷积神经网络,主要作用于灰度图像。

  • 输入层是  的灰度图像
  • 第一层是  的  个过滤器的卷积层,运算结果是 ,加上  的平均池化,运算结果是
  • 第二层是  的  个过滤器的卷积层,运算结果是 , 加上  的平均池化,运算结果是
  • 第三层是  个神经元的全连接层
  • 第四层是  个神经元的全连接层
  • 第五层是  个输出的 softmax 输出层

因论文的发表时间较早,激活函数多采用 sigmoid 或者 tanh 。

如下图所示(图源:吴恩达深度学习):

2. AlexNet

AlexNet 表示一个  层的卷积神经网络,主要作用于彩色图像。

  • 输入层是  的彩色图像
  • 第一层是   的  个过滤器的卷积层,运算结果是 ,加上  的最大池化,运算结果是
  • 第二层是  的  个过滤器的相同卷积,运算结果是 ,加上  的最大池化,运算结果是
  • 第三层是  的  个过滤器的相同卷积,运算结果是
  • 第四层是  的  个过滤器的相同卷积,运算结果是
  • 第五层是  的  个过滤器的相同卷积,运算结果是 ,加上  的最大池化,运算结果是 
  • 第六层是  个神经元的全连接层
  • 第七层是  个神经元的全连接层
  • 第八层是  个输出的 softmax 输出层

激活函数采用 ReLu

如下图所示(图源:吴恩达深度学习):

3. VGG-16

VGG-16 网络是一种专注于构建卷积层的简单架构网络,但是网络很深,总共有 层。

  • 每一个卷积层都是  的相同卷积,每一个池化层都是  的最大池化
  • 输入层是  的彩色图像
  • 第一层至第二层是  个  个过滤器的相同卷积层和最大池化,运算结果是
  • 第三层至第四层是 个过滤器的相同卷积层和最大池化,运算结果是
  • 第五层至第七层是  个  个过滤器的相同卷积层和最大池化,运算结果是
  • 第八层至第十层是  个过滤器的相同卷积层和最大池化,运算结果是
  • 第十一层至第十三层是 个过滤器的相同卷积层和最大池化,运算结果是
  • 第十四层是  个神经元的全连接层
  • 第十五层是 个神经元的全连接层
  • 第十六层是  个输出的 softmax 输出层

如下图所示(图源:吴恩达深度学习):

4. ResNet 残差网络

通常的前向传播是例如:

而残差网络是指这样的网络:

其中,加上的  使得这两层网络构成了一个残差块(residual block)。

这种跳跃几层的连接称为跳远连接(skip connection)或捷径(short cut)。

如下图所示(图源:吴恩达深度学习):

在残差块中, 具有相同的维度,所以才残差网络中多采用相同卷积

如果维度不同,则可采用  。

为什么使用残差网络:

  1. 在神经网络很深的情况下,存在梯度消失或者梯度爆炸的情况,而 ResNet 可以解决这类问题,构建更深的网络

  2. 虽然理论上,网络越深,训练误差会越低,但是实际上,随着网络的加深,训练误差会先降低然后升高。但是在残差网络中,随着网络的加深,训练误差会越来越低

例如,在一个大型网络后方加一个上述的残差块 ,当使用正则化的时候,可能会使得  很小,以至于  ,所以  ,因为采用 ReLU 激活函数,,所以 ,所以更深的网络可能并不会影响梯度的什么问题。

ResNet 通常是几个卷积层加一个池化层,再几个卷积层加一个池化层,最后一个全连接层和一个 softmax 输出层。

ResNet 如下图所示(图源:吴恩达深度学习):

5. Inception Network

Inception 这个名字来源于电影 Inception(盗梦空间),意味着我们要走的更深

Inception Network 可以代替人工决定是否使用卷积层或者池化层,如何构建卷积层过滤器。

对一个输入,同时卷积于几种不同过滤器,或者同时使用相同最大池化,保证输出的维度都是不变的。

然后将每个通道叠加在一起,组成一个新的输出。

如下图所示(图源:吴恩达深度学习):

代价是计算成本提高了。

为了降低计算代价,可以使用  卷积作为瓶颈层先压缩通道数,然后再通过卷积扩大通道数。

单个 Inception 模块如下所示(图源:吴恩达深度学习):

Inception 网络如下所示(图源:吴恩达深度学习):

可在其中加入一些分支,使得中间隐藏层同样也能作为输出进行预测。


如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔~我会非常开心的~

花书+吴恩达深度学习(十四)卷积神经网络 CNN 之经典案例(LetNet-5, AlexNet, VGG-16, ResNet, Inception Network)相关推荐

  1. 花书+吴恩达深度学习(四)多分类 softmax

    目录 0. 前言 1. 二分类 sigmoid 2. 多分类 softmax 3. 多分类 softmax 梯度下降推导 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔~我会非常开心的~ 花书 ...

  2. 花书+吴恩达深度学习(三)反向传播算法 Back Propagation

    目录 0. 前言 1. 从 Logistic Regression 中理解反向传播 2. 两层神经网络中单个样本的反向传播 3. 两层神经网络中多个样本的反向传播 如果这篇文章对你有一点小小的帮助,请 ...

  3. 花书+吴恩达深度学习(二)非线性激活函数(ReLU, maxout, sigmoid, tanh)

    目录 0. 前言 1. ReLU 整流线性单元 2. 绝对值整流线性单元 3. 渗漏整流线性单元 4. 参数化整流线性单元 5. maxout 单元 6. logistic sigmoid 单元 7. ...

  4. 花书+吴恩达深度学习(一)前馈神经网络(多层感知机 MLP)

    目录 0. 前言 1. 每一个神经元的组成 2. 梯度下降改善线性参数 3. 非线性激活函数 4. 输出单元 4.1. 线性单元 4.2. sigmoid 单元 4.3. softmax 单元 5.  ...

  5. 花书+吴恩达深度学习(二十)构建模型策略(超参数调试、监督预训练、无监督预训练)

    目录 0. 前言 1. 学习率衰减 2. 调参策略 3. 贪心监督预训练 4. 贪心逐层无监督预训练 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔~我会非常开心的~ 花书+吴恩达深度学习(十 ...

  6. 花书+吴恩达深度学习(十九)构建模型策略(训练模型顺序、偏差方差、数据集划分、数据不匹配)

    目录 0. 前言 1. 调试模型顺序 2. 偏差方差的解决方法 3. 数据集的选取划分 4. 数据不匹配问题 5. 评估指标的选取 6. 贝叶斯最佳误差 如果这篇文章对你有一点小小的帮助,请给个关注, ...

  7. 花书+吴恩达深度学习(十八)迁移学习和多任务学习

    目录 0. 前言 1. 迁移学习 2. 多任务学习 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔~我会非常开心的~ 花书+吴恩达深度学习(十八)迁移学习和多任务学习 花书+吴恩达深度学习(十 ...

  8. 花书+吴恩达深度学习(十六)序列模型之双向循环网络 BRNN 和深度循环网络 Deep RNN

    目录 0. 前言 1. 双向循环网络 BRNN(Bidirectional RNN) 2. 深度循环网络 Deep RNN 如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔~我会非常开心的~ 花 ...

  9. 花书+吴恩达深度学习(十五)序列模型之循环神经网络 RNN

    目录 0. 前言 1. RNN 计算图 2. RNN 前向传播 3. RNN 反向传播 4. 导师驱动过程(teacher forcing) 5. 不同序列长度的 RNN 如果这篇文章对你有一点小小的 ...

最新文章

  1. The current branch is not configured for pull No value for key branch.master.merge found in config
  2. 使用Spring Cloud Function框架进行面向函数的编程
  3. SSH初体验系列--Hibernate--1--环境配置及demo
  4. PDH光端机的主要作用以及特点有哪些?
  5. 使用lhgDialog窗口组件,关闭窗口刷新父页面
  6. Django自带的用户验证与事务管理的基本概念理解
  7. [python教程入门学习]就业寒冬,从拉勾招聘看Python就业前景
  8. 2021第一波新年(春节)中国风插画设计,为年底储备素材
  9. java io面试题_【Java面试】Java常见IO面试题!
  10. throwable四参构造_深入分析Java反射(四)-动态代理
  11. python自动化六--操作mysql,redis,发送邮件,EXCEL,MD5加密
  12. IBM最新调研表明:大数据等于大回报
  13. ubuntu修改源为阿里云
  14. 安装Spyder IDE
  15. 2016 word 安装6.9b mathtype后,灰色不可用
  16. kafka 中如何保证数据消息不丢失
  17. 打开一个英文文本文件,编写程序读取内容,将其中的小写字母转换为大写,大写字母转化为小写
  18. Efficient single image dehazing and denoising: An efficient multi-scale correlated wavelet approach
  19. 机器学习——从线性回归到逻辑回归【附详细推导和代码】
  20. 网络安全:网络攻击原理与方法.

热门文章

  1. Jetty与Tomcat的区别 转
  2. IOCP扩展方法AcceptEx, DisconnectEx, GetAcceptExSockaddr用法示例
  3. jQuery -gt; end方法的使用方法
  4. Qt学习笔记 信号和槽
  5. IE和火狐读取XML方法比较
  6. Intel开发工具之VTune
  7. VC++6.0安装步骤
  8. BZOJ 2288: 【POJ Challenge】生日礼物 优先队列+贪心+链表
  9. Android 获取静态上下文(Application)
  10. ArcGISTiledMapServiceLayer does not support Multi-Layer Caches