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

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

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

改進(jìn)Hinton的Dropout:可以用來減輕欠擬合了

深度學(xué)習(xí)自然語言處理 ? 來源:機(jī)器之心 ? 2023-03-13 10:15 ? 次閱讀

深度學(xué)習(xí)三巨頭之一 Geoffrey Hinton 在 2012 年提出的 dropout 主要用來解決過擬合問題,但近日的一項(xiàng)工作表明,dropout 能做的事情不止于此。

2012 年,Hinton 等人在其論文《Improving neural networks by preventing co-adaptation of feature detectors》中提出了 dropout。同年,AlexNet 的出現(xiàn)開啟了深度學(xué)習(xí)的新紀(jì)元。AlexNet 使用 dropout 顯著降低了過擬合,并對(duì)其在 ILSVRC 2012 競(jìng)賽中的勝利起到了關(guān)鍵作用??梢赃@么說,如果沒有 dropout,我們目前在深度學(xué)習(xí)領(lǐng)域看到的進(jìn)展可能會(huì)被推遲數(shù)年。

自 dropout 推出以后,它被廣泛用作正則化器,降低神經(jīng)網(wǎng)絡(luò)中的過擬合。dropout 使用概率 p 停用每個(gè)神經(jīng)元,防止不同的特征相互適應(yīng)。應(yīng)用 dropout 之后,訓(xùn)練損失通常增加,而測(cè)試誤差減少,從而縮小模型的泛化差距。深度學(xué)習(xí)的發(fā)展不斷引入新的技術(shù)和架構(gòu),但 dropout 依然存在。它在最新AI 成果中繼續(xù)發(fā)揮作用,比如 AlphaFold 蛋白質(zhì)預(yù)測(cè)、DALL-E 2 圖像生成等,展現(xiàn)出了通用性和有效性。

盡管 dropout 持續(xù)流行,但多年來其強(qiáng)度(以drop rate p 表示)一直在下降。最初的 dropout 工作中使用了 0.5 的默認(rèn)drop rate。然而近年來常常采用較低的drop rate,比如 0.1,相關(guān)示例可見訓(xùn)練 BERT 和 ViT。這一趨勢(shì)的主要?jiǎng)恿κ强捎糜?xùn)練數(shù)據(jù)的爆炸式增長(zhǎng),使得過擬合越來越困難。加之其他因素,我們可能很快會(huì)遇到更多欠擬合而非過擬合問題。

近日在一篇論文《Dropout Reduces Underfitting》中,Meta AI、加州大學(xué)伯克利分校等機(jī)構(gòu)的研究者展示了如何使用 dropout 來解決欠擬合問題。

af69e298-c142-11ed-bfe3-dac502259ad0.png

論文標(biāo)題:

Dropout Reduces Underfitting

論文鏈接:

https://arxiv.org/abs/2303.01500

他們首先通過對(duì)梯度范數(shù)的有趣觀察來研究 dropout 的訓(xùn)練動(dòng)態(tài),然后得出了一個(gè)關(guān)鍵的實(shí)證發(fā)現(xiàn):在訓(xùn)練初始階段,dropout 降低小批量的梯度方差,并允許模型在更一致的方向上更新。這些方向也更與整個(gè)數(shù)據(jù)集的梯度方向保持一致,具體如下圖 1 所示。

因此,模型可以更有效地優(yōu)化整個(gè)訓(xùn)練集的訓(xùn)練損失,而不會(huì)受到個(gè)別小批量的影響。換句話說,dropout 抵消了隨機(jī)梯度下降(SGD)并防止訓(xùn)練早期采樣小批量的隨機(jī)性所造成的過度正則化。

af825184-c142-11ed-bfe3-dac502259ad0.png

