IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 深度学习--优化器 -> 正文阅读

[人工智能]深度学习--优化器


前言

优化器是引导神经网络更新参数的工具,深度学习在计算出损失函数之后,需要利用优化器来进行反向传播,完成网络参数的更新。在这个过程中,便会使用到优化器,优化器可以利用计算机数值计算的方法来获取损失函数最小的网络参数。在深度学习中,不同的优化器只是定义了不同的一阶动量和二阶动量,一阶动量是与梯度相关的函数,二阶动量是与梯度平方相关的函数。常用的优化器主要有随机梯度下降法、Momentum、AdaGrad、RMSProp和Adam优化器。
神经网络利用优化器来更新网络参数步骤如下:
1 计算当前时刻t损失函数关于网络参数w的梯度
在这里插入图片描述2 计算当前时刻t一阶动量mt和二阶动量Vt
3 计算当前时刻t下降梯度
在这里插入图片描述
4 计算下一时刻t+1参数
在这里插入图片描述


1 随机梯度下降法

目前,神经网络最常用的为随机梯度下降(Stochastic Gradient Descent,SGD),其基本思想是将数据分成n个样本,通过计算各自梯度的平均值来更新梯度,即对网络参数w更新过程中不需要全部遍历整个样本,而是只看一个训练样本(batch size)使用梯度下降进行更新,然后利用下一个样本进行下一次更新。
SGD简单且容易实现,解决了随机小批量样本的问题,由于只对一个训练样本进行梯度下降,可以提高网络参数的更新速度;但其训练时下降速度慢、准确率下降、容易陷入局部最优以及不容易实现并行处理等问题。
在这里插入图片描述

2 Momentum

SGD训练时仍然存在着收敛速度慢,容易陷入局部最优解的问题。Momentum则是通过引入动量的方式来加快学习过程,主要思想是积累之前梯度指数级衰减的移动平均。
SGD每次都会在当前位置沿梯度负方向更新,不会考虑先前的梯度方向及大小;Momentum则是通过引入一个新的变量v去积累之前的梯度,从来可以加速网络的学习过程,也就是说如果当前时刻的梯度方向与之前时刻累计的梯度方向一致,那么梯度会加强,梯度下降的幅度更大,反之,梯度下降的幅度会降低。
在这里插入图片描述

3 AdaGrad

针对SGD与Momentum存在的问题,AdaGrad(Adaptive Gradient)是在SGD基础上引入二阶动量,能够对不同的参数使用不同的学习率进行更新,对于梯度较大的参数,那么学习率就会变得较小;而对于梯度较小的参数,那么学习率就会变得较大,这样就会使在陡峭的区域下降速度快,平缓的区域下降速度慢。
由公式可以看出,二阶动量Vt表示累计梯度的平方,一段时间后,Vt就会非常大,导致学习率变得非常小,设置会导致梯度消失的问题。
在这里插入图片描述

4 RMSProp

RMSProp是对AdaGrad的一个扩展,在非凸情况下效果更好。RMSProp在SGD的基础上增加了二阶动量,二阶动量Vt使用指数滑动平均值计算来调节学习率,代表过去一段时间的平均值。能够在目标函数不稳定的情况下很好的收敛,且能够快速收敛。RMSProp能够避免梯度快速降低的问题,学习率自适应能力较强,且能够在目标函数不稳定的情况下快速的收敛,比上述三种优化器表现都好。
在这里插入图片描述

5 Adam

Adam是将Momentum与RMSProp结合起来的一种算法,引入了Momentum的一阶动量来累计梯度与RMSProp的二阶动量可以使得收敛速度快的同时使得波动幅度小,然后在此基础上增加了两个修正项,能够实现参数自新。
Adam优化器具有以下优点:

  1. 实现简单,计算高效,对内存需求少
  2. 参数的更新不受梯度的伸缩变换影响
  3. 超参数具有很好的解释性,且通常无需调整或仅需很少的微调
  4. 更新的步长能够被限制在大致的范围内(初始学习率)
  5. 能自然地实现步长退火过程(自动调整学习率)
  6. 很适合应用于大规模的数据及参数的场景
  7. 适用于不稳定目标函数
  8. 适用于梯度稀疏或梯度存在很大噪声的问题
    在这里插入图片描述
    参考链接:
    https://www.bilibili.com/video/BV1Cg4y1q7Xq?p=14
    https://zhuanlan.zhihu.com/p/445399053
  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-05-18 17:38:31  更:2022-05-18 17:40:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 4:47:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码