性能媲美BERT却只有其1/10参数量? | 近期最火模型ELECTRA解析
快速傳送門???
論文鏈接
https://openreview.net/forum?id=r1xMH1BtvB
Google開源地址
https://github.com/google-research/electra
中文ELECTRA開源地址
https://github.com/ymcui/Chinese-ELECTRA
要說近期NLP領域最吸引眼球的模型之一,恐怕非ELECTRA莫屬了。Electra全稱Efficiently Learning an Encoder that Classifies Token Replacements Accurately,由斯坦福Manning大神與谷歌聯(lián)合發(fā)布。
要問這個模型厲害在哪,先亮個結(jié)果圖鎮(zhèn)一下樓(右圖是左圖虛線框內(nèi)的放大版)
從上圖右邊可以看到,在同等量級(同樣的數(shù)據(jù)規(guī)模,模型大小)下,ELECTRA一直優(yōu)于BERT,Roberta等模型。另外,從上圖左邊可以看出,ELECTRA模型能夠僅用1/4的計算量就達到Roberta的效果,并且隨著模型量級的增加,ELECTRA的性能還能進一步提升。
1
背景?
自Google于2018年提出BERT以來,NLP領域涌現(xiàn)出了一大堆基于BERT的改進,包括關注masked token之間的依賴關系,使用動態(tài)masking等等。但是,越來越優(yōu)秀的性能往往伴隨著越來越長的訓練時間,越來越大的數(shù)據(jù)規(guī)模以及越來越高的硬件要求。
在此背景下,ELECTRA另辟蹊徑,拋棄傳統(tǒng)的MLM(masked language model)任務(詳情見BERT介紹),提出了全新的replaced token detection任務,使得模型在保持性能的前提下大大降低了模型參數(shù)量,提高了模型的運算速度。
2
方法?
語言模型預訓練任務replaced token detection包含兩個步驟:
mask一些input tokens,然后使用一個生成式網(wǎng)絡預測被mask的token
訓練一個判別式網(wǎng)絡來判斷每一個token是否“虛假”
下圖清晰展示了replaced token detection預訓練的整體架構(gòu):
Replaced token detection的優(yōu)化目標函數(shù)為:
加號左邊代表MLM的loss,右邊代表discriminator的loss。在預訓練的時候, generator和discrimiator同時訓練。
Generator網(wǎng)絡其實就是一個小型MLM,discriminator就是論文所說的ELECTRA模型。在預訓練完成之后,generator被丟棄,而判別式網(wǎng)絡會被保留用來做下游任務的基礎模型。
論文指出,replaced token detection之所以比MLM優(yōu)秀,主要原因在于:
MLM僅從15%被mask的tokens學習,而replaced token detection要辨別inputs的所有tokens的“真假”,因而可以學習到所有tokens;
MLM任務中[mask]的存在導致了預訓練和fine-tuning數(shù)據(jù)分布不匹配的問題,而這個問題在ELECTRA模型中不存在。盡管MLM做了一些措施來彌補,但是并沒有完全解決這個問題。
盡管與GAN的訓練目標很像,replaced token detection任務還是與GAN存在一些關鍵性差異:
如果generator正確還原了一些token,這些正確還原的token在discriminator部分會算作真實token。而在GAN中,只要是generator生成的token,就會被當作“虛假”token;
Generator的訓練目標與MLM一樣,而不是像GAN一樣盡力去“迷惑” discriminator。對抗地訓練generator是困難的,因為對文本來說,字詞是離散的,無法用反向傳播把discriminator的梯度傳給generator。針對這一問題,作者嘗試過使用強化學習來訓練generator,但是效果并沒有MLM的效果好;
GAN的輸入是隨機噪聲,而ELECTRA的輸入是真實文本
3
實驗結(jié)果與分析?
3.1 模型擴展
為了提升ELECTRA模型的效果,論文嘗試對模型做了多種擴展,包括:
1. 權(quán)重共享
論文嘗試對generator和discriminator做了兩種權(quán)重共享:token embeddings共享,以及所有權(quán)重共享。
實驗得到,在保持generator和discriminator大小相同的情況下,不共享權(quán)重的GLUE score是83.6,共享token embeddings的GLUE score是84.3,共享所有權(quán)重的score是84.4。論文分析,這是因為generator對token embedding有著更好的學習能力,因此共享token embeddings后discriminator也能獲得更好的token embeddings。
2. 更小的Generator
如果保持generator和discriminator模型大小一樣,ELECTRA大約要花費MLM預訓練的兩倍計算時間,因此論文提出使用小size的generator。GLUE score隨generator和discriminator大小的變化如下圖所示。
根據(jù)結(jié)果可得到,generator的大小為discriminator的1/4-1/2時效果最好。另外,過大的generator會給discriminator帶來過大的挑戰(zhàn),結(jié)果反而會變差。
3. 不同的訓練策略
論文額外嘗試了兩種訓練策略
使用強化學習的方式來進行對抗性訓練
兩步式訓練:先訓練generator,訓練好之后固定住generator,把generator的權(quán)重賦給discriminator,然后開始discriminator的訓練
實驗結(jié)果表明,最初提出的訓練策略是最優(yōu)的,其次是對抗性訓練,最差的是兩步式訓練。但是即使是兩步式訓練,結(jié)果也比bert要好。
3.2?大小ELECTRA模型的性能
在這一部分,論文用實驗結(jié)果證明了ELECTRA模型的核心improvements:
小ELECTRA使用很少的參數(shù)量,就能夠在提升訓練速度的同時保證訓練效果
大ELECTRA用1/4的計算量就可以達到Roberta的結(jié)果
值得一提的是,就在本月6號,ELECTRA刷新了SQUAD2.0單模型的榜單,相信過不了幾天,ELECTRA能在更多的地方證明它的實力。
4
小結(jié)?
ELECTRA不僅提出了全新的語言模型預訓練任務,還提出了類似GAN的全新預訓練框架,讓我們從另一個視角看到了預訓練語言模型更多的可能性。從實驗結(jié)果來看,用僅1/10的參數(shù)量達到BERT的效果也讓我們對ELECTRA的廣泛應用表示期待。目前,英文ELECTRA和中文ELECTRA預訓練模型都已開源,大家可以直接上手感受下ELECTRA的魅力了。
往期精彩回顧適合初學者入門人工智能的路線及資料下載機器學習在線手冊深度學習在線手冊AI基礎下載(pdf更新到25集)本站qq群1003271085,加入微信群請回復“加群”獲取一折本站知識星球優(yōu)惠券,請回復“知識星球”喜歡文章,點個在看
總結(jié)
以上是生活随笔為你收集整理的性能媲美BERT却只有其1/10参数量? | 近期最火模型ELECTRA解析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分享10个强大的神器工具,你一定会需要!
- 下一篇: 【最新】2020年4月学术会议变动汇总