<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

詳解一種簡單而有效的Transformer提升技術

深度學習自然語言處理 ? 來源:南大NLP ? 作者:NAACL2021 吳震 ? 2021-04-09 09:50 ? 次閱讀

01研究背景及動機

近些年,Transformer[1]逐漸成為了自然語言處理中的主流結構。為了進一步提升Transformer的性能,一些工作通過引入額外的結構或知識來提升Transformer在特定任務上的表現。盡管如此,過參數化(over-parameterization)和過擬合(overfitting)一直是Transformer中的一個顯著問題。作為一種正則化技術,Dropout常被用來緩解模型的過擬合問題[2]。和引入額外結構或知識的工作相比,dropout的一個優勢是不需要額外的計算開銷和外部資源。因此,本文的出發點在于,能否通過融合不同的dropout技術來進一步提升Transformer的性能甚至達到state-of-the-art效果?

為此,我們提出UniDrop技術,從細粒度到粗粒度將三種不同層次的dropout整合到Transformer結構中,它們分別為feature dropout、structure dropout和data dropout 。Feature dropout (FD),即傳統的dropout技術[2],通常應用在網絡的隱層神經元上。Structure dropout (SD)是一種較粗粒度的dropout,旨在隨機drop模型中的某些子結構或組件。Data dropout (DD)作為一種數據增強方法,通常用來隨機刪除輸入sequence的某些tokens。在UniDrop中,我們從理論上分析了這三層dropout技術在Transformer正則化過程中起到了不同的作用,并在8個機器翻譯任務上和8個文本分類任務上驗證了UniDrop的有效性。

02UniDrop

2.1Transformer結構

UniDrop旨在提升Transformer的性能。在UniDrop中,feature dropout和structure dropout的使用與網絡結構密切相關。因此,我們簡單回顧Transformer的網絡結構。

f27843de-98d3-11eb-8b86-12bb97331649.png

圖1:標準Transformer結構和Feature Dropout

如圖1(a)所示,Transformer由多個相同的block堆疊而成,每個block包含兩個sub-layer,分別為multi-head self-attention layer和position-wise fully connected feed-forward layer,每個sub-layer后都使用了殘差連接和層正則(Add&Norm)。

Multi-head Attention:Multi-head attention sub-layer包含多個并行的attention head,每個head通過帶縮放的點乘attention將query Q和鍵值對K、V映射乘輸出,如下式所示:

f2b1ba60-98d3-11eb-8b86-12bb97331649.png

多個head的輸出最終被拼接在一起并做線性映射作為最終的multi-head attention輸出。

Position-wise Feed-Forward:這一層主要包含兩個線性映射和一個ReLU激活函數:

f2beb904-98d3-11eb-8b86-12bb97331649.png

2.2Feature Dropout

如前所述,Feature Dropout (FD)即傳統的dropout技術[2],可以以一定的概率隨機抑制網絡中的某些神經元。實際上,在標準的Transformer實現中,每個sub-layer后都默認配置了dropout。除此之外,Transformer也在multi-head attention和feed-forward network的激活函數層添加了dropout,本文將探索它們對Transformer性能的影響:

FD-1 (attention dropout):根據公式(1),在multi-head attention中,我們可以獲得attention權重A=QKT,feature dropout FD-1被應用在attention權重A上。

FD-2 (activation dropout):FD-2被應用在feed-forward network sub-layer兩層線性變換間的激活函數上。

除了上面已有的feature dropout,我們在預實驗中發現Transformer仍有過擬合的風險。因此,我們額外提出兩種feature dropout添加到Transformer結構中:

FD-3 (query, key, value dropout):FD-1直接應用在attention權重A上,表示token i和token j之間的connection有可能被drop,一個更大的FD-1值意味著更大的概率失去sequence中一些關鍵的connection。為了緩解這種風險,我們在attention之前的query Q、key K和value V上分別添加了dropout。

FD-4 (output dropout):我們在softmax分類的線性映射前也添加了dropout。具體而言,對sequence2sequence任務,我們將FD-4添加到Transformer decoder中,對于文本分類任務我們將FD-4添加到Transformer encoder中。

2.3Structure Dropout

為了提升Transformer的泛化性,之前的工作已經提出了兩種Structure Dropout (SD),分別是LayerDrop[3]和DropHead[4]。DropHead通過隨機舍棄一些attention head,從而防止multi-head attention機制被某些head主導,最終提升multi-head attention的泛化性。相比之下,LayerDrop是一種更高級別的結構dropout,它能隨機舍棄Transformer的某些層,從而直接降低Transformer中的模型大小。通過預實驗分析,我們將LayerDrop添加到我們的UniDrop中。

2.4Data Dropout

Data Dropout (DD)以一定的概率p隨機刪除輸入序列中tokens。然而,直接應用data dropout很難保留原始高質量的樣本,對于一個長度為n的sequence,我們保留住原始sequence的概率為(1-p)n,當n較大時,這個概率將會非常低。失去原始高質量樣本對很多任務都是不利的。為了保留原始高質量的樣本,同時又能利用data dropout進行數據增強,我們在UniDrop中提出了一個2-stage data dropout方案。對于給定的sequence,我們以一定的概率 pk保留原始的樣本,當data dropout被應用時(概率為1- pk),我們以預定的概率p來隨機刪除序列中的tokens。

2.5UniDrop整合

最終,我們將上面三種不同粒度的dropout技術集成到我們的UniDrop中,并從理論上分析了feature dropout、structure dropout、data dropout能夠正則Transformer的不同項并且不能相互取代,具體分析可參考論文。Figure 2是UniDrop的簡單示例。

f2d2db1e-98d3-11eb-8b86-12bb97331649.png

圖2:UniDrop示例

03實驗與分析

我們在序列生成(機器翻譯)和文本分類兩個任務上來驗證UniDrop的性能。

3.1神經機器翻譯

我們在IWSLT14數據集上進行了機器翻譯實驗,共4個語言對,8個翻譯任務,baseline為標準的Transformer結構,實驗結果如表1所示:

f33983a0-98d3-11eb-8b86-12bb97331649.png

表1:不同模型在IWSLT14翻譯任務上的結果

可以看到,相比于標準的Transformer,我們的UniDrop在所有任務翻譯任務上都取得了一致且顯著的提升。為了驗證UniDrop中每種dropout的作用,我們進行了ablation study實驗,也在標準Transformer添加單一的dropout去驗證它們的性能。從結果看,FD、SD和DD都能在一定程度上提升Transformer的性能,并能夠協同工作,最終進一步提升Transformer的泛化性。

為了進一步驗證UniDrop的優越性,我們也在廣泛被認可的benchmarkIWSLT14 De→En翻譯任務上和其他系統進行了對比。這些系統從不同的方面提升機器翻譯,如訓練算法設計(Adversarial MLE)、模型結構設計(DynamicConv)、引入外部知識(BERT-fused NMT)等??梢钥吹?,我們的Transformer+UniDrop仍然顯著超過了其他系統。

f371701c-98d3-11eb-8b86-12bb97331649.png

表2:不同系統在IWSLT14 De→En翻譯任務上的表現

3.2文本分類

對于文本分類任務,我們以RoBERTaBASE作為backbone,在4個GLUE數據集上和4個傳統的文本分類數據集上進行了實驗,結果如表3和表4所示:

f386802e-98d3-11eb-8b86-12bb97331649.png

表3:不同模型在GLUE tasks (dev set)上的準確率

f39a732c-98d3-11eb-8b86-12bb97331649.png

表4:不同模型在傳統文本分類任務上的準確率

可以看到,作為一個強大的預訓練模型,RoBERTaBASE顯著超過了其他方法。即使如此,UniDrop仍然能夠進一步提升RoBERTaBASE的性能,這進一步驗證了UniDrop對Transformer模型的有效性。

3.3分析

為了展現UniDrop能夠有效防止Transformer過擬合,我們畫出了不同模型在IWSLT14 De→En翻譯驗證集上的loss曲線,如圖3所示:

f3b2636a-98d3-11eb-8b86-12bb97331649.png

圖3:不同模型在IWSLT14 De→En翻譯上的dev loss

可以看到,標準的Transformer結構隨著訓練輪數的增加,很容易出現過擬合現象。相比之下,FD、SD、DD都在一定程度上緩解了Transformer的過擬合問題。在所有對比模型中,我們的UniDrop取得了最低的dev loss,并且dev loss能持續下降,直到訓練結束。綜合來看,UniDrop在預防Transformer過擬合問題上取得了最好的表現。

此外,我們也進行了細粒度的ablation study實驗來探究不同的feature dropout以及我們2-stage data dropout對Transformer性能的影響,結果如表5所示:

f4117ee0-98d3-11eb-8b86-12bb97331649.png

表5:Ablation Study

可以看到,FD-3比FD-1帶來更多的提升,這也驗證了我們之前的分析,僅使用FD-1對提升multi-head attention的泛化性來說是不夠的。另外,表5表明我們提出的2-stage data dropout策略對提升性能是有幫助的,這體現了保留原始高質量樣本的必要性。

04總結與展望

過擬合是Transformer結構中一個常見的問題,dropout技術常被用來防止模型過擬合。本文中,我們提出了一種集成的dropout技術UniDrop,它由細粒度到粗粒度,將三種不同類型的dropout(FD、SD、DD)融合到Transformer結構中。我們從理論上分析UniDrop中的三種dropout技術能夠從不同的方面防止Transformer過擬合,在機器翻譯和文本分類任務上的實驗結果也體現了UniDrop的有效性和優越性,更重要的,它不需要額外的計算開銷和外部資源。更多的細節、結果以及分析請參考原論文。
編輯:lyn

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Dropout
    +關注

    關注

    0

    文章

    13

    瀏覽量

    9996
  • Transformer
    +關注

    關注

    0

    文章

    130

    瀏覽量

    5908
  • 自然語言處理

    關注

    1

    文章

    510

    瀏覽量

    13195

