0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

幾種流行的優(yōu)化器的介紹以及優(yōu)缺點分析

深度學(xué)習(xí)自然語言處理 ? 來源:深度學(xué)習(xí)自然語言處理 ? 作者:Philipp Wirth ? 2020-10-10 10:16 ? 次閱讀

導(dǎo)讀

幾種流行的優(yōu)化器的介紹以及優(yōu)缺點分析,并給出了選擇優(yōu)化器的幾點指南。

本文概述了計算機視覺、自然語言處理和機器學(xué)習(xí)中常用的優(yōu)化器。此外,你會找到一個基于三個問題的指導(dǎo)方針,以幫助你的下一個機器學(xué)習(xí)項目選擇正確的優(yōu)化器。

找一份相關(guān)的研究論文,開始使用相同的優(yōu)化器。

參考表1并將數(shù)據(jù)集的屬性與不同優(yōu)化器的優(yōu)缺點進行比較。

根據(jù)可用的資源調(diào)整你的選擇。

介紹

為你的機器學(xué)習(xí)項目選擇一個好的優(yōu)化器是非常困難的。熱門的深度學(xué)習(xí)庫,如PyTorch或TensorFlow,提供了廣泛的優(yōu)化器的選擇,不同的優(yōu)化器,每個都有自己的優(yōu)缺點。然而,選擇錯誤的優(yōu)化器可能會對你的機器學(xué)習(xí)模型的性能產(chǎn)生重大的負(fù)面影響,這使得優(yōu)化器在構(gòu)建、測試和部署機器學(xué)習(xí)模型的過程中成為一個關(guān)鍵的設(shè)計選擇。

根據(jù)優(yōu)化器的不同,模型的性能可能會有很大的不同。

選擇優(yōu)化器的問題在于,由于no-free-lunch定理,沒有一個單一的優(yōu)化器可以在所有場景中超越其他的。事實上,優(yōu)化器的性能高度依賴于設(shè)置。所以,中心問題是:

哪個優(yōu)化器最適合我的項目的特點?

下面的內(nèi)容給出了回答上述問題的一個指南。它由兩個主要段落組成:在第一部分,我將向你快速介紹最常用的優(yōu)化器。在第二部分中,我將為你提供一個三步計劃來為你的項目選擇最好的優(yōu)化器。

一些最常用的優(yōu)化器

在深度學(xué)習(xí)中,幾乎所有流行的優(yōu)化器都基于梯度下降。這意味著他們反復(fù)估計給定的損失函數(shù)L的斜率,并將參數(shù)向相反的方向移動(因此向下爬升到一個假設(shè)的全局最小值)。這種優(yōu)化器最簡單的例子可能是隨機梯度下降(或SGD),自20世紀(jì)50年代以來一直使用。在2010年代,自適應(yīng)梯度的使用,如AdaGrad或Adam已經(jīng)變得越來越流行了。然而,最近的趨勢表明,部分研究界重新使用SGD而不是自適應(yīng)梯度方法。此外,當(dāng)前深度學(xué)習(xí)的挑戰(zhàn)帶來了新的SGD變體,如LARS或LAMB。例如,谷歌研究在其最新論文中使用LARS訓(xùn)練了一個強大的自監(jiān)督模型。

下面的部分將介紹最流行的優(yōu)化器。如果你已經(jīng)熟悉了這些概念,請轉(zhuǎn)到“如何選擇正確的優(yōu)化器”部分。

我們將使用以下符號:用w表示參數(shù),用g表示模型的梯度,α為每個優(yōu)化器的全局學(xué)習(xí)率,t為時間步長。

Stochastic Gradient Descent (SGD)

Stochastic Gradient Descent (SGD)的更新規(guī)則

在SGD中,優(yōu)化器基于一個小batch估計最陡下降的方向,并在這個方向前進一步。由于步長是固定的,SGD會很快陷入平坦區(qū)或陷入局部極小值。

SGD with Momentum

帶動量的SGD的更新規(guī)則

其中β < 1,使用了動量,SGD可以在持續(xù)的方向上進行加速(這就是為什么也被叫做“重球方法”)。這個加速可以幫助模型擺脫平坦區(qū),使它更不容易陷入局部最小值。

AdaGrad

AdaGrad的更新規(guī)則

AdaGrad是首個成功的利用自適應(yīng)學(xué)習(xí)率的方法之一(因此得名)。AdaGrad根據(jù)梯度的平方和的倒數(shù)的平方根來衡量每個參數(shù)的學(xué)習(xí)速率。這個過程將稀疏梯度方向上的梯度放大,從而允許在這些方向上執(zhí)行更大的步驟。其結(jié)果是:AdaGrad在具有稀疏特征的場景中收斂速度更快。

