溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Adam優(yōu)化算法的示例分析

發(fā)布時(shí)間:2021-12-27 09:43:20 來源:億速云 閱讀:184 作者:小新 欄目:大數(shù)據(jù)

這篇文章主要介紹Adam優(yōu)化算法的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

據(jù)牛津字典的定義,優(yōu)化是指最好或最有效地利用一種情況或資源,或者簡單地使自己的事物達(dá)到最佳狀態(tài)的行為。通常,如果可以對(duì)某事進(jìn)行數(shù)學(xué)建模,則很有可能可以對(duì)其進(jìn)行優(yōu)化。這在深度學(xué)習(xí)領(lǐng)域起著至關(guān)重要的作用(可能是整個(gè)人工智能),因?yàn)槟x擇的優(yōu)化算法可能是在數(shù)分鐘,數(shù)小時(shí)或數(shù)天(有時(shí)甚至是數(shù)周)內(nèi)獲得高質(zhì)量結(jié)果的區(qū)別。

Adam優(yōu)化算法的示例分析

什么是Adam Optimizer?

Adam Optimizer是對(duì)SGD的擴(kuò)展,可以代替經(jīng)典的隨機(jī)梯度下降法來更有效地更新網(wǎng)絡(luò)權(quán)重。

請(qǐng)注意,Adam這個(gè)名字并不是首字母縮寫詞,實(shí)際上,作者(OpenAI的Diederik P. Kingma和多倫多大學(xué)的Jimmy Lei Ba)在論文中指出,該論文首次在ICLR 2015上作為會(huì)議論文發(fā)表,標(biāo)題為Adam: A method for Stochastic Optimization, that the name is derived from adaptive moment estimation.。

作者毫不猶豫地列出了將Adam應(yīng)用于非凸優(yōu)化問題的許多迷人好處,我將繼續(xù)分享以下內(nèi)容:

簡單地實(shí)現(xiàn)(我們將在本文的稍后部分中實(shí)現(xiàn)Adam,并且您將直接看到如何利用強(qiáng)大的深度學(xué)習(xí)框架以更少的代碼行使實(shí)現(xiàn)變得更加簡單。)

  1. 計(jì)算效率高

  2. 很少的內(nèi)存需求

  3. 梯度的對(duì)角線重縮放不變(這意味著亞當(dāng)將梯度乘以僅帶正因子的對(duì)角矩陣是不變的,以便更好地理解此堆棧交換)

  4. 非常適合數(shù)據(jù)和/或參數(shù)較大的問題

  5. 適用于非固定目標(biāo)

  6. 適用于非常嘈雜和/或稀疏梯度的問題

  7. 超參數(shù)具有直觀的解釋,通常需要很少的調(diào)整(我們將在配置部分中對(duì)此進(jìn)行詳細(xì)介紹)

Adam是如何工作的

簡而言之,Adam使用動(dòng)量和自適應(yīng)學(xué)習(xí)率來加快收斂速度。

Momentum (動(dòng)量)

在解釋動(dòng)量時(shí),研究人員和從業(yè)人員都喜歡使用比球滾下山坡而向局部極小值更快滾動(dòng)的類比法,但從本質(zhì)上講,我們必須知道的是,動(dòng)量算法在相關(guān)方向上加速了隨機(jī)梯度下降,如 以及抑制振蕩。

為了將動(dòng)量引入我們的神經(jīng)網(wǎng)絡(luò),我們將時(shí)間元素添加到過去時(shí)間步長的更新向量中,并將其添加到當(dāng)前更新向量中。這樣可以使球的動(dòng)量增加一定程度??梢杂脭?shù)學(xué)表示,如下圖所示。

Adam優(yōu)化算法的示例分析

動(dòng)量更新方法,其中θ是網(wǎng)絡(luò)的參數(shù),即權(quán)重,偏差或激活值,η是學(xué)習(xí)率,J是我們要優(yōu)化的目標(biāo)函數(shù),γ是常數(shù)項(xiàng),也稱為動(dòng)量。Vt-1(注意t-1是下標(biāo))是過去的時(shí)間步長,而Vt(注意t是下標(biāo))是當(dāng)前的時(shí)間步長。

動(dòng)量項(xiàng)γ通常被初始化為0.9或類似于Sebastian Ruder的論文《An overview of gradient descent optimization algorithm》中提到的項(xiàng)。

適應(yīng)性學(xué)習(xí)率

通過將學(xué)習(xí)率降低到我們在AdaGrad,RMSprop,Adam和AdaDelta中看到的預(yù)定義時(shí)間表(schedule),可以將自適應(yīng)學(xué)習(xí)率視為訓(xùn)練階段的學(xué)習(xí)率調(diào)整。這也稱為學(xué)習(xí)率時(shí)間表 有關(guān)該主題的更多詳細(xì)信息,Suki Lau撰寫了一篇有關(guān)該主題的非常有用的博客文章,稱為“ Learning Rate Schedules and Adaptive Learning Rate Methods for Deep Learning.”。

在不花太多時(shí)間介紹AdaGrad優(yōu)化算法的情況下,這里將解釋RMSprop及其在AdaGrad上的改進(jìn)以及如何隨時(shí)間改變學(xué)習(xí)率。

RMSprop(即均方根傳播)是由Geoff Hinton開發(fā)的,如《An Overview of Gradient Descent Optimization Algorithms》所述,其目的是解決AdaGrad的學(xué)習(xí)率急劇下降的問題。簡而言之,RMSprop更改學(xué)習(xí)速率的速度比AdaGrad慢,但是RMSprop仍可從AdaGrad(更快的收斂速度)中受益-數(shù)學(xué)表達(dá)式請(qǐng)參見下圖

Adam優(yōu)化算法的示例分析

E [g2] t的第一個(gè)方程是平方梯度的指數(shù)衰減平均值。Geoff Hinton建議將γ設(shè)置為0.9,而學(xué)習(xí)率η的默認(rèn)值為0.001

這可以使學(xué)習(xí)率隨著時(shí)間的流逝而適應(yīng),這很重要,因?yàn)檫@種現(xiàn)象也存在于Adam中。當(dāng)我們將兩者(Momentum 和RMSprop)放在一起時(shí),我們得到了Adam —下圖顯示了詳細(xì)的算法。

Adam優(yōu)化算法的示例分析

如果你聽過吳恩達(dá)老師的深度學(xué)習(xí)課程,吳恩達(dá)老師說過“Adam可以理解為加了Momentum 的 RMSprop” ,上圖的公式就是吳恩達(dá)老師這句話的由來。

以上是“Adam優(yōu)化算法的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI