深度学习基础—学习率衰减与局部最优问题

1.学习率衰减

下图中,蓝色的线是min-batch梯度下降法过程中较大学习率的的优化路径,绿线是较小学习率的优化路径。

如果使用min-batch梯度下降法,在模型的学习过程中,会有很多噪声,在靠近最小值的时候,由于学习率a不变,因此最终算法在最小值附近摆动。要解决这个问题,就需要减少学习率a,让靠近最小值的过程中,模型的步长小一点,这就需要学习率衰减来解决。

一个训练集被拆成多个min-batch,对一个训练集训练一遍成为1epoch,我们有如下相关的学习率衰减公式:

其中,decay_rate是衰减率,epoch_num是训练的代数,a0是初始学习率,k是小于1的参数。这些做法都可以让学习率随着训练代数的增加,逐渐衰减,从而让模型更加接近最小值。

2.局部最优问题

接下来看看局部最优问题,如下图所示,蓝点是局部最优解,红点是全局最优解。局部最优和全局最优都是梯度为0的点,也就是所有维度都是凹函数。

下图是鞍点,鞍点是部分维度为凸函数,部分维度为凹函数的点,该点的梯度也为0。

实际的神经网络中,尤其是大模型,参数非常多,损失函数的图像在高维空间难以画出,运行过程中,遇到的梯度为0的点很难是局部最优点(这需要所有维度都是凹函数,概率极低)。最容易遇到的是鞍点,遇到鞍点是让人头疼的问题:

因为马鞍面有一部分很平缓,这部分的梯度很小,使用梯度下降法时会经过很长时间才能走到鞍点附近,在鞍点附近扰动,直到找到梯度更大的方向,梯度下降法才能有更深的进展。这个平稳段需要更好的优化算法来加速训练,Adam算法就是很成熟的优化算法,可以帮助我们加速走出平稳段和鞍点,从而搜索到全局最优。

相关推荐
Codebee5 小时前
能力中心 (Agent SkillCenter):开启AI技能管理新时代
人工智能
聆风吟º5 小时前
CANN runtime 全链路拆解:AI 异构计算运行时的任务管理与功能适配技术路径
人工智能·深度学习·神经网络·cann
uesowys6 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
AI_56786 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
User_芊芊君子6 小时前
CANN大模型推理加速引擎ascend-transformer-boost深度解析:毫秒级响应的Transformer优化方案
人工智能·深度学习·transformer
执笔论英雄6 小时前
【大模型学习cuda】入们第一个例子-向量和
学习
wdfk_prog6 小时前
[Linux]学习笔记系列 -- [drivers][input]input
linux·笔记·学习
智驱力人工智能6 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
qq_160144876 小时前
亲测!2026年零基础学AI的入门干货,新手照做就能上手
人工智能
Howie Zphile6 小时前
全面预算管理难以落地的核心真相:“完美模型幻觉”的认知误区
人工智能·全面预算