1. 最小化代价函数优化方法:BGD、SGD、MBGD、动量、NAG、Adagrad、AdaDelta、Adam、AMSGrad、牛顿法;

2. 前馈神经网络的隐藏单元不一定在所有的输入点上可微;

3. CNN最大池化能产生一定程度的平移不变性;

4. 向量范数表征向量空间的大小:

1. CNN:LeNet、AlexNet、VGGNet、GoogLeNet、ResNet

2. 数据增强技术:翻转、裁剪、缩放、颜色抖动、平移

3. Batch Size定义:一次训练所选取的样本数。

4. Batch Size影响:影响模型的优化程度和速度。同时其直接影响到GPU内存的使用情况,假如GPU内存不大,该数值最好设置小一点。使得梯度下降方向更加准确

5. 划分训练集、验证集、测试集:训练集:验证集:测试集的划分比例为6:2:2

6. 一阶优化方法:RMSProp

7. 深度学习关系图

1. 什么是深度学习:表达学习、可扩展的机器学习、生物神经网络的近似/粗略实现、人类的监督越来越少、多阶段的特征学习过程、相较于传统模式识别

2. 激活函数分类

1. 合理的稀疏比例:70~80%,屏蔽特征过多容易出现欠拟合。

2. 正则化在深度神经网络训练时的作用

正则化可以很好的解决模型过拟合的问题,常见的正则化方式有L2正则化和dropout,但是正则化是以牺牲模型的拟合能力来达到平衡的,因此在对训练集的拟合中有所损失。

3. L1正则化和L2正则化

L1正则化可以产生稀疏值矩阵,即产生一个稀疏模型,可以用于特征选择和解决过拟合。能够帮助模型找到重要特征,而去掉无用特征或影响甚小的特征。

L2 让所有特征的系数都缩小, 但不会减为0,它会使优化求解稳定快速。所以L2适用于特征之间没有关联的情况。

L2正则化可以防止模型过拟合;一定程度上,L1也可以防止过拟合

4. 激活函数的作用

激活函数给神经元引入了非线性因素,使得神经网络可以任意逼近任何非线性函数,深层神经网络表达能力更强大,可以应用到众多的非线性模型中。

5. Sigmoid函数

特点:它能够把输入的连续实值变换为0和1之间的输出,特别的,如果是非常大的负数,那么输出就是0;如果是非常大的正数,输出就是1.

缺点:在深度神经网络中梯度反向传递时导致梯度爆炸和梯度消失,其中梯度爆炸发生的概率非常小,而梯度消失发生的概率比较大;Sigmoid 的 output 不是0均值;其解析式中含有幂运算,计算机求解时相对来讲比较耗时。

6. Relu函数

特点:解决了gradient vanishing问题 (在正区间);计算速度非常快,只需要判断输入是否大于0;收敛速度远快于sigmoid和tanh

缺点:ReLU的输出不是0均值;某些神经元可能永远不会被激活,导致相应的参数永远不能被更新。

7. AdaGrad算法

AdaGrad算法就是将每一个参数的每一次迭代的梯度取平方累加后在开方,用全局学习率除以这个数,作为学习率的动态更新。

其中,r为梯度累积变量,r的初始值为0。ε为全局学习率,需要自己设置。δ为小常数,为了数值稳定大约设置为10^-7

8. 优化算法的选择

如果输入数据是稀疏的,选择任一自适应学习率算法可能会得到最好的结果。无需调整学习率,选用默认值就可能达到最好的结果。

RMSprop, Adadelta, 和 Adam 非常相似,在相同的情况下表现都很好。

偏置校验让Adam的效果稍微比RMSprop好一点

进行过很好的参数调优的SGD+Momentum算法效果好于Adagrad/Adadelta

如果不知道选择哪种优化算法,就直接选Adam吧

9. 如何判断模型过拟合

