高级优化器

目录

1.Momentum(动量)

2.自适应学习率

3.Adam和AdamW


神经网络的基础优化算法是随机梯度下降 (SGD)。SGD是一种迭代型的算法,在训练开始的时候,模型参数被随机初始化,记为,然后依次更新为。在每个迭代时刻t,随机从训练集中选择一小批样本计算损失函数,以及参数的梯度:

则参数更新的公式为:

基础的SGD算法容易遇到以下问题:

(1)训练被卡在不理想的梯度为0的点 (全局极小点或鞍点)。虽然随机梯度下降具有一定的逃离能力,但当微批的大小较大 (为了提高训练效率) 或者"平原"的范围较大时,训练仍然有可能被卡在不理想的优化点。

(2)不同参数方向上的梯度幅度可能相差较大,梯度大的参数可能会来回振荡,而梯度小的参数迭代速度又过慢。

1.Momentum(动量)

带动量的SGD,不仅会利用当前时刻的梯度,同时会用到历史梯度信息:

其中,为梯度,。则参数更新的公式为:

可以按时刻逐步展开一下动量的计算公式:

......

ps:

动量的效果类似给梯度增加了"惯性",梯度较大但是来回振荡的方向会互相抵消,从而加速收敛。

在同一圈的loss一样,越往中心loss越小。

同时,动量的累积效果可以得优化过程在损失函数的平坦区域或局部极小点附近能够"冲过"这些区域,从而找到更好的极小值点。

2.自适应学习率

在优化过程中,不同的参数方向上所需要的学习率可能会有所不同:

(1)由于神经网络的稀疏性,每个参数被激活 (即对应的输入不为零) 的频率不同,因此激活频率低的参数方向需要较大的学习率以加快收敛。

(2)即使进行了数据归一化,不同参数方向上梯度的幅度仍然存在差异。梯度幅度大的方向需要较小的学习率以防止振荡甚至发散,梯度幅度小的方向需要较大的学习率以加快收敛。

参数更新的公式如下:

3.Adam和AdamW

Adam优化算法集成了动量和自适应学习率,算法如下:

在Adam算法中,L2正则项的梯度是直接计入在中的 (权重为),也被包含在一阶矩 ()和二阶矩 ()的计算中。但在一些训练任务中(例如BERT微调),这种做法的效果不好,此时应该使用如下的AdamW算法:

此时在梯度中没有计入L2正则项的影响,因此对于一阶矩和二阶矩的计算没有影响,只是在参数更新的时候加入了weight decay的影响。

Adam和AdamW优化器的PyTorch文档链接如下:

Adam --- PyTorch 2.13 documentationhttps://docs.pytorch.org/docs/2.13/generated/torch.optim.Adam.html#torch.optim.AdamAdamW --- PyTorch 2.13 documentationhttps://docs.pytorch.org/docs/2.13/generated/torch.optim.AdamW.html#torch.optim.AdamW在模型训练中,绝大部分时候使用的都是AdamW优化器,一般情况下使用默认的超参数即可达到理想的效果。

👇尝试一下在MNIST实验中使用Adam/AdamW优化器,观察不同优化器对于收敛速度和优化结果的影响。

相关推荐
Land03291 小时前
AI网页元素变化无法自动修复?自带元素自愈的自动化解决方案
运维·人工智能·ai·自动化·rpa
Kobebryant-Manba1 小时前
Bert预训练代码
人工智能·深度学习·bert
在水一缸1 小时前
深度解析 Grok 4.5:当推理模型遇上大规模工程实践
人工智能·深度学习·大模型·工程实践·推理模型·混合专家架构·grok 4.5
云智慧AIOps社区1 小时前
2026 国产化 ITSM 替代指南:横向测评 ServiceNow、轻帆云、Jira等五款主流IT服务管理平台
运维·人工智能·运维开发·it服务管理·itsm平台
学习日记5251 小时前
【提示词工程系统教程 05】上下文工程:静态指令、动态检索与RAG架构
人工智能·prompt
腻害兔1 小时前
【若依项目-产品经理视角】RuoYi-Vue-Pro 源码拆解:ERP 企业资源模块,一个轻量级进销存的完整实现?
前端·javascript·vue.js·人工智能·前端框架·产品经理·ai编程
小羊Yveesss1 小时前
模板建站哪个平台好?模板数量之外还要比较编辑与SEO能力
大数据·人工智能·小程序
程序员-李俞1 小时前
向量引擎接入 SQL 问答沙箱前:只读权限、Base URL 和费用封顶怎么验收
人工智能·大模型·接口测试·api中转·ai api
梦想的初衷~1 小时前
植被遥感反演与数据同化算法体系教程:从PROSAIL前向模拟到作物估产
人工智能·python·机器学习·作物模型·遥感数据同化·prosail·植被参数反演