基于這一發(fā)現(xiàn),研究者提出了 early dropout(即 dropout 僅在訓(xùn)練早期使用),來幫助欠擬合模型更好地?cái)M合。與無 dropout 和標(biāo)準(zhǔn) dropout 相比,early dropout 降低了最終的訓(xùn)練損失。相反,對(duì)于已經(jīng)使用標(biāo)準(zhǔn) dropout 的模型,研究者建議在早期訓(xùn)練 epoch 階段移除 dropout 以降低過擬合。他們將這一方法稱為 late dropout,并證明它可以提升大模型的泛化準(zhǔn)確率。下圖 2 比較了標(biāo)準(zhǔn) dropout、early 和 late dropout。

afd0d444-c142-11ed-bfe3-dac502259ad0.png

研究者在圖像分類和下游任務(wù)上使用不同的模型來評(píng)估 early dropout 和 late dropout,結(jié)果顯示二者始終比標(biāo)準(zhǔn) dropout 和無 dropout 產(chǎn)生了更好的效果。他們希望自己的研究發(fā)現(xiàn)可以為 dropout 和過擬合提供新穎的見解,并激發(fā)人們進(jìn)一步開發(fā)神經(jīng)網(wǎng)絡(luò)正則化器。

分析與驗(yàn)證

在提出 early dropout 和 late dropout 之前,該研究探討了是否可以使用 dropout 作為減少欠擬合的工具。該研究使用其提出的工具和指標(biāo)對(duì) dropout 的訓(xùn)練動(dòng)態(tài)進(jìn)行了詳細(xì)分析,并比較了 ImageNet 上兩個(gè) ViT-T/16 的訓(xùn)練過程(Deng et al., 2009):一個(gè)沒有 dropout 作為基線;另一個(gè)在整個(gè)訓(xùn)練過程中有 0.1 的 dropout 率。

梯度范數(shù)(norm)。該研究首先分析了 dropout 對(duì)梯度 g 強(qiáng)度的影響。如下圖 6(左)所示,dropout 模型產(chǎn)生范數(shù)較小的梯度,表明它在每次梯度更新時(shí)采用較小的步長(zhǎng)(step)。

模型距離。由于梯度步長(zhǎng)更小,我們期望 dropout 模型相對(duì)于其初始點(diǎn)移動(dòng)的距離比基線模型更小。如下圖 6(右)所示,該研究繪制了每個(gè)模型與其隨機(jī)初始化的距離。然而,令人驚訝的是,dropout 模型實(shí)際上比基線模型移動(dòng)了更大的距離,這與該研究最初基于梯度范數(shù)的預(yù)期相反。

aff07286-c142-11ed-bfe3-dac502259ad0.png

梯度方向方差。該研究首先假設(shè) dropout 模型在小批量中產(chǎn)生更一致的梯度方向。下圖 7 所示的方差與假設(shè)基本一致。直到一定的迭代次數(shù)(大約 1000 次)以后,dropout 模型和基線模型的梯度方差都在一個(gè)較低的水平波動(dòng)。

b03f45d2-c142-11ed-bfe3-dac502259ad0.png

梯度方向誤差。然而,正確的梯度方向應(yīng)該是什么?為了擬合訓(xùn)練數(shù)據(jù),基本目標(biāo)是最小化整個(gè)訓(xùn)練集的損失,而不僅僅是任何一個(gè)小批量的損失。該研究在整個(gè)訓(xùn)練集上計(jì)算給定模型的梯度,其中 dropout 設(shè)置為推理模式以捕獲完整模型的梯度。梯度方向誤差如下圖 8 所示。

b062345c-c142-11ed-bfe3-dac502259ad0.png

基于上述分析,該研究發(fā)現(xiàn)盡早使用 dropout 可以潛在地提高模型對(duì)訓(xùn)練數(shù)據(jù)的擬合能力。而是否需要更好地?cái)M合訓(xùn)練數(shù)據(jù)取決于模型是處于欠擬合還是過擬合狀態(tài),這可能很難精確定義。該研究使用如下標(biāo)準(zhǔn):

1. 如果一個(gè)模型在標(biāo)準(zhǔn) dropout 下泛化得更好,則認(rèn)為它處于過擬合狀態(tài);

2. 如果模型在沒有 dropout 的情況下表現(xiàn)更好,則認(rèn)為它處于欠擬合狀態(tài)。

