ADADELTA

ADADELTA是一种适应性学习率的优化算法,它基于ADAGRAD的变体,解决了ADAGRAD学习率随时间逐渐下降的问题。通过引入二阶优化思想和改进的梯度累计方式,ADADELTA在无需手动调整学习率的情况下,对不同模型结构和数据模式具有更好的鲁棒性。
摘要由CSDN通过智能技术生成

全文参考:
Zeiler M D. ADADELTA: an adaptive learning rate method[J]. arXiv preprint arXiv:1212.5701, 2012.

该方法只使用一阶信息,无需手动调整学习速率,对噪声梯度信息,不同的模型结构选择,各种数据模式和超参数的选择具有一定的鲁棒性。

1.ADAGRAD

ADADELTA是ADAGRAD的变体,所以首先介绍ADADELTA。ADADELTA的更新公式为:

Δxt=ηtτ=1g2τgt Δ x t = − η ∑ τ = 1 t g τ 2 g t

这里的分母为所有以前的梯度上的每一个维度的 L2 L 2 范式,η是一个所有维度共享的学习率。 t t 表示当前迭代的次数。g表示梯度,即一阶偏导数。分母这样设置有两点好处:

  1. 分母使得梯度越大,步长越小。梯度越小,步长越大。这个属性是很好的,因为二阶方法,比如Quickprop,在直观上来看,都是这样的。
  2. 这种分母中的梯度累积与退火具有同样的效果,随着时间的推移,学习率降低了。

同时,也有坏处。 ADAGRAD方法对初始的梯度的选择很敏感。如果初始梯度很大,由于分母中的平方梯度是不断累积的,整个训练过程中的学习率将继续下降,最终降至零,完全停止训练。而adadelta方法克服了这种缺点。

2.二阶方法更新权重

参考:
S. Becker and Y. LeCun, “Improving the convergence of back-propagation learning with second order methods,” Tech. Rep., Department of Computer Science, University of Toronto, Toronto, ON, Canada, 1988.

T. Schaul, S. Zhang, and Y. LeCun, “No more pesky learning rates,” arXiv:1206.1106, 2012.

文章1使用对角矩阵去近拟黑塞矩阵 Hessian ( H e s s i a n matrix m a t r i x ) ,更新公式为:

Δxt=1|diag(Ht)|+μgt Δ x t = − 1 | d i a g ( H t ) | + μ g t

|diag(Ht)| | d i a g ( H t ) | 使用额外的一次前向,后向传播计算。

文章2融合了对角黑塞矩阵和类ADAGRAD算法提出一种方法无需全局学习率,更新如下:

Δxt=1|diag(Ht)|E[gtw:t]2E[g2tw:t]gt Δ x t = − 1 | d i a g ( H t ) | E [ g t − w : t ] 2 E [ g t − w : t 2 ] g t

其中, E[gtw:t] E [ g t − w : t ] 表示前 w w 个梯度的期望值。E[gtw:t2]表示平方梯度的期望值。

3.ADADELTA算法

3.1次数累计的改进

使用附加动量法的思想去替代上述 E[gtw:t] E [ g t − w : t ] 以及 E[g2tw:t] E [ g t − w : t 2 ] w w 次的记录。公式如下:

E[g2]t=ρE[g2]t1+(1ρ)gt2

再求它的平方根,下面记为 RMS[g]t R M S [ g ] t

RMS[g]t=E[g2]t+ϵ R M S [ g ] t = E [ g 2 ] t + ϵ

ϵ ϵ 为常数,目的是为了防止第一次迭代 Δx Δ x 为0,以及之前的参数更新过小,参数更新公式为:
Δxt=ηRMS[g]tgt Δ x t = − η R M S [ g ] t g t

上述公式为RMSProp的更新公式,这篇文章也提到了这个公式,这只是巧合,这两人都想到了而已。

3.2使用二阶优化的思想去更新权重

Δx=fx2fx212fx2=Δxfx Δ x = ∂ f ∂ x ∂ 2 f ∂ x 2 ⇒ 1 ∂ 2 f ∂ x 2 = Δ x ∂ f ∂ x

前一个公式为牛顿法,得出黑塞矩阵的逆表示为后一个公式,之后将其使用累积梯度的思想,可以得到最后ADADELTA的更新公式为:
Δxt=RMS[Δx]t1RMS[g]tgt Δ x t = − R M S [ Δ x ] t − 1 R M S [ g ] t g t

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值