模型在验证集合上和训练集合上表现都很好,而在测试集合上变现很差。过拟合即在训练误差很小,而泛化误差很大,因为模型可能过于的复杂,

10. 如何防止过拟合

Dropout:神经网络的每个单元都被赋予在计算中被暂时忽略的概率p,称为丢失率,通常将其默认值设置为0.5。然后,在每次迭代中,根据指定的概率随机选择丢弃的神经元。因此,每次训练会使用较小的神经网络。

提前停止:让模型在训练的差不多的时候就停下来,继续训练带来提升不大或者连续几轮训练都不带来提升的时候,这样可以避免只是改进了训练集的指标但降低了测试集的指标。

批量正则化:将卷积神经网络的每层之间加上将神经元的权重调成标准正态分布的正则化层,可以让每一层的训练都从相似的起点出发,而对权重进行拉伸,等价于对特征进行拉伸,在输入层等价于数据增强。

11. 特征图数

对于单通道图像,若利用10个卷积核进行卷积计算,可以得到10个特征图

若输入为多通道图像,则输出特征图的个数依然是卷积核的个数(10个)

12. 多通道多个卷积核卷积计算:

图片:宽度:32,高度:32,图片的通道数D;

卷积核:大小5*5,处理的图片是D通道,因此卷积核是5*55*D。

卷积层维度变化:不填充,步长为1,输出的矩阵大小为32-5+1=28, 32-5+1=28, D

填充,则分子部分改为:W-F+2*Padding

卷积后的值:D个channel的所有元素对应相乘后求和

池化层维度变化:大小2*2,步长2.因此输出大小为28/2=14,28/2=14,D

参数变化:(((kernel_size)* stride + 1)* filters)

1. 卷积计算过程

可参考21。

此例步长1,且未使用填充,即卷积层维度变化公式:

1.1、输入(8,8,3);4个卷积核(3,3,3,4);卷积后的输出Z0:(6,6,4),Z0的每个输出都是3个channel的所有元素对应相乘后求和;

1.2、 经ReLu激活(6,6,4);

1.3、 若有池化,池化层的计算与卷积层一样规则;

1. BP反向传播算法过程

残差:误差的偏导数

输出层→隐藏层:残差 = -(输出值-样本值) * 激活函数的导数

隐藏层→隐藏层:残差 = (右层每个节点的残差加权求和)* 激活函数的导数

更新权重:

输入层:权重增加 = 输入值 * 右层对应节点的残差 * 学习率

隐藏层:权重增加 = 当前节点的Sigmoid * 右层对应节点的残差 * 学习率

偏移值:权重增加 = 右层对应节点的残差 * 学习率

学习率:一个预先设置好的参数,用于控制每次更新的幅度。

1. 一个矢量化的例子:

1. 几个BP例子

