Adadelta原文解读
Adadelta論文原文是:
《Adadelta:An adaptive learning rate method》
論文的重點是Section3,我們重點對Section3進行解讀
section 3.Adadelta Method
global learning rate.
意思是Adadelta是為了:
1.學習率衰退問題,2.學習率自動選擇的問題
In the ADAGRAD method the denominator accumulates the squared gradients from each iteration starting at the beginning of training. Since each term is positive, this accumulated sum continues to grow throughout training, effectively shrinking the learning rate on each dimension. After many iterations, this learning rate will become infinitesimally small.
這段話的意思是ADAGRAD會隨著訓練的進行,導致學習率逐漸變成0.
3.1.Idea1:Accumulate Over Window
Instead of accumulating the sum of squared gradients over all time, we restricted the window of past gradients that are accumulated to be some fixed size www (instead of size ttt where ttt is the current iteration as in ADAGRAD). With this windowed accumulation the denominator of ADAGRAD cannot accumulate to infinity and instead becomes a local estimate using recent gradients. This ensures that learning continues to make progress even after many iterations of updates have been done.
意思是用一個窗口w,而不是像adagrad那樣累積之前t輪所有的權重.
E[g2]t=ρE[g2]t?1+(1?ρ)gt2(8)E[g^2]_t=\rho E[g^2]_{t-1}+(1-\rho)g_t^2(8)E[g2]t?=ρE[g2]t?1?+(1?ρ)gt2?(8)
RMS[g]t=E[g2]t+?(9)RMS[g]_t=\sqrt{E[g^2]_t+\epsilon} (9)RMS[g]t?=E[g2]t?+??(9)
△xt=?ηRMS[g]tgt(10)△x_t=-\frac{\eta}{RMS[g]_t}g_t (10)△xt?=?RMS[g]t?η?gt?(10)
上面的式子中,(8)代入(9),(9)代入(10),即為最終偽代碼的一部分
然后,因為式子中η\etaη是需要手工設定的,所以下面有了3.2
3.2.Idea2:Correct Units with Hessian Approximation
二階牛頓法可以寫成:
xt+1=xt?f′(x)f′′(x)x_{t+1}=x_t-\frac{f'(x)}{f''(x)}xt+1?=xt??f′′(x)f′(x)?
所以二階牛頓法中,我們可以把1f′′(x)\frac{1}{f''(x)}f′′(x)1?視為學習率。
在二階牛頓法中,有:
△x=?f?x?2f?x2△x=\frac{\frac{\partial f}{\partial x}}{\frac{\partial ^2f}{\partial x^2}}△x=?x2?2f??x?f??
可以推導出:
1?2f?x2=△x?f?x\frac{1}{\frac{\partial ^2 f}{\partial x^2}}=\frac{△x}{\frac{\partial f}{\partial x}}?x2?2f?1?=?x?f?△x?(這個步驟我認為沒啥用,就是在論文里面湊字數逼叨幾句)
Since the RMS of the previous gradients is already represented in the denominator in Eqn. 10 we considered a measure of the △x\triangle x△x quantity in the numerator.
這里的意思是已經把式子(10)的分母處理完了(這是廢話,這里是為了增加字數)
△xt\triangle x_t△xt? for the current time step is not known, so we assume the curvature is locally smooth and approximate △xt\triangle x_t△xt? by compute the exponentially decaying RMS over a window of size w of previous △x\triangle x△x to give the ADADELTA method.
這段話什么意思呢?
意思是說:
我們同樣對△x\triangle x△x使用一個窗口來計算合理的值,講人話就是:我們腦袋一拍,覺得這里就用均方根吧。
然后就有了分子中中的RMS[△x]t?1RMS[\triangle x]_{t-1}RMS[△x]t?1?
最終算法如下:
Note:
算法中的第4步和第6步代入第5步,然后第5步代入第7步,這樣就算完成了一次更新迭代
總結
以上是生活随笔為你收集整理的Adadelta原文解读的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 指数加权平均与RmsProp(转载+自己
- 下一篇: 数据建模中的大坑判断