原文標題:UniDrop:一種簡單而有效的Transformer提升技術

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    【大語言模型:原理與工程實踐】大語言模型的基礎技術

    模型仍以Transformer為基礎進行訓練。Transformer一種基于自注意力機制的編碼器-解碼器結構,其核心由編碼器和解碼器組成,每個部分均由多個相同層堆疊而成。自注意力機制使
    發表于 05-05 12:17

    如何成為名嵌入式C語言高手?

    。 三、通過實踐項目提升技能理論知識是建立在實踐基礎之上的。選擇些小型的嵌入式項目,例如LED閃爍、溫度監測等簡單的應用,將所學的C語言知識應用到實際中。通過實踐,你可以了解如何將C語言程序移植到嵌入式
    發表于 04-07 16:03

    如何成為名嵌入式C語言高手?

    。 三、通過實踐項目提升技能理論知識是建立在實踐基礎之上的。選擇些小型的嵌入式項目,例如LED閃爍、溫度監測等簡單的應用,將所學的C語言知識應用到實際中。通過實踐,你可以了解如何將C語言程序移植到嵌入式
    發表于 03-25 14:12

    AEB是一種汽車主動安全技術,主要由哪3大模塊構成?

    AEB是一種汽車主動安全技術,主要由哪3大模塊構成
    發表于 02-20 06:06

    Transformer壓縮部署的前沿技術:RPTQ與PB-LLM

    隨著人工智能技術的迅速發展,Transformer在自然語言處理、機器翻譯、問答系統等領域取得了顯著的性能提升。
    的頭像 發表于 01-24 14:05 ?665次閱讀
    <b class='flag-5'>Transformer</b>壓縮部署的前沿<b class='flag-5'>技術</b>:RPTQ與PB-LLM

    基于Transformer的多模態BEV融合方案

    由于大量的相機和激光雷達特征以及注意力的二次性質,將 Transformer 架構簡單地應用于相機-激光雷達融合問題是很困難的。
    發表于 01-23 11:39 ?282次閱讀
    基于<b class='flag-5'>Transformer</b>的多模態BEV融合方案

    如何提升單片機開發技術?

    單片機開發是現代電子技術中的重要分支,其在各個領域都有著廣泛的應用。單片機開發技術提升不僅可以提高工作效率,還可以提高工作質量和創新能力。那么,如何提升單片機開發
    發表于 01-05 10:14

    硬件開發少走彎路,來華秋這場研討會提升技

    上市,以及長期可靠使用的至關重要的因素。 如何有效利用DFM及EDA工具? 如何避坑電子產品設計與制造問題,提升產品可制造性? 如何做好質量與成本的平衡與控制,為企業增效降本? 如何保障PCB及PCBA
    發表于 11-10 14:14

    重新審視Transformer:倒置更有效,真實世界預測的新SOTA出現了

    Transformer 在時間序列預測中出現了強大能力,可以描述成對依賴關系和提取序 列中的多層次表示。然而,研究人員也質疑過基于 Transformer 的預測器的有效性。這種預測器通常
    的頭像 發表于 11-05 20:15 ?374次閱讀
    重新審視<b class='flag-5'>Transformer</b>:倒置更<b class='flag-5'>有效</b>,真實世界預測的新SOTA出現了

    LLM的Transformer是否可以直接處理視覺Token?

    多種LLM Transformer都可以提升Visual Encoding。例如用LLaMA和OPT的不同Transformer層都會有提升,而且不同層之間也會體現不同的規律。
    發表于 11-03 14:10 ?290次閱讀
    LLM的<b class='flag-5'>Transformer</b>是否可以直接處理視覺Token?

    Faster Transformer v1.0源碼詳解

    寫在前面:本文將對 Nvidia BERT 推理解決方案 Faster Transformer 源碼進行深度剖析,詳細分析作者的優化意圖,并對源碼中的加速技巧進行介紹,希望對讀者有所幫助。本文源碼
    的頭像 發表于 09-08 10:20 ?553次閱讀
    Faster <b class='flag-5'>Transformer</b> v1.0源碼<b class='flag-5'>詳解</b>

    AMD或將于9月發布顯卡一鍵性能提升技術

    據了解,AMD早在去年 RX 7900顯卡發布會上就提到了 HYPR-RX顯卡一鍵性能提升技術。而該技術結合了Radeon Super Resolution、Radeon Boost
    的頭像 發表于 08-28 11:46 ?464次閱讀

    BEV人工智能transformer

    BEV人工智能transformer? 人工智能Transformer技術一種自然語言處理領域的重要技術,廣泛應用于自然語言理解、機器翻譯
    的頭像 發表于 08-22 15:59 ?656次閱讀

    transformer模型詳解Transformer 模型的壓縮方法

    剪枝在高稀疏率時往往不可避免地刪除表達神經元,這將導致模型性能嚴重降低。低秩近似則旨在壓縮表達神經元,它對于壓縮神經元中的相干部分十分有效,其本質就是提取神經元共享相干子空間的公共基,該方法在 Transformer 結構上也遇到了困難,不
    的頭像 發表于 07-17 10:50 ?1429次閱讀
    <b class='flag-5'>transformer</b>模型<b class='flag-5'>詳解</b>:<b class='flag-5'>Transformer</b> 模型的壓縮方法

    Transformer結構及其應用詳解

    本文首先詳細介紹Transformer的基本結構,然后再通過GPT、BERT、MT-DNN以及GPT-2等基于Transformer的知名應用工作的介紹并附上GitHub鏈接,看看Transformer是如何在各個著名的模型中大
    的頭像 發表于 06-08 09:56 ?1522次閱讀
    <b class='flag-5'>Transformer</b>結構及其應用<b class='flag-5'>詳解</b>
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>