續【DL-CV】更高級的參數更新(一)
【DL-CV】正則化,Dropout<前篇---后篇>【DL-CV】淺談GoogLeNet(咕咕net)
Adagrad全名 Adaptive gradient algorithm ,翻譯過來就是“適應梯度算法”,該算法能根據梯度中偏導數的大小給不同的偏導數以不同的學習率,偏導數大(小)的給個小(大)的學習率,以此來減少參數更新時的擺動。
其核心是引入一個參數對歷次的梯度的平方進行累加,在更新階段,基礎學習率將除以這個參數的開方。這樣大梯度會因為積累大而分得小的學習率,小梯度因為積累小而分得較大的學習率
$$s_{t+1} = s_{t}+
abla_x L(x_t)^2$$
$$x_{t+1}=x_t-{alphaover sqrt {s_{t+1}}+epsilon}
abla_x L(x_t)$$
其中$epsilon$是一個很小的數,為了防止除法時分母出現零,一般設為1e-4到1e-8之間。下面是代碼實現
缺點:梯度平方的累計值在訓練過程中不斷增大,作為分母被除了以后學習率衰減過快,更新變慢
RMSpropRMSprop 是 Geoff Hinton 提出的一種自適應學習率方法,目的是為了解決 Adagrad 學習率急劇下降的問題。其在對梯度平方進行累加時會進行衰減處理(其實是指數加權平均),解決學習率急降的問題的同時又保留了 Adagrad 調節學習率的優點
$$s_{t+1} = eta s_t +(1-eta)
abla_x L(x_t)^2$$
$$x_{t+1}= x_t-{alphaover sqrt {s_{y+1}+}epsilon}$$
$gamma$ 通常為0.9/0.99
以上兩種方法解決了SGD的問題2??
Adam兩種動量方法通過引入“速度”解決了問題1??;Adagrad 和 RMSprop 通過引入“梯度平方”解決了問題2??,各有千秋。為何不把兩者結合起來然后一次滿足兩個愿望呢?這么一想,Adam就出來了。
Adam 相當于 RMSprop + Momentum,他除了像 RMSprop 一樣存儲了過去梯度平方的指數衰減平均值 ,也像 momentum 一樣保持了過去梯度的指數衰減平均值:
$$v_{t+1} = eta_1v_t + (1-eta_1)
abla_x L(x_t)$$
$$s_{t+1} = eta_2s_t + (1-eta_2)
abla_x L(x_t)^2$$
如果 v 和 s 被初始化為 0 向量,那它們就會向 0 偏置,所以還需要偏差校正來抵消這些偏差:
$$hat v_{t+1} = {v_{t+1}over 1-eta_1^{t+1}}$$
$$hat s_{t+1} = {s_{t+1}over 1-eta_2^{t+1}}$$
最后的更新就是:
$$x_{t+1}=x_t-{alpha hat v_{t+1}oversqrt{hat s_{t+1}}+epsilon}$$
推薦值$eta_1=0.9$,$eta_2=0.99$,$alpha=10^{-3}/5·10^{-4}$代碼實現:
Adam真的是一個非常棒的算法,實踐表明,Adam 比其他適應性學習方法效果要好,幾乎成為標配默認的算法啦。所以長篇大論了這么久之后的結論是——推薦首選Adam
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/19801.html
續【DL-CV】更高級的參數更新(一) 【DL-CV】正則化,Dropout【DL-CV】淺談GoogLeNet(咕咕net) Adagrad 全名 Adaptive gradient algorithm ,翻譯過來就是適應梯度算法,該算法能根據梯度中偏導數的大小給不同的偏導數以不同的學習率,偏導數大(小)的給個小(大)的學習率,以此來減少參數更新時的擺動。 其核心是引入一個參數對歷次的梯度的平方...
摘要:對所有參數更新時應用同樣的學習率梯度由許多偏導數組成,對應著各個參數的更新。對于偏導數大的,我們希望配個小的學習率給他對于偏導數小的,我們希望配個大的學習率給他,這樣各個參數都能獲得大致相同的更新幅度,提高網絡的健壯性。 后續【DL-CV】更高級的參數更新/優化(二) 【DL-CV】正則化,Dropout【DL-CV】淺談GoogLeNet(咕咕net) 原版SGD的問題 原味版的S...
閱讀 1906·2021-11-22 14:44
閱讀 1672·2021-11-02 14:46
閱讀 3657·2021-10-13 09:40
閱讀 2601·2021-09-07 09:58
閱讀 1586·2021-09-03 10:28
閱讀 1658·2019-08-29 15:30
閱讀 976·2019-08-29 15:28
閱讀 1469·2019-08-26 12:20