SIGAI深度学习第九集 卷积神经网络3
讲授卷积神经网络面临的挑战包括梯度消失、退化问题,和改进方法包括卷积层、池化层的改进、激活函数、损失函数、网络结构的改 进、残差网络、全卷机网络、多尺度融合、批量归一化等
大纲:
面临的挑战
梯度消失问题
退化问题
改进的总体思路
卷积层的改进
用矩阵乘法实现卷积运算
池化层的改进
激活函数的改进
损失函数的改进
高速公路网络
残差网络
残差网络的分析
全卷积网络
多尺度连接
批量归一化
本集总结
面临的挑战:
卷积神经网络尤其是深度卷积神经网络面临的挑战:
梯度消失问题,全连接神经网络(也叫人工神经网络ANN、多层感知器模型HLP)也提到了,BP传播时要用到f'(x),如果f'(x)<0,会越乘越小,最终梯度趋向于0,那么参数就没法更新了。
退化问题,指网络比较浅的时候,只要样本数量足够多,增加网络层数网络的精度会上升,但是要是网络达到一定层数时再增加层数网络的精度反而会下降。
过拟合问题,深度卷积神经网络一般层数比较多,宽度也比较大,每次神经元和卷积核数量也比较大,这样很容易产生过拟合问题。
计算和存储效率问题,过了追求网络精度,人们把网络做的越来越复杂,深度非常大宽度也很大,网络规模大了之后,不仅算的很慢因为运算的次数会增加,而且很占用存储空间,这样就会限制它的实际的使用。
改进的措施:
卷积层
池化层
激活函数
损失函数
网络结构
梯度消失问题:
深层网络难以训练,主要原因是梯度消失问题
X. Glorot, Y. Bengio. Understanding the difficulty of training deep feedforward neural networks. AISTATS, 2010
在实验中,分别训练了有1到5个隐含层的神经网络,激活函数使用了sigmoid,tanh等
实验结果证明,随着网络层数的增加,反向传播的作用越来越小,网络更加难以训练
激活函数的输入值容易落入饱和区间,导致过拟合
Layer4是第一个隐含层,Layer1是第四个隐含层。
退化问题:
增加网络的层数可以提高网络的精度,但增加到一定程度之后,随着层次的增加,神经网络的训练误差和测
试误差会增大,这个问题称为退化 - 类似维数灾难
退化问题与过拟合不同,过拟合是在测试集上精度差,而退化是在训练集和测试集上精度都下降
改进的总体思路:
改进的目标是网络的精度更高、运行的速度更快。
卷积层
池化层
激活函数
损失函数
网络结构
数据归一化
卷积层的改进:
SIGAI深度学习第九集 卷积神经网络3的更多相关文章
- SIGAI深度学习第二集 人工神经网络1
讲授神经网络的思想起源.神经元原理.神经网络的结构和本质.正向传播算法.链式求导及反向传播算法.神经网络怎么用于实际问题等 课程大纲: 神经网络的思想起源 神经元的原理 神经网络结构 正向传播算法 怎 ...
- SIGAI深度学习第一集 机器学习与数学基础知识
SIGAI深度学习课程: 本课程全面.系统.深入的讲解深度学习技术.包括深度学习算法的起源与发展历史,自动编码器,受限玻尔兹曼机,卷积神经网络,循环神经网络,生成对抗网络,深度强化学习,以及各种算法的 ...
- 【深度学习系列】卷积神经网络CNN原理详解(一)——基本原理
上篇文章我们给出了用paddlepaddle来做手写数字识别的示例,并对网络结构进行到了调整,提高了识别的精度.有的同学表示不是很理解原理,为什么传统的机器学习算法,简单的神经网络(如多层感知机)都可 ...
- 深度学习笔记 (一) 卷积神经网络基础 (Foundation of Convolutional Neural Networks)
一.卷积 卷积神经网络(Convolutional Neural Networks)是一种在空间上共享参数的神经网络.使用数层卷积,而不是数层的矩阵相乘.在图像的处理过程中,每一张图片都可以看成一张“ ...
- 深度学习项目——基于卷积神经网络(CNN)的人脸在线识别系统
基于卷积神经网络(CNN)的人脸在线识别系统 本设计研究人脸识别技术,基于卷积神经网络构建了一套人脸在线检测识别系统,系统将由以下几个部分构成: 制作人脸数据集.CNN神经网络模型训练.人脸检测.人脸 ...
- Hinton“深度学习之父”和“神经网络先驱”,新论文Capsule将推翻自己积累了30年的学术成果时
Hinton“深度学习之父”和“神经网络先驱”,新论文Capsule将推翻自己积累了30年的学术成果时 在论文中,Capsule被Hinton大神定义为这样一组神经元:其活动向量所表示的是特定实体类型 ...
- CNN学习笔记:卷积神经网络
CNN学习笔记:卷积神经网络 卷积神经网络 基本结构 卷积神经网络是一种层次模型,其输入是原始数据,如RGB图像.音频等.卷积神经网络通过卷积(convolution)操作.汇合(pooling)操作 ...
- Pytorch_第六篇_深度学习 (DeepLearning) 基础 [2]---神经网络常用的损失函数
深度学习 (DeepLearning) 基础 [2]---神经网络常用的损失函数 Introduce 在上一篇"深度学习 (DeepLearning) 基础 [1]---监督学习和无监督学习 ...
- SIGAI深度学习第八集 卷积神经网络2
讲授Lenet.Alexnet.VGGNet.GoogLeNet等经典的卷积神经网络.Inception模块.小尺度卷积核.1x1卷积核.使用反卷积实现卷积层可视化等. 大纲: LeNet网络 Ale ...
随机推荐
- [DEBUG] Springboot打包jar/war后访问包外的路径
======================================================== 我是Ruriko,我爱这个世界:)
- python Django基础操作
Django常用命令 创建Django项目 Django-admin startprotect mysite 创建项目以后,以下生成的文件 最外层的file:mysite/ 根目录只是你的项目的容器 ...
- 1269: 划分数(Java)
WUSTOJ 1269: 划分数 参考博客 果7的博客 题目 将 1 个数 n 分成 m 份,求划分的种数.更多内容点击标题. 分析 唯一需要注意的地方是不考虑顺序.其他的直接看代码即可. 代 ...
- windows通过gcc编译代码
1.将gcc添加到环境变量 2.检查gcc是否安装成功 cmd下输入gcc –v 3.cd进入需要编译源文件的目录 4.dir查看当前目录下是否有需要编译的文件(linux下用ls) 5.编译文件(H ...
- Composer安装yii2-imagine 压缩,剪切,旋转,水印
安装:composer require --prefer-dist yiisoft/yii2-imagine 查看是否安装成功, 安装了两个目录分别是 vendor/imagine vendor/yi ...
- Qt中容器类应该如何存储对象(最好使用对象指针类型,如:QList<TestObj*>,而不要使用 QList<TestObj> 这样的定义,建议采用 智能指针QSharedPointer)
Qt提供了丰富的容器类型,如:QList.QVector.QMap等等.详细的使用方法可以参考官方文档,网上也有很多示例文章,不过大部分文章的举例都是使用基础类型:如int.QString等.如果我们 ...
- Python操作Redis(转)
原文1:https://cloud.tencent.com/developer/article/1151834 原文2:https://www.cnblogs.com/zhaohuhu/p/91406 ...
- hdu 2844 多重背包的转化问题 以及这个dp状态的确定
在杭电上测试了下 这里的状态转移方程有两个.,. 现在有价值val[1],val[2],…val[n]的n种硬币, 它们的数量分别为num[i]个. 然后给你一个m, 问你区间[1,m]内的所有数目, ...
- C#基础--AbStract与Interface
Interface: 接口方法不能用public abstract等修饰.接口内不能有字段变量,构造函数. 接口内可以定义属性,如string color{get;set;}这种. 实现接口 ...
- C#通过重载构造函数传递参数、实现两个窗体下的方法的互相调用
直接切入主题 有时候同一个项目下我们可能会使用多个窗体,窗体间方法互相调用也不可避免,好了,使用无参无返回值的方法,开始上图 1.新建一个winform项目Form1,并再添加一个窗体Form2:拖入 ...