模型所處的狀態(tài)不僅取決于模型架構(gòu),還取決于所使用的數(shù)據(jù)集和其他訓(xùn)練參數(shù)。

然后,該研究提出了 early dropout 和 late dropout 兩種方法:

early dropout:在默認(rèn)設(shè)置下,欠擬合狀態(tài)下的模型不使用 dropout。為了提高其適應(yīng)訓(xùn)練數(shù)據(jù)的能力,該研究提出 early dropout:在某個(gè)迭代之前使用 dropout,然后在其余的訓(xùn)練過程中禁用 dropout。該研究實(shí)驗(yàn)表明,early dropout 減少了最終的訓(xùn)練損失并提高了準(zhǔn)確性。

late dropout:過擬合模型的訓(xùn)練設(shè)置中已經(jīng)包含了標(biāo)準(zhǔn)的 dropout。在訓(xùn)練的早期階段,dropout 可能會(huì)無意中造成過擬合,這是不可取的。為了減少過擬合,該研究提出 late dropout:在某個(gè)迭代之前不使用 dropout,而是在其余的訓(xùn)練中使用 dropout。

該研究提出的方法在概念和實(shí)現(xiàn)上都很簡(jiǎn)單,如圖 2 所示。實(shí)現(xiàn)時(shí)需要兩個(gè)超參數(shù):1) 在打開或關(guān)閉 dropout 之前等待的 epoch 數(shù);2)drop rate p,類似于標(biāo)準(zhǔn)的 dropout rate。該研究表明,這兩種超參數(shù)可以保證所提方法的穩(wěn)健性。

實(shí)驗(yàn)及結(jié)果

研究者在具有 1000 個(gè)類和 1.2M 張訓(xùn)練圖像的 ImageNet-1K 分類數(shù)據(jù)集上進(jìn)行了實(shí)證評(píng)估,并報(bào)告了 top-1 驗(yàn)證準(zhǔn)確率。

具體結(jié)果首先如下表 1(上部)所示,early dropout 持續(xù)提升測(cè)試準(zhǔn)確率,降低訓(xùn)練損失,表明早期階段的 dropout 有助于模型更好地?cái)M合數(shù)據(jù)。研究者還展示了使用 drop rate 為 0.1 時(shí)與標(biāo)準(zhǔn) dropout、隨機(jī)深度(s.d.)的比較結(jié)果,這兩者都對(duì)模型具有負(fù)面影響。

此外,研究者將訓(xùn)練 epoch 增加一倍并減少 mixup 和 cutmix 強(qiáng)度,從而改進(jìn)了這些小模型的方法。下表 1(底部)的結(jié)果表明,基線準(zhǔn)確率顯著提升,有時(shí)甚至大大超越了以往工作的結(jié)果。

b0b8aea4-c142-11ed-bfe3-dac502259ad0.png

為了評(píng)估 late dropout,研究者選擇了更大的模型,即分別具有 59M 和 86M 參數(shù)的 ViT-B 和 Mixer-B,使用了基礎(chǔ)的訓(xùn)練方法。

結(jié)果如下表 3 所示,與標(biāo)準(zhǔn) s.d. 相比,late s.d. 提升了測(cè)試準(zhǔn)確率。這一提升是在保持 ViT-B 或增加 Mixer-B 訓(xùn)練損失的同時(shí)實(shí)現(xiàn)的,表明 late s.d. 有效降低了過擬合。

b0e8ad98-c142-11ed-bfe3-dac502259ad0.png

最后,研究者在下游任務(wù)上對(duì)預(yù)訓(xùn)練 ImageNet-1K 模型進(jìn)行微調(diào),并對(duì)它們進(jìn)行評(píng)估。下游任務(wù)包括 COCO 目標(biāo)檢測(cè)與分割、ADE20K 語義分割以及在 C-100 等五個(gè)數(shù)據(jù)集上的下游分類。目標(biāo)是在微調(diào)階段不使用 early dropout 或 late dropout 的情況下評(píng)估學(xué)得的表示。

