色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          "); //-->

          博客專欄

          EEPW首頁(yè) > 博客 > 深度學(xué)習(xí)最全優(yōu)化方法總結(jié)比較(SGD,Adagrad,Adadelta,Adam,Adamax,Nadam)

          深度學(xué)習(xí)最全優(yōu)化方法總結(jié)比較(SGD,Adagrad,Adadelta,Adam,Adamax,Nadam)

          發(fā)布人:計(jì)算機(jī)視覺工坊 時(shí)間:2023-04-23 來源:工程師 發(fā)布文章
          00  前言

          本文僅對(duì)一些常見的優(yōu)化方法進(jìn)行直觀介紹和簡(jiǎn)單的比較,各種優(yōu)化方法的詳細(xì)內(nèi)容及公式只好去認(rèn)真啃論文了,在此我就不贅述了。

          01  SGD

          此處的SGD指mini-batch gradient descentm,關(guān)于batch gradient descent、 stochastic gradient descent 以及 mini-batch gradient descent的具體區(qū)別就不細(xì)說了。現(xiàn)在的SGD一般都指mini-batch gradient descent。SGD就是每一次迭代計(jì)算mini-batch的梯度,然后對(duì)參數(shù)進(jìn)行更新,是最常見的優(yōu)化方法了。即:圖片其中,圖片是學(xué)習(xí)率,圖片是梯度SGD完全依賴于當(dāng)前batch的梯度,所以圖片可以理解為允許當(dāng)前的batch的梯度多大程度影響參數(shù)更新。圖片缺點(diǎn)(正因?yàn)橛羞@些缺點(diǎn)才讓這么多大神發(fā)展出了后續(xù)的各種算法)· 選擇合適的learning rate比較困難 - 對(duì)所有的參數(shù)更新使用同樣的learning rate。對(duì)于稀疏數(shù)據(jù)或者特征,有時(shí)我們可能想更新快一些對(duì)于不經(jīng)常出現(xiàn)的特征,對(duì)于常出現(xiàn)的特征更新慢一些,這時(shí)候SGD就不太能滿足要求了。· SGD容易收斂到局部最優(yōu),并且在某些情況下可能被困在鞍點(diǎn)。

          02  Momentum

          momentum是模擬物理里動(dòng)量的概念,積累之前的動(dòng)量來替代真正的梯度。公式如下:圖片其中,圖片是動(dòng)量因子。特點(diǎn):· 下降初期時(shí),使用上一次參數(shù)更新,下降方向一致,乘上較大的圖片能夠進(jìn)行很好的加速。· 下降中后期時(shí),在局部最小值來回震蕩的時(shí)候,圖片圖片使得更新幅度增大,跳出陷阱。· 在梯度改變方向的時(shí)候,圖片能夠減少更新,總而言之,momentum項(xiàng)能夠在相關(guān)方向加速SGD,抑制振蕩,從而加快收斂。

          03  Nesterov

          nesterov項(xiàng)在梯度更新時(shí)做一個(gè)校正,避免前進(jìn)太快,同時(shí)提高靈敏度。將上一節(jié)中的公式展開可得:圖片可以看出,圖片并沒有直接改變當(dāng)前梯度圖片,所以Nesterov的改進(jìn)就是讓之前的動(dòng)量直接影響當(dāng)前的動(dòng)量。即:圖片所以,加上nesterov項(xiàng)后,梯度在大的跳躍后,進(jìn)行計(jì)算對(duì)當(dāng)前梯度進(jìn)行校正。如下圖:
          圖片momentum首先計(jì)算一個(gè)梯度(短的藍(lán)色向量),然后在加速更新梯度的方向進(jìn)行一個(gè)大的跳躍(長(zhǎng)的藍(lán)色向量),nesterov項(xiàng)首先在之前加速的梯度方向進(jìn)行一個(gè)大的跳躍(棕色向量),計(jì)算梯度然后進(jìn)行校正(綠色梯向量)。其實(shí),momentum項(xiàng)和nesterov項(xiàng)都是為了使梯度更新更加靈活,對(duì)不同情況有針對(duì)性。但是,人工設(shè)置一些學(xué)習(xí)率總還是有些生硬,接下來介紹幾種自適應(yīng)學(xué)習(xí)率的方法。

          04  Adagrad

          Adagrad其實(shí)是對(duì)學(xué)習(xí)率進(jìn)行了一個(gè)約束。即:圖片

          此處,對(duì)圖片從1到圖片進(jìn)行一個(gè)遞推形成一個(gè)約束項(xiàng)regularizer,圖片,圖片用來保證分母非0。

          特點(diǎn):· 前期圖片較小的時(shí)候,regularizer較大,能夠放大梯度。· 后期圖片較大的時(shí)候,regularizer較小,能夠約束梯度。· 適合處理稀疏梯度。缺點(diǎn):· 由公式可以看出,仍依賴于人工設(shè)置一個(gè)全局學(xué)習(xí)率。· 圖片設(shè)置過大的話,會(huì)使regularizer過于敏感,對(duì)梯度的調(diào)節(jié)太大。· 中后期,分母上梯度平方的累加將會(huì)越來越大,使圖片,使得訓(xùn)練提前結(jié)束。05  AdadeltaAdadelta是對(duì)Adagrad的擴(kuò)展,最初方案依然是對(duì)學(xué)習(xí)率進(jìn)行自適應(yīng)約束,但是進(jìn)行了計(jì)算上的簡(jiǎn)化。Adagrad會(huì)累加之前所有的梯度平方,而Adadelta只累加固定大小的項(xiàng),并且也不直接存儲(chǔ)這些項(xiàng),僅僅是近似計(jì)算對(duì)應(yīng)的平均值。即:圖片在此處Adadelta其實(shí)還是依賴于全局學(xué)習(xí)率的,但是作者做了一定處理,經(jīng)過近似牛頓迭代法之后:

          圖片

          其中,圖片代表求期望。
          此時(shí),可以看出Adadelta已經(jīng)不用依賴于全局學(xué)習(xí)率了。
          特點(diǎn):· 訓(xùn)練初中期,加速效果不錯(cuò),很快· 訓(xùn)練后期,反復(fù)在局部最小值附近抖動(dòng)

          06  RMSprop

          RMSprop可以算作Adadelta的一個(gè)特例,當(dāng)圖片=0.5時(shí):圖片就變?yōu)榱饲筇荻绕椒胶偷钠骄鶖?shù)。如果再求根的話,就變成了RMS(均方根):圖片此時(shí),這個(gè)RMS就可以作為學(xué)習(xí)率圖片的一個(gè)約束:
          圖片特點(diǎn):· 其實(shí)RMSprop依然依賴于全局學(xué)習(xí)率。· RMSprop算是Adagrad的一種發(fā)展,和Adadelta的變體,效果趨于二者之間。· 適合處理非平穩(wěn)目標(biāo) - 對(duì)于RNN效果很好。

          07  Adam

          Adam(Adaptive Moment Estimation)本質(zhì)上是帶有動(dòng)量項(xiàng)的RMSprop,它利用梯度的一階矩估計(jì)和二階矩估計(jì)動(dòng)態(tài)調(diào)整每個(gè)參數(shù)的學(xué)習(xí)率。Adam的優(yōu)點(diǎn)主要在于經(jīng)過偏置校正后,每一次迭代學(xué)習(xí)率都有個(gè)確定范圍,使得參數(shù)比較平穩(wěn)。公式如下:圖片其中,圖片、圖片分別是對(duì)梯度的一階矩估計(jì)和二階矩估計(jì),可以看作對(duì)期望圖片、圖片的估計(jì);圖片、圖片是對(duì)圖片圖片的校正,這樣可以近似為對(duì)期望的無(wú)偏估計(jì)??梢钥闯觯苯訉?duì)梯度的矩估計(jì)對(duì)內(nèi)存沒有額外的要求,而且可以根據(jù)梯度進(jìn)行動(dòng)態(tài)調(diào)整,而 圖片對(duì)學(xué)習(xí)率形成一個(gè)動(dòng)態(tài)約束,而且有明確的范圍。特點(diǎn):· 結(jié)合了Adagrad善于處理稀疏梯度和RMSprop善于處理非平穩(wěn)目標(biāo)的優(yōu)點(diǎn)。· 對(duì)內(nèi)存需求較小。· 為不同的參數(shù)計(jì)算不同的自適應(yīng)學(xué)習(xí)率。· 也適用于大多非凸優(yōu)化 - 適用于大數(shù)據(jù)集和高維空間。

          08  Adamax

          Adamax是Adam的一種變體,此方法對(duì)學(xué)習(xí)率的上限提供了一個(gè)更簡(jiǎn)單的范圍。公式上的變化如下:圖片可以看出,Adamax學(xué)習(xí)率的邊界范圍更簡(jiǎn)單。

          09  Nadam

          Nadam類似于帶有Nesterov動(dòng)量項(xiàng)的Adam。公式如下:圖片可以看出,Nadam對(duì)學(xué)習(xí)率有了更強(qiáng)的約束,同時(shí)對(duì)梯度的更新也有更直接的影響。一般而言,在想使用帶動(dòng)量的RMSprop,或者Adam的地方,大多可以使用Nadam取得更好的效果。

          10  經(jīng)驗(yàn)之談

          · 對(duì)于稀疏數(shù)據(jù),盡量使用學(xué)習(xí)率可自適應(yīng)的優(yōu)化方法,不用手動(dòng)調(diào)節(jié),而且最好采用默認(rèn)值。· SGD通常訓(xùn)練時(shí)間更長(zhǎng),但是在好的初始化和學(xué)習(xí)率調(diào)度方案的情況下,結(jié)果更可靠。· 如果在意更快的收斂,并且需要訓(xùn)練較深較復(fù)雜的網(wǎng)絡(luò)時(shí),推薦使用學(xué)習(xí)率自適應(yīng)的優(yōu)化方法。· Adadelta,RMSprop,Adam是比較相近的算法,在相似的情況下表現(xiàn)差不多。· 在想使用帶動(dòng)量的RMSprop,或者Adam的地方,大多可以使用Nadam取得更好的效果。
          最后展示兩張比較厲害的圖,一切盡在圖中......圖片損失平面等高線圖片在鞍點(diǎn)處的比較

          本文僅做學(xué)術(shù)分享,如有侵權(quán),請(qǐng)聯(lián)系刪文。


          *博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



          關(guān)鍵詞: AI

          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