深度学习基础知识点归纳总结相关推荐

  1. 深度学习基础知识点【更新中】

    深度学习基础知识点 文章目录 深度学习基础知识点 1. 数据归一化 2. 数据集划分 3. 混淆矩阵 4. 模型文件 5. 权重矩阵初始化 6. 激活函数 7. 模型拟合 8. 卷积操作 9. 池化操 ...

  2. 深度学习基础知识每日更 upupup

    深度学习基础知识点总结 提示:菜鸟入门日记,若总结有错误,各路大佬多多指教! 文章目录 深度学习基础知识点总结 Looking for my friends 一.零散知识点 1.网络拼接和相加的区别 ...

  3. 深度估计相关原理(计算机视觉和深度学习基础)

    今天来和大家介绍一下深度估计涉及到的理论知识点,包括计算机视觉基础和深度学习基础. 一.计算机视觉基础 1.1. 针孔相机模型 相机模型,是指采用一个几何模型来描述三维世界中的坐标点映射到二维图像平面 ...

  4. 第三章_深度学习基础

    文章目录 第三章 深度学习基础 3.1 基本概念 3.1.1 神经网络组成? 3.1.2神经网络有哪些常用模型结构? 3.1.3如何选择深度学习开发平台? 3.1.4为什么使用深层表示? 3.1.5为 ...

  5. 五万字总结,深度学习基础。

    文章目录 1 基本概念 1.1 神经网络组成? 1.2 神经网络有哪些常用模型结构? 1.3 如何选择深度学习开发平台? 1.4 为什么深层神经网络难以训练? 1.5 深度学习和机器学习的异同? 2 ...

  6. 《机器学习系列教程》第三章 深度学习基础

    @[第三章 深度学习基础] 第三章 深度学习基础 3.1 基本概念 3.1.1 神经网络组成? 为了描述神经网络,我们先从最简单的神经网络说起. 感知机 简单的感知机如下图所示: [外链图片转存失败( ...

  7. 第1节--深度学习基础介绍-机器学习--课程介绍(上)

    本课程为麦子学院彭亮老师讲授的(深度学习基础介绍-机器学习),共28小节. 彭亮在麦子学院还有两门课,一门是Python语言编程基础,另一门是深度学习进阶:算法与应用. 建议三门课的学习顺序为:Pyt ...

  8. 计算机办公基础知识点归纳,计算机基础知识点归纳 (1).doc

    计算机基础知识点归纳 第一章 第五代计算机(新一代计算机) :生物计算机 量子计算机 光计算机 创新:基本元器件 计算机的发展趋势 巨型化 网络化 微型化 智能化 (功能巨型化 (资源网络化) (体积 ...

  9. 资源 | Intel发布AI免费系列课程3部曲:机器学习基础、深度学习基础以及TensorFlow基础

    翻译 | AI科技大本营(公众号ID:rgznai100) 校对 | 成龙 编辑 | 明明 Intel于近期发布了三门AI系列的免费课程,分别是关于机器学习基础.深度学习基础.TensorFlow基础 ...

最新文章

  1. 网上几种常见校验码图片分析
  2. 【Linux 内核】Linux 内核源码目录说明 ③ ( lib 目录 | LICENSES 目录 | mm 目录 | net 目录 | samples 目录 | scripts 目录 )
  3. QA:智能布线系统二十问
  4. c语言试卷浙江理工大学杀人案件追踪,浙江理工大学c语言期末考试模拟试卷6 .pdf...
  5. 操作12864(ST7920控制器)
  6. Log4net数据表
  7. 结合netstat和awk命令来统计网络连接数
  8. poj 2983 Is the Information Reliable?
  9. linux ftp使用相关
  10. django开源电子文档管理系统_基于 Python 开发的在线文档系统
  11. 应用神经网络相关pre-processing(预处理 )
  12. CAS单点登录(SSO)
  13. 用java异或的方式去实现简单的视频加密
  14. MySQL约束和表的复杂查询操作
  15. 快捷餐饮之店家后台评论管理及餐桌管理实现
  16. OC字符串分割,截取,转换,拼接
  17. 读书笔记 | 6.1 金融欺诈概述
  18. Ubuntu下的录屏工具Kazam和SimpleScreenRecorder, Peek
  19. ROS参数服务器(参数使用详细介绍)
  20. WPF实现可视化控件打印及打印预览

热门文章

  1. java代码绘制简单的图形
  2. VS2019使用EasyX实现简单图形界面功能
  3. JAVA-关于计算器的简单图形界面设计例子(不实现功能)
  4. 恋爱日记、告白、表白、纪念、情侣、表白墙源码。
  5. mac shell 清理缓存-如微信mac清理微信缓存
  6. 2022年全球与中国湿钽电容器行业发展趋势及投资战略分析报告
  7. 关于DC-DC电源的总体概述
  8. 【云原生】在 React Native 中使用 AWS Textract 实现文本提取
  9. 我的世界 服务器文件ess,我的世界指令大全 ess指令用法介绍
  10. 后向重计算在OneFlow中的实现:以时间换空间,大幅降低显存占用