RMSprop

RMSprop的更新規(guī)則

RMSprop是一個未發(fā)布的優(yōu)化器,在過去幾年中被過度使用。這個想法與AdaGrad相似,但是梯度的重新縮放不那么激進:梯度的平方的總和被梯度平方的移動平均值所取代。RMSprop通常與動量一起使用,可以理解為Rprop對mini-batch設(shè)置的適應(yīng)。

Adam

Adam的更新規(guī)則

Adam將AdaGrad,RMSprop和動量法結(jié)合在一起。步長方向由梯度的移動平均值決定,步長約為全局步長的上界。此外,梯度的每個維度都被重新縮放,類似于RMSprop。Adam和RMSprop(或AdaGrad)之間的一個關(guān)鍵區(qū)別是,矩估計m和v被糾正為偏向于零。Adam以通過少量的超參數(shù)調(diào)優(yōu)就能獲得良好性能而聞名。

LARS

LARS的更新規(guī)則

LARS是使用動量的SGD的一種擴展,具有適應(yīng)每層學(xué)習(xí)率的能力。它最近引起了研究界的注意。原因是由于可用數(shù)據(jù)量的穩(wěn)步增長,機器學(xué)習(xí)模型的分布式訓(xùn)練已經(jīng)流行起來。其結(jié)果是批大小開始增長。然而,這導(dǎo)致了訓(xùn)練中的不穩(wěn)定。Yang等人認(rèn)為,這些不穩(wěn)定性源于某些層的梯度范數(shù)和權(quán)重范數(shù)之間的不平衡。因此,他們提出了一個優(yōu)化器,該優(yōu)化器基于一個“trust”參數(shù)η < 1和該層的梯度的范數(shù)的倒數(shù),對每一層的學(xué)習(xí)率進行縮放。

如何選擇正確的優(yōu)化器?

如上所述,為你的機器學(xué)習(xí)問題選擇正確的優(yōu)化器是困難的。更具體地說,沒有一勞永逸的解決方案,必須根據(jù)手頭的特定問題仔細選擇優(yōu)化器。在下一節(jié)中,我將提出在決定使用某個優(yōu)化器之前應(yīng)該問自己的三個問題。

與你的數(shù)據(jù)集和任務(wù)類似的state-of-the-art的結(jié)果是什么?使用過了哪些優(yōu)化器,為什么?

如果你正在使用新的機器學(xué)習(xí)方法,可能會有一篇或多篇涵蓋類似問題或處理類似數(shù)據(jù)的可靠論文。通常,論文的作者已經(jīng)做了廣泛的交叉驗證,并且只報告了最成功的配置。試著理解他們選擇優(yōu)化器的原因。

舉例:假設(shè)你想訓(xùn)練生成對抗性網(wǎng)絡(luò)(GAN)來對一組圖像執(zhí)行超分辨率。在一些研究之后,你偶然發(fā)現(xiàn)了一篇論文:”Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network,” ,其中研究人員使用Adam優(yōu)化器來解決完全相同的問題。Wilson等人認(rèn)為,訓(xùn)練GANs并不等于解決最優(yōu)化問題,Adam可能非常適合這樣的場景。因此,在這種情況下,Adam是優(yōu)化器的一個很好的選擇。

你的數(shù)據(jù)集是否具有某些優(yōu)化器的優(yōu)勢?如果有,是哪些,如何利用這些優(yōu)勢?

表1顯示了不同優(yōu)化器及其優(yōu)缺點的概述。嘗試找到與數(shù)據(jù)集的特征、訓(xùn)練設(shè)置和目標(biāo)相匹配的優(yōu)化器。

某些優(yōu)化器在具有稀疏特征的數(shù)據(jù)上表現(xiàn)得非常好,而另一些優(yōu)化器在將模型應(yīng)用于之前未見過的數(shù)據(jù)時可能表現(xiàn)得更好。一些優(yōu)化器在大batch中工作得很好,而另一些優(yōu)化器可以收斂到很陡峭的極小值但是泛化效果不好。

表1:流行的優(yōu)化器的總結(jié),突出它們的優(yōu)點和缺點。state memory列表示優(yōu)化器所需的字節(jié)數(shù) —— 除了梯度所需的內(nèi)存之外。其中,n為機器學(xué)習(xí)模型的參數(shù)個數(shù)。例如,沒有動量的SGD只需要內(nèi)存來存儲梯度,而有動量的SGD也需要存儲梯度的移動平均值。

