亚洲农村老熟妇肥BBBB_无码人妻精品一区二区蜜桃色_精品亚洲AⅤ无码午夜在线观看_中文字幕熟妇人妻在线视频_囯产色无码精品视频免费

當(dāng)前位置: 首頁(yè) > 科技新聞 >

BERT, RoBERTa, DistilBERT, XLNet的用法對(duì)比

時(shí)間:2019-11-13 01:05來(lái)源:網(wǎng)絡(luò)整理 瀏覽:
雷鋒網(wǎng)AI科技評(píng)論編者按:BERT, RoBERTa, DistilBERT, XLNet到底哪家強(qiáng)?在不同的研究領(lǐng)域和應(yīng)用場(chǎng)景如何選擇成了

雷鋒網(wǎng)AI科技評(píng)論編者按:BERT, RoBERTa, DistilBERT, XLNet到底哪家強(qiáng)?在不同的研究領(lǐng)域和應(yīng)用場(chǎng)景如何選擇成了大難題。凡事莫慌,這篇文章幫你理清思路。

BERT以及后續(xù)模型

谷歌基于transformer的BERT系列一經(jīng)問(wèn)世就在NLP領(lǐng)域掀起了一場(chǎng)風(fēng)暴,在幾項(xiàng)任務(wù)中的表現(xiàn)可謂勢(shì)頭強(qiáng)勁,已經(jīng)超越了先前沿用的最先進(jìn)的技術(shù)。最近,谷歌對(duì)BERT進(jìn)行了改版,我將對(duì)比改版前后主要的相似點(diǎn)和不同點(diǎn),以便你可以選擇在研究或應(yīng)用中使用哪一種。

BERT是一個(gè)雙向transformer,用于對(duì)大量未標(biāo)記的文本數(shù)據(jù)進(jìn)行預(yù)訓(xùn)練,以學(xué)習(xí)一種語(yǔ)言表示形式,這種語(yǔ)言表示形式可用于對(duì)特定機(jī)器學(xué)習(xí)任務(wù)進(jìn)行微調(diào)。雖然BERT在幾項(xiàng)任務(wù)中的表現(xiàn)都優(yōu)于NLP領(lǐng)域沿用過(guò)的最先進(jìn)的技術(shù),但其性能的提高主要還是歸功于雙向transformer、掩蔽語(yǔ)言模型對(duì)任務(wù)的訓(xùn)練以及結(jié)構(gòu)預(yù)測(cè)功能,還包括大量的數(shù)據(jù)和谷歌的計(jì)算能力。

最近,又提出了幾種方法改進(jìn)BERT的預(yù)測(cè)指標(biāo)或計(jì)算速度,但是始終達(dá)不到兩者兼顧。XLNet和RoBERTa改善了性能,而DistilBERT提高了推理速度。下表對(duì)它們進(jìn)行了比較:

BERT, RoBERTa, DistilBERT, XLNet的用法對(duì)比

圖1:比較BERT和最近的一些改進(jìn)情況

  • GPU計(jì)算時(shí)間是估算的(使用4個(gè)TPU Pod進(jìn)行為時(shí)4天的原始訓(xùn)練)

  • 使用大量的小批次數(shù)據(jù),根據(jù)掩蔽程序的差異進(jìn)行學(xué)習(xí)速度和延長(zhǎng)時(shí)間的訓(xùn)練

  • 數(shù)據(jù)來(lái)源是原始論文

XLNet是一種大型雙向transformer,它使用的是改進(jìn)過(guò)的訓(xùn)練方法,這種訓(xùn)練方法擁有更大的數(shù)據(jù)集和更強(qiáng)的計(jì)算能力,在20個(gè)語(yǔ)言任務(wù)中XLNet比BERT的預(yù)測(cè)指標(biāo)要更好。

為了改進(jìn)訓(xùn)練方法,XLNet引入了置換語(yǔ)言建模,其中所有標(biāo)記都是按隨機(jī)順序預(yù)測(cè)的。這與BERT的掩蔽語(yǔ)言模型形成對(duì)比,后者只預(yù)測(cè)了掩蔽(15%)標(biāo)記。這也顛覆了傳統(tǒng)的語(yǔ)言模型,在傳統(tǒng)語(yǔ)言模型中,所有的標(biāo)記都是按順序而不是按隨機(jī)順序預(yù)測(cè)的。這有助于模型學(xué)習(xí)雙向關(guān)系,從而更好地處理單詞之間的關(guān)系和銜接。此外使用Transformer XL做基礎(chǔ)架構(gòu),即使在不統(tǒng)一排序訓(xùn)練的情況下也能表現(xiàn)出良好的性能。

XLNet使用了超過(guò)130 GB的文本數(shù)據(jù)和512 TPU芯片進(jìn)行訓(xùn)練,運(yùn)行時(shí)間為2.5天,XLNet用于訓(xùn)練的資料庫(kù)要比BERT大得多。

