



版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2017 年深度学习优化算法最新进展:如何改进 SGD 和 Adam 方法?行者武松 2018-01-01 16:59:00 浏览 2952 评论 0本文来自 AI 新量子位(QbitAI)深度学习的基本目标,就是寻找一个泛化能力强的最小值,模型的快速性和可靠性也是一个加分点。随机梯度下降( SGD)方法是 1951 年由 Robbins 和 Monro 提出的1,至今已有 60 年历史。在当前的深度学习研究中,这种方法,一般被用在反向过程中。近年来,研究提出一些新的优化算法,使用了不同方程来更新模型参数。2015 年 Kingma 和 Ba 提出的 Adam 方法18,可看作是目前最常用的优
2、化算法之一。这表明,从学习工作者的角度来说,深度学习优化中的最佳方法在很大程度上是保持不变的。然而,今年还有很多新的方法提出,这可能会影响接下来在模型优化中所使用的方法。在这篇文章中,Ruder 从他的角度,介绍了深度学习优化方法中一些振奋人心的工作和可能的发展方向。阅读这篇文章时,要熟悉 SGD 方法和自适应学习率方法,如 Adam 方法。改进 Adam 方法摘要: 本文来自 AI 新量子位(QbitAI) 深度学习的基本目标,就是寻找一个泛化能力强的最小值,模型的快速性和可靠性也是一个加分点。 随机梯度下降(SGD)方法是 1951 年由Robbins 和 Monro 提出的1,至今已有
3、60 年历史。· 性能· 算法· 深度学习尽管,像 Adam 这样的自适应学习率方法使用十分广泛,但是,在物体识别17和翻译 3等研究任务中,很多前沿的研究成果仍然在使用传统的带动量 SGD 方法。Wilson 等人在最新研究中15给出一些理由来说明,与带动量 SGD 方法相比,自适应学习率方收敛于不同的极小值,且结果通常不大理想。从经验上得出,在物体识别、字符级语言建模和句法分析等任务中, 自适应学习率方法得到的极小值通常比带动量 SGD 方法得到的极小值要差。这似乎与直觉相反,因为 Adam 方法有很好的收敛机制,且其自适应学习率会比传统的 SGD 方法表现得
4、更好。但是, Adam 和其他自适应学习率方法也有一些局限性。解耦衰减在一些数据集上, Adam 方法的泛化能力比带动量 SGD 方法要差的一衰减( weight decay) 。个可能是衰减常被用于图像分类问题中,即在每次参数更新后,把衰减率 Wt 与权重 t 相乘,其中衰减率 Wt 略小于 1:这能防止权重变得过大。因此这取决于施加在 Loss 上的衰减也可以理解为一种 L2 正则化项, 衰减率 Wt:衰减方法一般可作为上述的正则化项,或是直接修改梯度,通常在很多神经网络库中有调用函数。在动量和 Adam 算法的更新方程中,通衰减与 L2 正则化不一样。过与其他衰减项相乘来修改梯度值时,所
5、以因此, Loshchilov 和 Hutter 在 2017 年提出“解耦衰减”19,与原始定义相同,在每次参数更新后通过这种方法来更新梯度。带动量和衰减的 SGD 方法( SGDW)按照以下方式更新梯度: 其中, 为学习率, 第二个方程的第三解耦衰减。同样地, 我衰减的 Adam 方法( AdamW): 们得到带其中, mt 和 m t 是第一时刻的偏差和偏差校正估计值, vt 和 v t 是第二时刻的偏差和偏差校正估计值, 1 和 2 是相应的衰减率,且加入相同的衰减项。作者表示,这种方法大幅提高了 Adam 方法的泛化能力, 且在图像分类数据集上与带动量 SGD 方法效果相当。另外,它
6、将学习率的选择过程与衰减的选择过程分离开,这能更好地实现超参数优化,因为超参数间不再互相依赖。它还把优化器的实现与衰减的实现过程,这有助于构建更简洁和可重用的代码,参考 fast.ai AdamW/SGDW implementation( fastai/pull/46/files) 。固定指数移动平均值最近的一些研究( Dozat and Manning, 201713、Laine and Aila, 201716)通过实验发现,调低 2 值,影响了 Adam 方法中过去平方梯度的指数移动平均值的贡献度。一般来说, 2 的默认值为 0.999,设置为 0.99 或 0.9 后,在不同任务中表现
7、更好,这表明可能存在指数移动平均值的问题。ICLR 2018 正在审核的一篇文章 On the Convergence of Adam andBeyond()研究了这个问题,指出过去平方梯度的指数移动平均值是自适应学习率方法泛化能力不佳的另一个。自适应学习速率方法的,是通过过去平方梯度的指数移动平均值来更新参数,例如 Adadelta, RMSprop 和 Adam。研究指数平均的贡献度,这个思路的性很好,能防止学习率随着训练而变得极小,这也是 Adagrad 方法的关键缺陷。但是,梯度的短期记忆性在其他情况下变成了阻碍。在 Adam 方法收敛到一个次优解时,我们观察到一些小批次样本贡献了大幅
8、且有效的信息梯度,但是这种情况很少发生,指数平均后减小了它们的影响,导致模型收敛性差。作者给出了一个简单的凸优化问题,可以看到 Adam 方法中也存在这种现象。作者提出了一种新算法 AMSGrad 来解决这个问题, 它使用过去平方梯度的最大值来更新参数,而不是先前的指数平均。AMSGrad 方法的更新过程如下,这里不带有偏差校正估计: 实验表明,在小数据集和 CIFAR-10 数据集上,这种方法的性能比 Ada m 方法更好。调整学习率在许多情况下, 我们不需要改进和调整模型结构, 而是该调整超参数。在语言建模中的一些最新研究表明,与更复杂的模型相比,调整 LSTM 参数20和正则化参数21就
9、可以得到最先进的性能。在深度学习优化中,一个重要的超参数就是学习率 。实际上,在 SG D 方法中,需要构建一个合适的学习率退火方案,来得到一个良好的收敛最小值。人们会认为,像 Adam 这样的自适应学习率方法,对不同的学习率更具有鲁棒性,因为这些方法能自我更新学习率。但是,即使对于这些方法,好的学习率和最佳的学习率也可能有很大的差别( Andrej KarpathyVerified account 说最佳学习率是 3e-4arpathy/status/)。Zhang 在 2017 年的一个研究表明2,在调整学习率退火方案和动量参数后,该 SGD 方法的性能与 Adam 有得一拼,而且收敛速度
10、更快。另一方面,我们可能认为 Adam 方法中学习率的自适应性可能模仿了学习速率退火,但是一个明确的退火方案仍然是有帮助的。因为,如果我们把 SGD 方法中的学习率退火添加到 Adam 中,它能在表现得比 SGD 方法更好,且更快地收敛4。翻译任务中事实上,学习率退火方案似乎是一种新的特征工程,因为我们发现,改进的学习率退火方案能模型的最终收敛性能。Vaswani 等人在 2017 年给出了一个有趣的例子14。在模型调参时, 通常需要进行大规模的超参数优化,这个文章的创新点在把学习率退火方案当作是要优化的具体焦点。作者使用了 Adam方法,其中 1 =0.9,和非默认参数2 =0.98、=10
11、- 9 ,这可以说对学习率 来说是最精细的退火方案之一: 其中 dm是模型参数的数目,且 warmup_steps 为 4000。Smith 等人在 2017 年的另一篇5揭示了学习率和批次大小间的一个有趣关联。这两个超参数通常被认为是相互的, 但是他们发现,减小学习率相当于增加批次大小,而后者能提高并行训练速度。反过来想,我们可以减少模型更新次数,并通过提高学习率和缩放批次大小来提高训练速度。这个发现影响到大规模深度学习的训练过程,可在不需要超参数调整的前提下,重新调整现有的训练计划。热重启( warm restarts)带重启的 SGD 方法另一个最近提出的有效方法是 SGDR6, Los
12、hchilov 和 Hutter 用热重启方式来替代学习率退火制度,来改进 SGD 方法。在每次重启时,学习率初始化为某个值,然后逐渐减少。重要的是,这种重启可随时进行, 因为优化不是从头开始, 而是从模型在上一个步骤收敛的参数开始的。关键在于,通过一个积极的余弦退火方案来调整学习率,这会很快地降低学习率,如下所示: 其中 imin 和 im ax 是第 i 次训练时学习率的变化区间, Tcu r 表示从上次重启后已完成的迭代次数,且 Ti 规定了下一次重启的迭代次数。与常规的学习率退火方案相比, 热重启方法( Ti =50, Ti=100 和 Ti=200) 的性能如图 1 所示。图 1:
13、加入热重启的学习率方法性能变化重启后,用一个高的初始学习率能从根本上把参数从先前收敛的最小值弹射到损失函数曲面的不同区域。这种积极的退火机制使模型能快速收敛到一个新且更好的解决方案。作者通过观察还发现,使用热重启的随机梯度下降方法的所需时间比学习率退火机制少了 24 倍,并能达到相当或更好的性能。使用热重启的学习率退火也叫做循环变化学习率,最初由 Smith22提出。fast.ai 学生给出了另外两篇文章,讨论了热重启和循环变化学习率, 地址如下: ning-rate-5e99554f163b快照集成( Snapshot ensembles)快照集成是一种最近由 Huang 提出的巧妙方法7,
14、即在训练单个模型时使用热重启来组装一个集合,且基本上无额外的代价。这种方法可以训练一个单模型,按照之前看到的余弦退火制度收敛,然后保存模型参数,并进行热重启,重复这些步骤 M 次。最后,所有保存的模型快照形成一个集合。在图 2 中可以看到,常用的 SGD 优化在误差曲面上的性能与快照集成过程的性能差异。图 2: SGD 与快照集成一般来说,集成是否取决于组合中每个模型的多样性。因此,快照集成依赖于余弦退火方案的能力,使得模型在每次重启后能够收敛到不同的局部最优值。作者证明,这在实践中是成立的,在 CIFAR-10、CI FAR-100 和 SVHN 上取得了很好的效果。带重启的 Adam 方法
15、热重启最初在 Adam 方法中并不适用,因为它的衰减不正常。在固定Adam衰减后,Loshchilov 和 Hutter 在 2017 年同样地把热重启扩展到中。其中, im in = 0, im a x=1,得到: 建议开始时选取较小的 Ti(迭代次数在 1-10 之间),并在每次重启时将其乘以一个系数 Tm u l t ,如 2。学习优化之一是 Andrychowicz 等人撰写的 Learning to lear去年最有趣的n by gradient descent by gradient descent,也是 reddit 网友选出的“2016 年最佳”23。他们训练了 LSTM 优化
16、器,用于在训练主要模型时更新参数。不幸的是,学习单独的 LSTM 优化器,或是使用预先训练好的 LSTM 优化器进行优化,都会大大增加模型训练的复杂度。今年还有一篇很有影响力的“learning to learn”,使用 LSTM 来生成特定领域语言的模型结构24。虽然搜索过程需要大量的, 但是所发现的结构可以用来取代已有的结构。这个搜索过程已经被证明是有效的,并且在语言建模方面取得最先进的效果,并且在 CIFAR-10 上取得了很有竞争力的结果。同样的搜索策略也可以应用于任何已经被手工定义其关键过程的其他领域,其中一个领域就是深度学习的优化算法。正如以前所看到的,优化算法十分符合这个规则:它
17、们都使用了过去梯度的指数移动平均值( 如动量) 和过去平方梯度的指数移动平均值( 如 Adadelta, RMSpro p, Adam)的组合25。Bello 等人8定义了一个特定领域的语言,由对优化有用的基元组成, 如这些指数移动平均值。然后,他们从所有可能的更则空间中采样更则,使用此更则来训练模型,并基于测试集上训练模型的性能来更新 RNN器。完整流程如图 3 所示。图 3: 神经优化搜索特别是,他们还定义了两个更新方程,即 PowerSign 和 AddSign。Po werSign 的更新公式如下: 其中, 是一个超参数, 通常设为 e 或者 2; f(t)设为 1, 或是衰减函数(随
18、着时间步 t 重新执行线性、循环或衰减),其中 mt 是过去梯度的移动平均值。通常,设置 = e,且无衰减。注意到,更新通过 f( t ) 或 1 / f ( t ) 来缩放梯度,取决于梯度方向和移动平均值是否一致。这表明,这种类似动量的过去梯度和当前梯度之间的相似性是优化深度学习模型的关键信息。AddSign 定义如下: 其中, 通常设置为 1 或 2,与上面类似,这次的尺度更新为 +f(t)或 f(t),取决于梯度方向的一致性。作者指出, PowerSign 和 AddSign在 CIFAR-10 上的表现优于 Adam、RMSprop 和带动量 SGD 方法,并能很好地转换到其他任务中,如 ImageNet 分类和翻译。理解泛化优化问题与泛化能力是密切相关的,因为模型收敛的最小值决定了模型的泛化能力。因此,优化问题的进展与理解这种极小值泛化能力的理论进展是密切相关的,且能更深入地理解深度学习中的泛化能力。但是,我们对深度神经网络泛化能力的理解仍然很浅显。最近的研究表明,可能是局部极小值的数量随参数数量呈指数型增长9。考虑到目前深度学习结构中参数数量巨大,这样的模型能收敛且泛化能力较好,特别是考虑到它们可以完全记住随机输入10,这似乎看起来很神奇10。Keskar 等人11认为最小值的指出,批次梯度下降所找到的是泛化能
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 止痛药物应用总结模版
- 平衡的稳定性教学设计
- 机械工程材料基础第三章钢的热处理
- 人教版三年级语文下册《口语交际:春游去哪儿玩》教学课件
- 医院人事管理课件
- 肿瘤机器技术应用与发展
- 提高课堂教学的有效性心得体会模版
- 本学期少先队工作总结模版
- 手术室传染病分管规范
- 初一上英语教学总结模版
- CJT 489-2016 塑料化粪池 标准
- 2023-2024学年广东省惠州市惠城区八年级(下)期末数学试卷(含答案)
- 2022-2023学年广东省广州市番禺区教科版(广州)四年级下册期末测试英语题卷(无答案)
- 纺纱厂管理制度
- 2024年福建省莆田市初中八年级教学质量检测生物试卷
- 医疗器械仓库管理课件
- 中华水文化智慧树知到期末考试答案2024年
- 整套电子课件:液压传动与气动技术(第二版)
- 《人类起源的演化过程》阅读测试题及答案
- 2024年03月甘肃省文化和旅游厅直属事业单位2024年公开招考11名人员笔试参考题库附带答案详解
- MOOC 民事诉讼法学-西南政法大学 中国大学慕课答案
评论
0/150
提交评论