当前位置: 首页 > ds >正文

CAU人工智能class3 优化器

优化算法框架

在这里插入图片描述

优化思路

随机梯度下降

在这里插入图片描述
随机梯度下降到缺点:
SGD 每一次迭代计算 mini-batch 的梯度,然后对参数进行更新,每次迭代更新使用的梯度都只与本次迭代的样本有关。

  • 因为每个批次的数据含有抽样误差,每次更新可能并不会
    按照正确的方向进行,因此可能带来优化波动(扰动)
  • SGD 最大的缺点是下降速度慢,而且可能会在沟壑的两
    边持续震荡,停留在一个局部最优点

弥补方法

动量(SGD with Momentum)

在这里插入图片描述
当到达左边的最低点时,会在这个低谷来回震荡而无法继续优化函数。
如果增加一个动量就能帮助函数越过低谷继续优化。
原理:
在这里插入图片描述
这使得参数更新的更加平缓,不会有突然发生巨变的情况,有助于避免震荡。

自适应梯度下降(AdaGrad: Adaptive Gradient)

这是一种利用概率统计的方法动态调整学习率大小从而避免优化时来回震荡的方法。
当距离最优解较远时,期望参数更新的步长(学习率 𝛼 )大一些,以便更快收敛到最优解。反之步长减小。

自适应运动(矩)估计(Adam: adaptive moment estimation)

Adam: 融合 Momentum 和 AdaGrad 的思想优化算法,广泛用于深度学习应用中,尤其是计算机视觉和自然语言处理等任务。
Adam 涉及一阶矩和二阶矩

  • 一阶矩:一阶矩 𝑚𝑡 是梯度的指数移动平均,即对过去梯度的加权平均,类似于Momentum方法
    公式如下:𝑚𝑡 = 𝛽1 ∙ 𝑚𝑡−1 + (1 − 𝛽) ∙ 𝑔𝑡
    其中 𝛽1 是一阶矩的平滑因子(通常设置为 0.9 ), 𝑔𝑡 在第 𝑡 次迭代时计算得到的梯度向量
  • 二阶矩 (梯度平方的均值):即历史梯度平方与当前梯度平方的加权平均,类似AdaGrad 方法,体现了环境感知能力,为不同参数产生自适应的学习速率
    公式如下:𝑣𝑡 = 𝛽2 ∙ 𝑣𝑡−1 + (1 − 𝛽2) ∙ 𝑔𝑡
    其中 𝛽2 是二阶矩的平滑因子(通常设置为 0.999 ), 𝑔𝑡 在第 𝑡 次迭代时计算
    得到的梯度向量,二阶矩在这里的作用是捕捉梯度的波动情况,用于自适应地调整学习率。
    修正偏差
    由于初始时刻 m
0
​
=0、v
0
​
=0,早期估计会偏向零。因此需要修正:

参数更新
在这里插入图片描述
这几种方法均可以在模型中直接调用使用,具体不展开。

http://www.xdnf.cn/news/7970.html

相关文章:

  • Python MD5加密算法脚本
  • Java线程池调优与实践经验
  • JavaScript-DOM-02
  • DS18B20 温度传感器实验探索与实践分享​
  • 深度学习Y8周:yolov8.yaml文件解读
  • Leetcode-3 判断根结点是否等于子结点之和
  • Universal Media Server (UMS)部署指南
  • HTTP相关内容
  • 【Java高阶面经:数据库篇】12. MySQL锁机制全解:从行锁到死锁优化的深度指南
  • 十七、面向对象底层逻辑-MessageSource接口设计
  • 鸿蒙开发:应用上架第二篇,申请发布证书
  • CSS 链接样式全解析:从基础状态到高级交互效果
  • Docker的网络介绍
  • canvas(二)-动画(2d)
  • 人工智能解析:技术革命下的认知重构
  • 贪心算法 Part04
  • 【VLNs篇】03:VLMnav-端到端导航与视觉语言模型:将空间推理转化为问答
  • Dirsearch 深度使用教程:从基础扫描到携带 Cookie 探索网站
  • Oracle审计用户登录信息
  • TCP全连接和tcpdump抓包实现
  • Gradle下载安装及配置
  • AI就是个fw
  • 流式优先架构:彻底改变实时数据处理
  • AI加速芯片全景图:主流架构和应用场景详解
  • 49、c# 能⽤foreach 遍历访问的对象需满足什么条件?
  • Python爬虫实战:获取小说网最新风云榜数据并分析,为创作者提供参考素材
  • QMK固件RGB矩阵照明功能详解 - 打造你的专属炫彩键盘
  • 人工智能范式:技术革命下的认知重构
  • 分类预测 | Matlab实现PSO-RF粒子群算法优化随机森林多特征分类预测
  • AI 与 IT 从业者:风暴之眼中的共存与进化