分享好友 最新动态首页 最新动态分类 切换频道
1、深度学习基础之优化算法、激活函数
2024-12-27 05:37
  1. 标准梯度下降法(GD, Gradient Descent)

  2. 随机梯度下降法(SGD, Stochastic Gradient Descent)

  3. 批量梯度下降法(BGD, Batch Gradient Descent)

  4. Mini-batch gradient descent( mini-batch gradient descent, MBGD

Nesterov 动量随机下降法(NAG ,英文全称是 Nesterov Accelerated Gradient,或者叫做 Nesterov Momentum 。

Nesterov 动量随机梯度下降方法是在上述动量梯度下降法更新梯度时加入对当前梯度的校正,简单解释就是往标准动量方法中添加了一个校正因子。

有利于跳出当前局部最优的沟壑,寻找新的最优值,但收敛速度慢

AdaGrad 法根据训练轮数的不同,对学习率进行了动态调整。具体表现在,对低频出现的参数进行大的更新(快速下降的学习率,对高频出现的参数进行小的更新(相对较小的下降学习率)。因此,他很适合于处理稀疏数据。

RMSProp(Root Mean Square Prop,均方根反向传播。

RMSProp算法使⽤了小批量随机梯度按元素平⽅的指数加权移动平均来调整学习率。

AdaDelta 法也是对 AdaGrad 法的一种改进,它旨在解决深度模型训练后期,学习率过小问题。相比计算之前所有梯度值的平方和,AdaDelta 法仅计算在一个大小为 �w 的时间区间内梯度值的累积和。

是另一种学习率自适应的优化算法,相当于 RMSProp + Momentum 的效果,即动量项的 RMSprop 算法。

Adam 算法在 RMSProp 算法基础上对小批量随机梯度也做了指数加权移动平均。和 AdaGrad 算法、RMSProp 算法以及 AdaDelta 算法一样,目标函数自变量中每个元素都分别拥有自己的学习率。

Adam 总结:由于 Adam 继承了 RMSProp 的传统,所以学习率同样不宜设置太高,初始学习率设置为 0.01 时比较理想。

把一阶动量和二阶动量都用起来,就是Adam了Adaptive + Momentum。

优点

  • 通过一阶动量和二阶动量,有效控制学习率步长和梯度方向,防止梯度的振荡和在鞍点的静止。

  • 超参数具有很好的解释性,且通常无需调整或仅需很少的微调。

缺点

  • 可能不收敛。

  • 可能错过全局最优解:自适应学习率算法可能会对前期出现的特征过拟合,后期才出现的特征很难纠正前期的拟合效果。后期Adam的学习率太低,影响了有效的收敛

AdamW(Adam with Weight Decay)是GPT-4及其前身GPT-3主要使用的优化算法。AdamW是Adam优化器的改进版本,结合了L2正则化(权重衰减,用于防止过拟合并提高模型的泛化能力。

  • Adam:Adam优化器通过计算梯度的一阶和二阶动量的指数加权平均来调整每个参数的学习率。它在处理稀疏梯度和非平稳目标时表现良好。

  • Weight Decay:在AdamW中,权重衰减项是直接添加到参数更新公式中,而不是像L2正则化那样仅影响梯度。这种方法更有效地防止过拟合。

AdamW本质上就是在损失函数里面加入了L2正则项,然后计算梯度和更新参数的时候都需要考虑这个正则项。

在训练大模型(如GPT-3和GPT-4)时,使用AdamW而不是Adam主要是为了更好地控制权重衰减的效果,提高模型的泛化能力和稳定性。具体来说,AdamW和Adam的主要区别在于如何处理权重衰减(L2正则化)。以下是使用AdamW而不是Adam的一些关键原因

1. 权重衰减的实现方式不同

  • Adam:在Adam优化器中,权重衰减(通常通过L2正则化实现)是通过将L2正则化项添加到损失函数中,然后计算损失的梯度。这会导致正则化项影响梯度的计算。

  • AdamW:在AdamW优化器中,权重衰减是直接应用于权重更新步骤,而不是通过损失函数。这意味着权重衰减不会影响梯度计算,而是通过在每次参数更新时直接减去一个与当前权重值成比例的项来实现。

2. 更好的训练稳定性和泛化能力

  • 更好的泛化能力:AdamW中的直接权重衰减方法可以更有效地防止过拟合,因为它明确地分离了梯度更新和权重衰减过程。这使得模型在训练过程中能够更好地找到泛化能力强的参数组合。

  • 训练稳定性:在Adam中,由于正则化项被包含在损失函数的梯度计算中,这可能导致梯度的更新方向受到干扰,从而影响训练的稳定性。而AdamW中的权重衰减不会影响梯度的方向,只是在每次更新时进行一个简单的减法操作,使得训练过程更稳定。

3. 简化超参数调节

在Adam中,由于L2正则化是通过损失函数实现的,调整正则化强度时需要仔细调节学习率和正则化参数的相对比例。而在AdamW中,权重衰减的强度是独立于学习率的,简化了超参数调节过程。

4. 实践中的经验和实验结果

多项研究和实践经验表明,AdamW在训练深度神经网络(特别是大规模语言模型)时,比传统的Adam优化器表现更好。例如,AdamW在大模型训练中显示出更好的泛化性能和更低的验证误差,这也是为什么现代大模型(如GPT-4)选择使用AdamW而不是Adam的原因之一。

总结

在Adam优化器中,权重衰减通常通过在损失函数中添加正则化项来实现。这意味着正则化项会影响梯度的计算。而在AdamW(Adam with Weight Decay)中,权重衰减是通过直接在参数更新步骤中减去权重的一部分来实现的,而不影响梯度计算。

使用AdamW而不是Adam的主要原因在于其改进的权重衰减机制,这种机制能够提高训练的稳定性和模型的泛化能力,同时简化了超参数的调节过程。这些优势使得AdamW在大规模深度学习模型的训练中表现更为优越,因此被广泛采用,包括在GPT-4的训练过程中。

神经网络的过拟合怎么防止

  1. 获取更多的训练数据,数据增强

  2. 减小网络容量,降低模型复杂程度

  3. 添加权重正则化

  4. 添加dropout

  5. 提前终止训练

  6. 模型截枝,去除模型中不重要的权重或神经元的方法,简化模型

1、Sigmoid函数

2、Tanh/双曲正切激活函数

3、 ReLU激活函数

  • 当输入为正时,导数为1,一定程度上改善了梯度消失问题,加速梯度下降的收敛速度

  • 计算速度快得多。ReLU 函数中只存在线性关系,因此它的计算速度比 sigmoid 和 tanh 更快。

  • 被认为具有生物学合理性(Biological Plausibility),比如单侧抑制、宽兴奋边界(即兴奋程度可以非常高

4、Leaky ReLU

为了解决 ReLU 激活函数中的梯度消失问题,当 x < 0 时。

为什么使用Leaky ReLU会比ReLU效果要好呢

  • Leaky ReLU 通过把 x 的非常小的线性分量给予负输入(0.01x)来调整负值的零梯度(zero gradients)问题,当 x < 0 时,它得到 0.1 的正梯度。该函数一定程度上缓解了 dead ReLU 问题

  • leak 有助于扩大 ReLU 函数的范围,通常 a 的值为 0.01 左右

  • Leaky ReLU 的函数范围是(负无穷到正无穷

5、Parametric ReLU激活函数

6、ELU激活函数

与 ReLU 相比,ELU 有负值,这会使激活的平均值接近零。均值激活接近于零可以使学习更快,因为它们使梯度更接近自然梯度。 函数表达式为

  • 没有 Dead ReLU 问题,输出的平均值接近 0,以 0 为中心

  • ELU 通过减少偏置偏移的影响,使正常梯度更接近于单位自然梯度,从而使均值向零加速学习

  • ELU 在较小的输入下会饱和至负值,从而减少前向传播的变异和信息。

  • 一个小问题是它的计算强度更高,计算量较大

7、GELU

GELU(Gaussian Error Linear Unit)是一种激活函数,最初由Hendrycks和Gimpel在2016年提出,并在随后的研究中被证明在深度神经网络中表现良好,尤其在自然语言处理和语音识别领域得到广泛应用。下面详细介绍一下GELU的定义、特点以及应用情况。

1. 定义和数学表达式

2. 特点和优点

  • 非线性: GELU是非线性的激活函数,能够帮助神经网络模型学习复杂的非线性关系。

  • 光滑性: GELU在整个实数范围内都是光滑的,这对于梯度的计算和反向传播是有利的。

  • 近似于ReLU: 当输入 ( x ) 较大时,GELU接近于线性关系,类似于ReLU,因此可以帮助提升模型的稀疏表示能力。

  • 性能: 实验证明,GELU在许多任务和模型中能够提供比传统的ReLU等激活函数更好的性能和泛化能力。

3. 应用场景

GELU广泛应用于各种深度学习模型中,特别是在自然语言处理(NLP)任务中,如BERT和GPT等语言模型的构建中。它能够在处理自然语言中的复杂特征和模式时,提供更加灵活和有效的非线性变换能力。

4. 与其它激活函数的比较

  • ReLU vs GELU: 相较于ReLU,GELU在处理负数输入时能够产生更平滑的输出,这有助于减少梯度消失的问题,并有助于提高训练的稳定性和收敛速度。

  • Swish vs GELU: Swish是另一个近似于GELU的激活函数,但它使用sigmoid函数而不是GELU中的误差函数的累积分布函数。在一些比较实验中,GELU在某些任务上表现出更好的性能,但选择哪种激活函数通常还取决于具体任务和模型的特性。

总结

最新文章
规则引擎的架构设计与系统实现
GitHub - failgoddess/rule: 规则引擎业务规则、配置化编程、政策引擎、规则引擎目录 ruleEngine 1. 背景 2. 方案考察 2.1. 硬编码: 2.2. Drools: 2.3. Urule: 2.4. 自研规则引擎 3. 能力要求 4. 名词解释 5. 概要设
超逼真美女写真生成:玩转AI绘画工具,打造属于你的完美女神!
在一个阳光明媚的周末,宝子们摊在沙发上,翻看手机里的照片,突然被朋友发来的小姐姐美女写真吸引,质量之高,简直让人无法相信这是AI生成的。如此真实的美女写真,究竟是哪个神奇的工具呢?随着人工智能技术的飞速发展,AI绘画工具已不再
揭秘徐州百度推广优化策略,实战技巧深度解析
本文深度解析徐州百度推广优化排名策略,从关键词研究、广告创意、着陆页优化等多方面提供实战技巧,助力企业提升百度推广效果。随着互联网的飞速发展,越来越多的企业开始重视网络营销,尤其是百度推广优化排名,作为国内最大的搜索引擎,
跨服排行榜:快速排序与Redis跳表实现策略,
排行榜是游戏中重要的功能,如何才能实现一个高效的排行榜呢?我所在的项目组做的是SLG游戏,我们游戏的很多活动都有排行榜。上周接到一个跨服排行榜的功能案,需求是让现有的排行榜支持跨服。 一、问题描述 目前
解决方案:的18种推广方式
该如何进行有效的推广呢?相信这是很多运营者都非常关心的问题!学会小程序的18种推广方式,就能给商家带来最大化的盈利!​一、公众号推广1.文章内嵌小程序基于公众号自带的流量,用户可在公众号推文内插入以图片、文字或卡片等形式链接的小
阿里旗下夸克搜索涉黄!网信出手,千万级APP大整改
网络不是法外之地。国家网信办、广东省网信办联合出手,阿里旗下夸克APP涉黄一事曝光,瞬间成为热搜第一的热门话题。夸克APP专注于下沉市场,主打“新生代智能搜索”,号称是一款“县城年轻人打死也不卸载”的APP。艾媒咨询的数据显示,国
谷歌商店,重磅!谷歌Chrome浏览器或将易主,估价高达200亿美元!。
据知情人士透露,司法部反垄断部门的官员已决定不再坚持要求谷歌出售安卓操作系统。在过去三个月里,相关律师与数十家公司进行了会面,并最终决定转而要求谷歌出售Chrome。然而,如果其他补救措施能有效遏制谷歌的市场垄断行为,司法部未来
怎样延长手机待机时间
怎样延长手机待机时间  一般手机标称的待机时间严格来说是指手机在最理想状态下的最长待机时间。这个数据是在实验室的特殊条件下取得的。所以很多人老是觉得自己的手机很不经用,跟标称的待机时间相去甚远。如果经常碰到这种情况,那就要
竞价代运营是什么服务?揭秘其服务内容与核心优势!
大家好!今天我们来聊聊一个在现代营销中越来越热门的话题竞价代运营。作为一名在这个行业摸爬滚打多年的技术人员,我深知企业在营销过程中面临的种种挑战,而竞价代运营正是解决这些问题的利器。接下来,我将详细解析竞价代运营的服务内容
相关文章
推荐文章
发表评论
0评