例子:對于你當(dāng)前工作的項目,你必須將用戶反饋分為積極反饋和消極反饋。你考慮使用bag-of-words作為機器學(xué)習(xí)模型的輸入特征。由于這些特征可能非常稀疏,你決定使用自適應(yīng)梯度的方法。但是你想用哪一種呢?考慮表1,你看到看到AdaGrad具有自適應(yīng)梯度方法中最少的可調(diào)參數(shù)??吹侥愕捻椖坑邢薜臅r間表,你選擇了AdaGrad作為優(yōu)化器。

你的項目所具有資源是什么?

項目中可用的資源也會影響選擇哪個優(yōu)化器。計算限制或內(nèi)存約束,以及項目的時間表可以縮小可行選擇的范圍。再次查看表1,你可以看到不同的內(nèi)存需求和每個優(yōu)化器的可調(diào)參數(shù)數(shù)量。此信息可以幫助你評估你的設(shè)置是否支持優(yōu)化器所需的資源。

例子:你在做一個項目,在該項目中,你想在家用計算機上的圖像數(shù)據(jù)集上訓(xùn)練一個自監(jiān)督模型(例如SimCLR)。對于SimCLR這樣的模型,性能隨著batch size大小的增加而增加。因此,你希望盡可能地節(jié)省內(nèi)存,以便能夠進行大batch的訓(xùn)練。你選擇一個簡單的不帶動量的隨機梯度下降作為你的優(yōu)化器,因為與其他優(yōu)化器相比,它需要最少的額外內(nèi)存來存儲狀態(tài)。

總結(jié)

嘗試所有可能的優(yōu)化器來為自己的項目找到最好的那一個并不總是可能的。在這篇博客文章中,我概述了最流行的優(yōu)化器的更新規(guī)則、優(yōu)缺點和需求。此外,我列出了三個問題來指導(dǎo)你做出明智的決定,即機器學(xué)習(xí)項目應(yīng)該使用哪個優(yōu)化器。

作為一個經(jīng)驗法則:如果你有資源找到一個好的學(xué)習(xí)率策略,帶動量的SGD是一個可靠的選擇。如果你需要快速的結(jié)果而不需要大量的超參數(shù)調(diào)優(yōu),請使用自適應(yīng)梯度方法。

責(zé)任編輯:lq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4284

    瀏覽量

    62325
  • 機器學(xué)習(xí)
    +關(guān)注

    關(guān)注

    66

    文章

    8353

    瀏覽量

    132315
  • 數(shù)據(jù)集
    +關(guān)注

    關(guān)注

    4

    文章

    1200

    瀏覽量

    24621

原文標(biāo)題:在機器學(xué)習(xí)項目中該如何選擇優(yōu)化器

