赞
踩
目前深度歇息模型多采用批量随机梯度下降算法进行优化, 随机梯度下降算法的原理如下:
w t + 1 = w t − η 1 n ∑ x ∈ β Δ l ( x , w t ) w_{t+1} = w_t - \eta\frac{1}{n}\sum_{x\in \beta}\Delta l (x, w_t) wt+1=wt−ηn1x∈β∑Δl(x,wt)
n是批处理(batchsize), η \eta η是学习率。 上式可以直到, 这两个银子直接决定模型的权重更新, 从优化本身来看, 他们是影响模型性能收敛最重要的参数.
学习率直接影响模型的收敛状态, batchsize则影响模型的泛化性能.
通常我们需要选择合适的学习率才能进行学习, 要达到一个最佳值, 学习率的调整应该满足下面的条件, i代表第i次更新:
∑ i = 1 ∞ ϵ i = ∞ , ∑ i = 1 ∞ ϵ i 2 < ∞ \sum_{i=1}^{\infty}\epsilon_i=\infty,\\ \sum_{i=1}^{\infty}\epsilon_i^2<\infty i=1∑∞ϵi=∞,i=1∑∞ϵi2<∞
第一个式子决定了不管初始状态离优化状态多远, 总可以收敛. 第二个式子约束了学习率随着训练进行有效地降低, 保证收敛稳定性, 各种自适应学习率本质上就是不断在调整各个时刻的学习率.
学习率决定了权重更迭的步长, 因此是一个十分敏感的参数, 他对模型性能的影响体现在两个方面: 第一个是出是学习率的大小, 第二个是学习率的变化方案.
初始学习率肯定有一个最优值, 过大则导致模型不收敛, 过小则导致模型收敛的特别慢或者无法学习, 下图是不同大小的学习率:
找最佳学习率有个简单的方法 , 即从小到大训练模型, 然后几率损失的变化, 通常会几率到这样的曲线:
图片
随着学习率的增加, 损失会慢慢变小, 而后增加, 而最佳的学习率就可以通过从其中损失最小的区域选择.
学习率在模型的训练过程中很少不变的, 通常会有两个方式对学习率进行更改:
常见的策略包括: fixed, setp, exp, inv, multistep, poly, sigmoid等
从各个学者的结果上看:
自适应学习率策略以Adagrad, Adam等方法代表. 具体可以查看该网页: https://zhuanlan.zhihu.com/p/57860231
如果经验不够, 最好考虑使用Adam系列方法.
模型对batchsize虽然没有学习率那么敏感, 但是进一步提高模型性能上, batchsize会变成一个非常关键的参数
这是肯定的, 同样的epoch数目, 大的batchsize需要的batch数目减少了, 所以可以减少训练时间. 另外, 大的batchsize梯度的计算更加稳定, 因为模型训练曲线会更加平滑. 在微调时, 大的batchsize可能会取得更好的结果.
在一定范围内, 增加batchsize有助于收敛的稳定性, 但是随着batchsize的增加, 模型的性能会下降.
大的batchsize收敛到sharp minimum, 而小的batchsize会收敛到flat minimum, 后者具有更好的泛化能力. 如下图, 两个的区别是变化的趋势, 一个快一个慢, 造成这个现象的主要原因是小的batchsize带来的噪声有助于逃离sharp minimum.
图片
大的batchsize性能下降是因为训练时长不够, 本质上并不少batchsize的问题.
batchsize在变化很多时, 会降低模型的泛化能力. 模型的性能随着batchsize通常没有学习率敏感.
通常当我们增加batchsize为原来的N倍时, 要保证经过同样的样本后更新的权重相等,按照线性随访规则, 学习率应该增加为原来的N倍. 但是如果保证权重的方差不变, 则学习率应该增加为原来的sqrt(N)倍, 目前这两种策略都被研究过, 使用前者的多.
衰减学习率可以通过增加batchsize来实现类似的效果. 从各个学者的研究中发现, 从SGD的权重更新式子看出两者是等价的.
对于一个固定的学习率, 存在一个最优的batchsize能够最大化测试精度. 这个batchsize和学习率以及训练集大小正相关.
对此实际上有两个建议:
学习率和batchsize是影响模型性能极其重要的两个参数, 慎重对待.
对于学习率算法, 可以选择Adam等自适应学习率策略线训练看看收敛结果, 再考虑使用SGD等算法进一步提高性能.
对于batchsize, 大部分人不会使用成千上万的batchsize, 因此不用担心模型性能的下降, 用大一点的batchsize(64, 128等), 这样需要迭代的次数更少, 结果也更稳定.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。