結(jié)果如下表 4、5 和 6 所示,首先當(dāng)在 COCO 上進(jìn)行微調(diào)時(shí),使用 early dropout 或 s.d. 進(jìn)行預(yù)訓(xùn)練的模型始終保持優(yōu)勢(shì)。

b157f59a-c142-11ed-bfe3-dac502259ad0.png

其次對(duì)于 ADE20K 語義分割任務(wù)而言,使用本文方法進(jìn)行預(yù)訓(xùn)練的模型優(yōu)于基準(zhǔn)模型。

b18abc3c-c142-11ed-bfe3-dac502259ad0.png

最后是下游分類任務(wù),本文方法在大多數(shù)分類任務(wù)上提升了泛化性能。

b194344c-c142-11ed-bfe3-dac502259ad0.png

審核編輯 :李倩

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

    關(guān)注

    1

    文章

    3294

    瀏覽量

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

    關(guān)注

    4

    文章

    1209

    瀏覽量

    24777
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5511

    瀏覽量

    121392

原文標(biāo)題:改進(jìn)Hinton的Dropout:可以用來減輕欠擬合了

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    壓保護(hù)電路的少許改進(jìn)方案

    仔細(xì)分析一款簡(jiǎn)單的壓保護(hù)電路發(fā)現(xiàn)它并不能實(shí)現(xiàn)壓保護(hù)功能,需要進(jìn)行改進(jìn)改進(jìn)后的電路比原電路使用的l1個(gè)元件數(shù)量還要少。
    發(fā)表于 01-11 10:38 ?4218次閱讀
    <b class='flag-5'>欠</b>壓保護(hù)電路的少許<b class='flag-5'>改進(jìn)</b>方案

    機(jī)器學(xué)習(xí)基礎(chǔ)知識(shí) 包括評(píng)估問題,理解過擬合、擬合以及解決問題的技巧

    本章涵蓋了以下主題: · 分類和回歸之外的其他類型的問題; · 評(píng)估問題,理解過擬合、擬合,以及解決這些問題的技巧; · 為深度學(xué)習(xí)準(zhǔn)備數(shù)據(jù)。 請(qǐng)記住,在本章中討論的大多數(shù)技術(shù)都是機(jī)器學(xué)習(xí)和深度
    發(fā)表于 07-12 09:28 ?994次閱讀
    機(jī)器學(xué)習(xí)基礎(chǔ)知識(shí) 包括評(píng)估問題,理解過<b class='flag-5'>擬合</b>、<b class='flag-5'>欠</b><b class='flag-5'>擬合</b>以及解決問題的技巧

    FPGA可以用來做數(shù)字電源嗎?

    請(qǐng)問: FPGA可以用來做數(shù)字電源嗎?有參考設(shè)計(jì)案例嗎? FPGA和DSP做數(shù)字電源的優(yōu)缺點(diǎn)是什么?
    發(fā)表于 01-08 22:24

    擬合,擬合以及模型的判斷

    python-學(xué)習(xí)曲線,判斷過擬合,擬合
    發(fā)表于 04-24 10:23

    模型的過擬合擬合總體解決方案

    15 模型的過擬合 & 擬合 & 總體解決方案
    發(fā)表于 05-15 07:49

    深度學(xué)習(xí)中過擬合/擬合的問題及解決方案

    的數(shù)據(jù)可以對(duì)未來的數(shù)據(jù)進(jìn)行推測(cè)與模擬,因此都是使用歷史數(shù)據(jù)建立模型,即使用已經(jīng)產(chǎn)生的數(shù)據(jù)去訓(xùn)練,然后使用該模型去擬合未來的數(shù)據(jù)。 在我們機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的訓(xùn)練過程中,經(jīng)常會(huì)出現(xiàn)過擬合
    發(fā)表于 01-28 06:57

    VHDL語言是什么可以用來干嘛?

    VHDL語言是什么可以用來干嘛
    發(fā)表于 10-18 07:34

    MP3不僅是用來聽的,也可以用來玩的

    MP3不僅是用來聽的,也可以用來玩的 以VX系列MP3為例,將固件及其升級(jí)所帶來的好處做一些案例性的介紹,可以將MP3與手機(jī)的使用做
    發(fā)表于 02-02 11:42 ?652次閱讀

    基于動(dòng)態(tài)dropout改進(jìn)堆疊自動(dòng)編碼機(jī)方法

    針對(duì)堆疊自動(dòng)編碼機(jī)( SA)容易產(chǎn)生過擬合而降低垃圾郵件分類精度的問題,提出了一種基于動(dòng)態(tài)dropout改進(jìn)堆疊自動(dòng)編碼機(jī)方法。首先分析垃圾郵件分類問題的特殊性,將
    發(fā)表于 12-26 14:37 ?0次下載
    基于動(dòng)態(tài)<b class='flag-5'>dropout</b>的<b class='flag-5'>改進(jìn)</b>堆疊自動(dòng)編碼機(jī)方法

    Python編程一般可以用來做什么

    很多朋友可能會(huì)問,為什么要學(xué)Python, 就算學(xué)會(huì)了Python 可以用來干什么呢? 一般都會(huì)首先想到爬蟲.爬蟲不是說的那種蟲子哦, 爬蟲其實(shí)就是 類似于百度蜘蛛,谷歌蜘蛛一樣的. 會(huì)自動(dòng)的爬取網(wǎng)頁上的內(nèi)容。
    發(fā)表于 07-05 14:51 ?6005次閱讀

    擬合和過擬合是什么?解決方法總結(jié)

    擬合是指模型在訓(xùn)練集上表現(xiàn)很好,到了驗(yàn)證和測(cè)試階段就大不如意,即模型的泛化能力很差。
    的頭像 發(fā)表于 01-29 17:48 ?3.2w次閱讀
    <b class='flag-5'>欠</b><b class='flag-5'>擬合</b>和過<b class='flag-5'>擬合</b>是什么?解決方法總結(jié)

    深度學(xué)習(xí)中過擬合、擬合問題及解決方案

    如何判斷過擬合呢?我們?cè)谟?xùn)練過程中會(huì)定義訓(xùn)練誤差,驗(yàn)證集誤差,測(cè)試集誤差(泛化誤差)。訓(xùn)練誤差總是減少的,而泛化誤差一開始會(huì)減少,但到一定程序后不減反而增加,這時(shí)候便出現(xiàn)擬合的現(xiàn)象。
    發(fā)表于 01-22 07:44 ?6次下載
    深度學(xué)習(xí)中過<b class='flag-5'>擬合</b>、<b class='flag-5'>欠</b><b class='flag-5'>擬合</b>問題及解決方案

    cbb電容可以用來阻容降壓?jiǎn)?/a>

    阻容降壓電路也是非常常見的一種電路,它特別簡(jiǎn)單,而且成本極低,性價(jià)比特別高,所以平時(shí)的使用量還是特別大的,通常用于小功率的負(fù)載供電,比如電表、溫控器、LED燈等,cbb電容可以用來阻容降壓?jiǎn)??本?/div>
    的頭像 發(fā)表于 12-31 11:09 ?1466次閱讀
    cbb電容<b class='flag-5'>可以用來</b>阻容降壓?jiǎn)? />    </a>
</div>                            <div   id=

    mos管可以用來轉(zhuǎn)電源極性嗎?

    mos管可以用來轉(zhuǎn)電源極性嗎? MOS管是一個(gè)基本的電子元件,由于其高頻特性、低開關(guān)電阻和低噪聲水平而得到了廣泛的應(yīng)用。它也被稱為“金屬氧化物半導(dǎo)體場(chǎng)效應(yīng)晶體管”(MOSFET)。 它是一種晶體管
    的頭像 發(fā)表于 09-17 09:57 ?761次閱讀

    地球上有多少硅原子可以用來生成晶體管呢?

    硅是常見的元素,那么地球上有多少硅原子可以用來生成晶體管
    的頭像 發(fā)表于 12-22 10:51 ?1612次閱讀
    地球上有多少硅原子<b class='flag-5'>可以用來</b>生成晶體管呢?