文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    幾種常見的控制方法及其優(yōu)缺點

    。 溫度控制系統(tǒng)是變參數(shù)、有時滯和隨機干擾的動態(tài)系統(tǒng),為達到滿意的控制效果,具有許多控制方法。故對幾種常見的控制方法及其優(yōu)缺點進行了分析與比較。
    的頭像 發(fā)表于 11-09 09:57 ?164次閱讀
    <b class='flag-5'>幾種</b>常見的控制方法及其<b class='flag-5'>優(yōu)缺點</b>

    分析各種光開關(guān)的優(yōu)缺點和它們的應(yīng)用領(lǐng)域

    光開關(guān)作為光通信領(lǐng)域的關(guān)鍵器件,其類型多樣,各有優(yōu)缺點,并廣泛應(yīng)用于不同的領(lǐng)域。以下是對幾種典型光開關(guān)的優(yōu)缺點及其應(yīng)用領(lǐng)域的分析: 一、機械式光開關(guān) 優(yōu)點 : 插入損耗低 :通常可以達
    的頭像 發(fā)表于 09-24 09:22 ?852次閱讀

    內(nèi)存控制有哪些優(yōu)缺點

    內(nèi)存控制作為計算機系統(tǒng)中的核心組件之一,在提高系統(tǒng)性能、優(yōu)化數(shù)據(jù)傳輸以及確保數(shù)據(jù)穩(wěn)定性方面發(fā)揮著至關(guān)重要的作用。然而,它同樣存在一些不可忽視的優(yōu)缺點。
    的頭像 發(fā)表于 09-04 14:20 ?234次閱讀

    便攜式天線設(shè)備升降桿的用途優(yōu)缺點分析

    便攜式天線設(shè)備升降桿的用途優(yōu)缺點分析
    發(fā)表于 08-22 12:30 ?0次下載

    繼電保護的種類及其優(yōu)缺點

    繼電保護在電力系統(tǒng)中扮演著至關(guān)重要的角色,它們負(fù)責(zé)監(jiān)測電力系統(tǒng)中的電氣參數(shù)和信號,并在系統(tǒng)發(fā)生故障或異常情況時迅速切斷電路,以保護電氣設(shè)備和人員的安全。根據(jù)不同的分類標(biāo)準(zhǔn),繼電保護可以分為多種類型,每種類型都有其獨特的優(yōu)缺點
    的頭像 發(fā)表于 08-09 09:44 ?615次閱讀

    各種電機的類型、優(yōu)缺點及應(yīng)用

    電機作為現(xiàn)代工業(yè)和科技領(lǐng)域的核心動力裝置,其種類繁多,各具特色,廣泛應(yīng)用于各個領(lǐng)域。本文將對幾種常見的電機類型進行詳細介紹,包括其優(yōu)缺點以及主要應(yīng)用領(lǐng)域,以便讀者能夠更好地了解和選擇適
    的頭像 發(fā)表于 06-04 16:52 ?2881次閱讀

    PWM控制優(yōu)缺點分析

    存在一些缺點,如成本較高、可能產(chǎn)生噪聲等。本文將對PWM控制優(yōu)缺點進行詳細分析,并結(jié)合實際應(yīng)用案例進行探討。
    的頭像 發(fā)表于 06-04 15:07 ?1443次閱讀

    nbiot和lora的優(yōu)缺點是什么?

    nbiot和lora的優(yōu)缺點
    發(fā)表于 06-04 06:37

    STM32中幾種流行的開發(fā)環(huán)境對比

    流行的開發(fā)環(huán)境優(yōu)缺點~一、KeilKeil是一款老牌集成開發(fā)環(huán)境(IDE),而且是一款通用的IDE,兼容市面上大部分單片機。官網(wǎng)地址:https://www.ke
    的頭像 發(fā)表于 04-21 08:10 ?2377次閱讀
    STM32中<b class='flag-5'>幾種</b><b class='flag-5'>流行</b>的開發(fā)環(huán)境對比

    日本大帶寬服務(wù)優(yōu)缺點分析

    日本大帶寬服務(wù)是很多用戶的選擇,那么日本大帶寬服務(wù)優(yōu)缺點都是什么?Rak部落小編為您整理發(fā)布日本大帶寬服務(wù)優(yōu)缺點
    的頭像 發(fā)表于 03-22 10:08 ?420次閱讀

    變頻旁路安裝的優(yōu)缺點

    并聯(lián)連接,使其在需要時可以被旁路繞過。本文將詳盡、詳實、細致地介紹變頻旁路安裝的優(yōu)缺點,并探討其影響因素。 一、變頻旁路安裝優(yōu)點 1. 變頻
    的頭像 發(fā)表于 02-01 14:48 ?1588次閱讀

    濾波電容不同補償方式優(yōu)缺點對比

    濾波電容不同補償方式優(yōu)缺點對比? 濾波電容是電子電路中常用的元件,用于對信號進行濾波處理。不同的補償方式可以幫助提高濾波電容的性能和穩(wěn)定性。本文將詳細介紹幾種常見的濾波電容補償方式的優(yōu)缺點
    的頭像 發(fā)表于 01-04 16:00 ?1058次閱讀

    雙絞線和同軸電纜的特征以及優(yōu)缺點

    雙絞線和同軸電纜的特征以及優(yōu)缺點? 雙絞線和同軸電纜都是用于傳輸信號和數(shù)據(jù)的常見電纜類型。它們在不同的應(yīng)用場景中具有不同的特征和優(yōu)缺點。下面將詳細介紹雙絞線和同軸電纜的特征
    的頭像 發(fā)表于 12-26 16:23 ?4158次閱讀

    分流的作用、原理以及優(yōu)缺點

    于光纖通信、電信網(wǎng)絡(luò)以及家庭娛樂設(shè)備等。本文將詳細介紹分流的作用、原理以及優(yōu)缺點。 分流的作
    的頭像 發(fā)表于 12-09 17:18 ?7380次閱讀

    簡單介紹不同類型濾波優(yōu)缺點

    濾波種類繁多,按實現(xiàn)方式可以分為:LC濾波、腔體濾波、聲表面波/體聲波濾波、螺旋濾波、介質(zhì)濾波
    的頭像 發(fā)表于 11-14 09:39 ?7087次閱讀
    簡單<b class='flag-5'>介紹</b>不同類型濾波<b class='flag-5'>器</b>的<b class='flag-5'>優(yōu)缺點</b>