RoBERTa,在Facebook上推出的Robustly是BERT的優(yōu)化方案,RoBERTa在BERT的基礎(chǔ)上進(jìn)行再訓(xùn)練,改進(jìn)了訓(xùn)練方法,還增加了1000%的數(shù)據(jù),強(qiáng)化了計(jì)算能力。

為了優(yōu)化訓(xùn)練程序,RoBERTa從BERT的預(yù)訓(xùn)練程序中刪除了結(jié)構(gòu)預(yù)測(cè)(NSP)任務(wù),引入了動(dòng)態(tài)掩蔽,以便在訓(xùn)練期間使掩蔽的標(biāo)記發(fā)生變化。在這過(guò)程中也證實(shí)了大批次的訓(xùn)練規(guī)模在訓(xùn)練過(guò)程中的確更有用。

重要的是,RoBERTa使用160 GB的文本進(jìn)行預(yù)訓(xùn)練,其中包含了16GB的文本語(yǔ)料庫(kù)和BERT使用的英文Wikipedia。其他數(shù)據(jù)包括CommonCrawl News數(shù)據(jù)集(6300萬(wàn)篇文章,76 GB),Web文本語(yǔ)料庫(kù)(38GB)和普通爬蟲(chóng)的故事(31 GB)。再加上1024個(gè) V100的Tesla GPU每天都在運(yùn)行,這使得RoBERTa具備了進(jìn)行預(yù)訓(xùn)練的基礎(chǔ)。

因此,RoBERTa在GLUE基準(zhǔn)測(cè)試結(jié)果上優(yōu)于BERT和XLNet。

另一方面,為了減少BERT或相關(guān)模型的計(jì)算(訓(xùn)練,預(yù)測(cè))時(shí)間,理應(yīng)選擇使用較小的網(wǎng)絡(luò)以達(dá)到相似的性能。其實(shí)有許多方法可以做到這一點(diǎn),包括剪枝,蒸餾和量化,然而,所有這些都會(huì)導(dǎo)致預(yù)測(cè)指標(biāo)更低。

DistilBERT學(xué)習(xí)了BERT的蒸餾(近似)版本,保留了95%的性能,但只使用了一半的參數(shù)。具體來(lái)說(shuō),它沒(méi)有標(biāo)記類(lèi)型和池化層的嵌入,只保留了谷歌BERT中一半的層。DistilBERT使用了一種叫做蒸餾的技術(shù),它與谷歌的BERT(也就是由較小的神經(jīng)網(wǎng)絡(luò)構(gòu)成大型神經(jīng)網(wǎng)絡(luò))相似。這個(gè)原理是,一旦要訓(xùn)練一個(gè)大型神經(jīng)網(wǎng)絡(luò),就可以使用較小的網(wǎng)絡(luò)來(lái)預(yù)估其完整的輸出分布。這在某種意義上類(lèi)似于后驗(yàn)近似。在貝葉斯統(tǒng)計(jì)中用于后驗(yàn)近似的關(guān)鍵優(yōu)化函數(shù)之一是Kulback Leiber散度,自然在這里也被用到了。

雷鋒網(wǎng)提示:在貝葉斯統(tǒng)計(jì)中,我們接近真實(shí)的后驗(yàn)值(來(lái)自數(shù)據(jù)),而對(duì)于蒸餾,我們只能做到接近在較大網(wǎng)絡(luò)中學(xué)習(xí)到的后驗(yàn)值。

如何使用

如果你真的需要推理速度快一點(diǎn),可以接受代價(jià)是預(yù)測(cè)精度稍微下降那么一些的話,那么DistilBERT會(huì)是一個(gè)合適的選擇,但是,如果你還在尋找最佳的預(yù)測(cè)性能,你最好使用Facebook的RoBERTa。

從理論上講,基于XLNet置換的訓(xùn)練應(yīng)該能處理好依賴(lài)關(guān)系,并且可能在長(zhǎng)期運(yùn)行中能表現(xiàn)出更好的性能。

但是,Google的BERT確實(shí)提供了良好的基線,如果你沒(méi)有上述任何關(guān)鍵需求,就可以使用BERT維持系統(tǒng)的正常運(yùn)行。

總結(jié)

大多數(shù)性能的改善(包括BERT本身)都是由于增加了數(shù)據(jù)量,計(jì)算能力或訓(xùn)練過(guò)程。雖然它們確實(shí)具有自己的價(jià)值,但它們往往傾向于在計(jì)算和預(yù)測(cè)指標(biāo)之間進(jìn)行權(quán)衡。當(dāng)前真正需要的是在使用更少的數(shù)據(jù)和計(jì)算資源的同時(shí)還可以使性能得到基本的改進(jìn)。(雷鋒網(wǎng)(公眾號(hào):雷鋒網(wǎng))

原文作者:SuleimanKhan

原文鏈接:https://towardsdatascience.com/bert-roberta-distilbert-xlnet-which-one-to-use-3d5ab82ba5f8

BERT, RoBERTa, DistilBERT, XLNet的用法對(duì)比

推薦內(nèi)容