0
本文作者: 蔣寶尚 | 2020-03-25 18:11 |
在去年11月份,NLP大神Manning聯(lián)合谷歌做的ELECTRA一經(jīng)發(fā)布,迅速火爆整個(gè)NLP圈,其中ELECTRA-small模型參數(shù)量?jī)H為 BERT-base模型的1/10,性能卻依然能與BERT、RoBERTa等模型相媲美。
在前不久,谷歌終于開(kāi)源了ELECTRA,并發(fā)布了預(yù)訓(xùn)練模型,這對(duì)于缺大算力的高校和企業(yè),簡(jiǎn)直是一大福音。
然而,其發(fā)布的預(yù)訓(xùn)練模型只是針對(duì)英語(yǔ),卻非如BERT那樣是多語(yǔ)言版本。對(duì)于其他語(yǔ)言(例如中文)的研究者來(lái)說(shuō),則非常遺憾。
(雷鋒網(wǎng))
針對(duì)這一問(wèn)題,今天哈工大訊飛聯(lián)合實(shí)驗(yàn)室(HFL)基于ELECTRA開(kāi)源代碼,發(fā)布了中文版的 ELECTRA 預(yù)訓(xùn)練模型。
(雷鋒網(wǎng))
ELECTRA預(yù)訓(xùn)練模型的作者是斯坦福SAIL實(shí)驗(yàn)室Manning組和谷歌大腦研究團(tuán)隊(duì),初次出現(xiàn)是在2019年北京智源大會(huì)上面。作為一種新的文本預(yù)訓(xùn)練模型,ELECTRA 新穎的設(shè)計(jì)思路、更少的計(jì)算資源消耗和更少的參數(shù),迅速引起了大批關(guān)注者。特別是在去年 11 月 ICLR 2020 論文接收出爐后,曾引起NLP圈內(nèi)不小的轟動(dòng)。
(雷鋒網(wǎng))
論文鏈接:https://openreview.net/forum?id=r1xMH1BtvB
論文中這張圖能夠說(shuō)明一切問(wèn)題:
圖注:右圖是左圖放大的結(jié)果。
如上圖所示,ELECTRA模型能夠在訓(xùn)練步長(zhǎng)更少的前提下得到了比其他預(yù)訓(xùn)練模型更好的效果。同樣,在模型大小、數(shù)據(jù)和計(jì)算相同的情況下,ELECTRA的性能明顯優(yōu)于基于MLM的方法,如BERT和XLNet。
所以,ELECTRA 與現(xiàn)有的生成式的語(yǔ)言表示學(xué)習(xí)方法相比,前者具有更高的計(jì)算效率和更少的參數(shù)(ELECTRA-small的參數(shù)量?jī)H為BERT-base的 1/10)。
ELECTRA能夠取得如此優(yōu)異結(jié)果,基于其新穎的預(yù)訓(xùn)練框架,其中包含兩個(gè)部分:Generator和Discriminator。
Generator: 一個(gè)小的MLM,在[MASK]的位置預(yù)測(cè)原來(lái)的詞。Generator將用來(lái)把輸入文本做部分詞的替換。Discriminator: 判斷輸入句子中的每個(gè)詞是否被替換,即使用Replaced Token Detection (RTD)預(yù)訓(xùn)練任務(wù),取代了BERT原始的Masked Language Model (MLM)。需要注意的是這里并沒(méi)有使用Next Sentence Prediction (NSP)任務(wù)。
在預(yù)訓(xùn)練階段結(jié)束之后,只使用Discriminator作為下游任務(wù)精調(diào)的基模型。
換句話說(shuō),作者們把CV領(lǐng)域的GAN運(yùn)用到了自然語(yǔ)言處理。
值得注意的是,盡管與GAN的訓(xùn)練目標(biāo)相似,但仍存在一些關(guān)鍵差異。首先,如果生成器碰巧生成了正確的token,則該token被視為“真實(shí)”而不是“偽造”;所以模型能夠適度改善下游任務(wù)的結(jié)果。更重要的是,生成器使用最大似然來(lái)訓(xùn)練,而不是通過(guò)對(duì)抗性訓(xùn)練來(lái)欺騙判別器。
目前已有的開(kāi)源 ELECTRA 預(yù)訓(xùn)練模型只是英文的預(yù)訓(xùn)練模型。但世界上還有許多其他語(yǔ)言(例如中文)研究的學(xué)者,他們需要與其相應(yīng)的語(yǔ)言預(yù)訓(xùn)練模型。
然而,谷歌官方除了BERT、RoBERTa等預(yù)訓(xùn)練模型有多語(yǔ)言版本外,其他例如XLNet、T5都沒(méi)有相應(yīng)的多語(yǔ)言版本,只有英文。其中原因在于相比于只在英語(yǔ)上做預(yù)訓(xùn)練,多語(yǔ)言的預(yù)訓(xùn)練需要收集相應(yīng)語(yǔ)料,需要調(diào)配不同語(yǔ)言語(yǔ)料的比例等,比較麻煩。因此大概率上,ELECTRA 也不會(huì)出中文版或多語(yǔ)言版的預(yù)訓(xùn)練模型。
而另一方面,作為中文社區(qū),我們國(guó)人自己對(duì)如何做中文的預(yù)訓(xùn)練則更為了解,我們自己來(lái)做相應(yīng)的預(yù)訓(xùn)練可能會(huì)比谷歌官方來(lái)做會(huì)更好。
由哈工大訊飛聯(lián)合實(shí)驗(yàn)室資深級(jí)研究員、研究主管崔一鳴所帶領(lǐng)的團(tuán)隊(duì)之前曾做過(guò)系列類(lèi)似的開(kāi)源工作,即基于開(kāi)源預(yù)訓(xùn)練代碼,加上中文數(shù)據(jù)集來(lái)訓(xùn)練中文版預(yù)訓(xùn)練模型。例如中文版的系列BERT模型、中文版XLNet等,在GitHub上開(kāi)源后反響不錯(cuò),在許多中文評(píng)測(cè)任務(wù)中也曾有不少隊(duì)伍使用他們開(kāi)源的預(yù)訓(xùn)練模型進(jìn)行改進(jìn)。
開(kāi)源地址:https://github.com/ymcui/Chinese-BERT-wwm
開(kāi)源地址:https://github.com/ymcui/Chinese-XLNet
在谷歌開(kāi)源ELECTRA之后,崔一鳴等人再次推出中文版 ELECTRA。
訓(xùn)練數(shù)據(jù)集,仍和之前訓(xùn)練BERT系列模型所用數(shù)據(jù)是一致的,主要來(lái)自大規(guī)模中文維基及通用文本(中文網(wǎng)頁(yè)爬取和清洗),總token達(dá)到5.4B。詞表方面沿用了谷歌原版BERT的WordPiece詞表,包含21128個(gè)token。
在本次的開(kāi)源中,崔一鳴等人只發(fā)布了ELECTRA-base 和ELECTRA-small 兩個(gè)模型。據(jù)崔一鳴表示,large版本由于參數(shù)較多,超參設(shè)置比較困難,因此模型發(fā)布會(huì)相應(yīng)延后。
已發(fā)布的兩個(gè)版本各自訓(xùn)練了大約7天時(shí)間,由于small版本的參數(shù)僅為base版本的1/10,在訓(xùn)練中,崔一鳴等人將其batch調(diào)為1024(是base的4倍)。具體細(xì)節(jié)和超參如下(未提及的參數(shù)保持默認(rèn)):ELECTRA-base:12層,隱層768,12個(gè)注意力頭,學(xué)習(xí)率2e-4,batch256,最大長(zhǎng)度512,訓(xùn)練1M步ELECTRA-small:12層,隱層256,4個(gè)注意力頭,學(xué)習(xí)率5e-4,batch1024,最大長(zhǎng)度512,訓(xùn)練1M步
ELECTRA-small 僅 46 M。
在效果上,崔一鳴等人將之與他們之前做的系列中文版預(yù)訓(xùn)練模型進(jìn)行了效果對(duì)比。
對(duì)比模型包括:ELECTRA-small/base、BERT-base、BERT-wwm、BERT-wwm-ext、RoBERTa-wwm-ext、RBT3。
對(duì)比任務(wù)有六個(gè):CMRC 2018 (Cui et al., 2019):篇章片段抽取型閱讀理解(簡(jiǎn)體中文)
DRCD (Shao et al., 2018):篇章片段抽取型閱讀理解(繁體中文)
XNLI (Conneau et al., 2018):自然語(yǔ)言推斷(三分類(lèi))
ChnSentiCorp:情感分析(二分類(lèi))LCQMC (Liu et al., 2018):
句對(duì)匹配(二分類(lèi))BQ Corpus (Chen et al., 2018):
句對(duì)匹配(二分類(lèi))
在下游任務(wù)精調(diào)中,ELECTRA-small/base模型的學(xué)習(xí)率設(shè)為原論文默認(rèn)的3e-4和1e-4。值得注意的是,這里的精調(diào)并沒(méi)有針對(duì)任何任務(wù)進(jìn)行參數(shù)精調(diào)。為了保證結(jié)果的可靠性,對(duì)于同一模型,他們使用不同隨機(jī)種子訓(xùn)練10遍,匯報(bào)模型性能的最大值和平均值(括號(hào)內(nèi)為平均值)。
效果如下:
簡(jiǎn)體中文閱讀理解:CMRC 2018(評(píng)價(jià)指標(biāo)為:EM / F1)
繁體中文閱讀理解:DRCD(評(píng)價(jià)指標(biāo)為:EM / F1)
自然語(yǔ)言推斷:XNLI(評(píng)價(jià)指標(biāo)為:Accuracy)
情感分析:ChnSentiCorp(評(píng)價(jià)指標(biāo)為:Accuracy)
句對(duì)分類(lèi):LCQMC(評(píng)價(jià)指標(biāo)為:Accuracy)
句對(duì)分類(lèi):BQ Corpus( 評(píng)價(jià)指標(biāo)為:Accuracy)
從以上的結(jié)果可以看出,對(duì)于ELECTRA-small模型,其效果在多數(shù)任務(wù)上顯著超過(guò)3層RoBERTa效果(RBT3),甚至是接近BERT-base的效果,而在參數(shù)量上只有BERT-base模型的1/10。對(duì)于ELECTRA-base模型來(lái)說(shuō),在多數(shù)任務(wù)上超過(guò)了BERT-base甚至是RoBERTa-wwm-ext的效果。
其具體使用,可以查看Github項(xiàng)目:https://github.com/ymcui/Chinese-ELECTRA
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。