比BERT-BASE小4.3倍,快5.5倍 ! MobileBERT將開源

最近,自然語言處理(NLP)通過使用具有數億個參數的大型預訓練模型而獲得了巨大的成功。


然而,作為NLP中最大的模型之一,BERT模型體積大,延遲時間長,資源有限的移動設備無法將BERT的能力應用到基於移動的機器翻譯、對話建模等方面。


來自CMU與谷歌大腦的實習生同學共同提出了MobileBERT,將用於壓縮和加速BERT模型。


與BERT一樣,MobileBERT也是任務無偏(task-agnostic)的,即可以通過微調將其普遍應用在各種下游NLP任務之上。MobileBERT是BERT-LARGE的精簡版,增加了瓶頸結構,並在self-attention和前饋網絡間做了精細的平衡設計。


代碼及預訓練模型將開源在以下地址:

https://github.com/google-research/google-research/mobilebert


為了訓練MobileBERT,研究人員使用了自上而下的漸進方案,用專門設計的反向瓶頸BERT-LARGE teacher模型將其中知識傳遞給MobileBERT。


比BERT-BASE小4.3倍,快5.5倍 ! MobileBERT將開源

知識轉移的漸進過程分為L個階段,其中L為層數。圖2展示了漸進式知識轉移的原理圖和算法。漸進遷移的思想是在訓練學生的(l+1)層時,(l)層已經是最優的了。


由於BERT的中間狀態沒有軟目標分佈,研究人員提出了兩個知識轉移目標: feature map transfer和attention transfer來訓練學生網絡。特別地,假設老師和學生有相同的1)feature map的大小,2)層的數量,3)attention heads的數量。

FEATURE MAP TRANSFER (FMT)


由於BERT中的每一層僅僅是將前一層的輸出作為輸入,所以在逐步訓練學生網絡時,最重要的是每一層的feature maps應該儘可能接近於教師的feature maps,即優化的。其中,以學生與教師歸一化特徵圖的均方誤差為目標:


比BERT-BASE小4.3倍,快5.5倍 ! MobileBERT將開源


其中l為層索引,T為序列長度,N為特徵映射大小。增加層間歸一化以穩定層間訓練損失。


最小化了特徵圖轉換中均值和方差的兩個統計差異:


比BERT-BASE小4.3倍,快5.5倍 ! MobileBERT將開源

µ和σ2代表均值和方差。實驗表明,在BERT中去除層標準化以減少推理延遲時,最小化統計差異是有幫助的。

ATTENTION TRANSFER (AT)


BERT中的注意分佈可以檢測出詞語之間合理的語義和句法關係。


這激發了研究者使用來自優化過的教師的“自我注意maps”來幫助訓練學生在增強到“feature map transfer”的過程中。特別是,我們最小化了教師和學生的pre-head的(head平均的)注意力分佈的kl-散度:


比BERT-BASE小4.3倍,快5.5倍 ! MobileBERT將開源

A是attention heads的數目。


研究表明,MobileBERT比BERT_BASE小4.3倍,快5.5倍,同時在眾所周知的基準測試中獲得了有競爭力的結果。在GLUE的自然語言推理任務上,MobileBERT的GLUEscore達到77.7(比BERT_BASE低0.6),在Pixel 4手機上的延遲為62毫秒。在SQuAD v1.1 / v2.0問題解答任務上,MobileBERT的dev F1得分為90.0 / 79.2(比BERT_BASE高1.5 / 2.1)。


論文鏈接:

https://arxiv.org/pdf/2004.02984.pdf


比BERT-BASE小4.3倍,快5.5倍 ! MobileBERT將開源


分享到:


相關文章: