基于深度遷移學(xué)習(xí)的多語種NLP技術(shù)原理和實(shí)踐
【數(shù)據(jù)猿導(dǎo)讀】 全球存在著幾千種語言,這就對NLP研究者帶來了巨大的難題,因?yàn)樵谝粋€語種上訓(xùn)練的模型往往在另外一個語種上完全無效,而且目前的NLP研究以英語為主,很多其他語種上面臨著標(biāo)注語料嚴(yán)重不足的困境。

“百分點(diǎn)是國內(nèi)最早布局國際市場、并成功探索出一條海外之路的數(shù)據(jù)智能技術(shù)企業(yè),目前百分點(diǎn)已服務(wù)海外多個國家,向亞洲、非洲、拉美等多個國家和地區(qū)提供國家級數(shù)據(jù)智能解決方案,幫助當(dāng)?shù)卣畬?shí)現(xiàn)數(shù)字化和智能化轉(zhuǎn)型,對當(dāng)?shù)禺a(chǎn)生深遠(yuǎn)影響。全球存在著幾千種語言,這是自然語言處理研究者們的巨大噩夢,因?yàn)榇蠖鄶?shù)語言都是數(shù)據(jù)稀疏的,研究者找不到足夠多的數(shù)據(jù)來單獨(dú)訓(xùn)練成熟模型。不同于國內(nèi)認(rèn)知智能產(chǎn)品以中文為主,百分點(diǎn)為海外國家提供服務(wù)就必須解決多語種NLP的難題。本文中我們將會詳細(xì)介紹目前多語種NLP常用的工具、前沿的算法以及百分點(diǎn)在實(shí)際業(yè)務(wù)中的實(shí)驗(yàn)結(jié)果等。
全球存在著幾千種語言,這就對NLP研究者帶來了巨大的難題,因?yàn)樵谝粋€語種上訓(xùn)練的模型往往在另外一個語種上完全無效,而且目前的NLP研究以英語為主,很多其他語種上面臨著標(biāo)注語料嚴(yán)重不足的困境。在跨語種NLP研究方面,業(yè)界已經(jīng)做了不少研究,比較有代表性的有polyglot、以及近年來比較火的基于深度遷移學(xué)習(xí)的Multilingual BERT、XLM、XLMR等。
一、Polyglot介紹
Polyglot最早是由AboSamoor在2015年3月16日在GitHub上開源的項(xiàng)目,支持眾多語種的分詞、實(shí)體識別、詞性標(biāo)注、情感分析等任務(wù)。
以NER任務(wù)為例,Polyglot在實(shí)現(xiàn)某個語種的NER任務(wù)時,其實(shí)現(xiàn)方式大致為:首先基于該語種的Wikipedia數(shù)據(jù)訓(xùn)練該語種的分布式詞向量;然后根據(jù)Wikipedia鏈接結(jié)構(gòu)和Freebase屬性自動生成NER的標(biāo)注數(shù)據(jù);最后把NER當(dāng)做一個word級別的分類任務(wù),通過一個淺層的神經(jīng)網(wǎng)絡(luò)進(jìn)行學(xué)習(xí)。
Polyglot雖然能實(shí)現(xiàn)多語種的多個NLP任務(wù),但是在實(shí)際應(yīng)用中的效果并不理想,原因可能有以下幾個方面:
a. Polyglot是通過對多個單語種的數(shù)據(jù)分別進(jìn)行對應(yīng)任務(wù)的學(xué)習(xí),并不支持跨語種的NLP任務(wù);
b. Polyglot是通過Wikipedia鏈接結(jié)構(gòu)和Freebase屬性來生成一些NLP任務(wù)的標(biāo)注數(shù)據(jù),可能存在生成的標(biāo)注數(shù)據(jù)質(zhì)量不高的問題;
c. Polyglot在一些NLP任務(wù)中使用的模型是淺層的神經(jīng)網(wǎng)絡(luò),有進(jìn)一步的提升空間。
二、基于BERT的方法
BERT拋棄了傳統(tǒng)的LSTM,采用特征抽取能力更強(qiáng)的Transformer作為編碼器,并通過MLM(Masked Language Model, 遮掩語言模型)和NSP(Next-Sentence Predict)兩個預(yù)訓(xùn)練任務(wù),在海量數(shù)據(jù)上進(jìn)行學(xué)習(xí),相較于普通的語言模型,能夠?qū)W習(xí)到更好的文本表示。BERT采用pre-train+fine-tuning的方式,對于一個具體NLP任務(wù),只需對BERT預(yù)訓(xùn)練階段學(xué)習(xí)到的文本表示進(jìn)行 fine-tuning就能達(dá)state-of-the-art的效果。
2.1 Transformer
Transformer模型是2018年5月提出的一種新的架構(gòu),可以替代傳統(tǒng)RNN和CNN,用來實(shí)現(xiàn)機(jī)器翻譯。無論是RNN還是CNN,在處理NLP任務(wù)時都有缺陷。CNN是其先天的卷積操作不太適合處理序列化的文本,RNN是不支持并行化計(jì)算,很容易超出內(nèi)存限制。下圖是transformer模型的結(jié)構(gòu),分成左邊encoder和右邊的decoder,相較于常見的基于RNN+attention的encoder-decoder之間的attention,還多出encoder和decoder內(nèi)部的self-attention。每個attention都有multi-head特征,multi-head attention將一個詞的vector切分成h個維度,可以從不同的維度學(xué)到不同的特征,相較于全體空間放到一起更加合理。最后,通過position encoding加入沒考慮過的位置信息。
圖1.transformer結(jié)構(gòu)
BERT中使用transformer的encoder部分作為編碼器,base版和large版分別使用了12層和24層的transformer encoder。
圖2. BERT結(jié)構(gòu)
2.2 MLM
在BERT中,提出了一種叫做MLM的真正的雙向語言模型。不像傳統(tǒng)語言模型那樣給定已經(jīng)出現(xiàn)過的詞,去預(yù)測下一個詞,只能學(xué)習(xí)單向特征,MLM是直接把整個句子的一部分詞(隨機(jī)選擇)遮掩?。╩asked),然后讓模型利用這些被遮住的詞的上下文信息去預(yù)測這些被遮住的詞。遮掩方法為:有80%的概率用“[mask]”標(biāo)記來替換,有10%的概率用隨機(jī)采樣的一個單詞來替換,有10%的概率不做替換。
2.3 NSP
BERT另外一個創(chuàng)新是在雙向語言模型的基礎(chǔ)上增加了一個句子級別的連續(xù)性預(yù)測任務(wù)。這個任務(wù)的目標(biāo)是預(yù)測兩個句子是否是連續(xù)的文本,在訓(xùn)練的時候,輸入模型的第二個片段會以50%的概率從全部文本中隨機(jī)選取,剩下50%的概率選取第一個片段的后續(xù)的文本??紤]到很多NLP任務(wù)是句子關(guān)系判斷任務(wù),單詞預(yù)測粒度的訓(xùn)練到不了句子關(guān)系這個層級,增加這個任務(wù)有助于下游句子關(guān)系判斷任務(wù)。
三、Multilingual BERT
Multilingual BERT即多語言版本的BERT,其訓(xùn)練數(shù)據(jù)選擇的語言是維基百科數(shù)量最多的前100種語言。每種語言(不包括用戶和talk頁面)的整個Wikipedia轉(zhuǎn)儲都用作每種語言的訓(xùn)練數(shù)據(jù)。但是不同語言的數(shù)據(jù)量大小變化很大,經(jīng)過上千個epoch的迭代后模型可能會在低資源語種上出現(xiàn)過擬合。為了解決這個問題,采取在創(chuàng)建預(yù)訓(xùn)練數(shù)據(jù)時對數(shù)據(jù)進(jìn)行了指數(shù)平滑加權(quán)的方式,對高資源語言(如英語)將進(jìn)行欠采樣,而低資源語言(如冰島語)進(jìn)行過采樣。
Multilingual BERT采取wordpiece的分詞方式,共形成了110k的多語種詞匯表,不同語種的詞語數(shù)量同樣采取了類似于訓(xùn)練數(shù)據(jù)的采樣方式。對于中文、日文這樣的字符之間沒有空格的數(shù)據(jù),采取在字符之間添加空格的方式之后進(jìn)行wordpiece分詞。
在XNLI數(shù)據(jù)集(MultiNLI的一個版本,在該版本中,開發(fā)集和測試集由翻譯人員翻譯成15種語言,而訓(xùn)練集的翻譯由機(jī)器翻譯進(jìn)行)上Multilingual BERT達(dá)到了SOTA的效果。
圖3. Multilingual BERT在XNLI上的效果
上面實(shí)驗(yàn)結(jié)果的前兩行是來自XNLI論文的基線,后面四行是使用Multilingual BERT得到的結(jié)果。mBERT-Translate Train是指將訓(xùn)練集從英語翻譯成其它語種,所以訓(xùn)練和測試都是用其它語種上進(jìn)行的。mBERT-Translate Test是指XNLI測試集從其它語種翻譯成英語,所以訓(xùn)練和測試都是用英語進(jìn)行的。Zero Shot是指對mBERT通過英語數(shù)據(jù)集進(jìn)行微調(diào),然后在其它語種的數(shù)據(jù)集中進(jìn)行測試,整個過程中不涉及到翻譯。
四、XLM
XLM是Facebook提出的基于BERT進(jìn)行優(yōu)化的跨語言模型。盡管Multilingual BERT在超過100種語言上進(jìn)行預(yù)訓(xùn)練,但它的模型本身并沒有針對多語種進(jìn)行過多優(yōu)化,大多數(shù)詞匯沒有在不同語種間共享,因此能學(xué)到的跨語種知識比較有限。XLM在以下幾點(diǎn)對Multilingual BERT進(jìn)行了優(yōu)化:
a. XLM的每個訓(xùn)練樣本包含了來源于不同語種但意思相同的兩個句子,而BERT中一條樣本僅來自同一語言。BERT的目標(biāo)是預(yù)測被masked的token,而XLM模型中可以用一個語言的上下文信息去預(yù)測另一個語言被masked的token。
b. 模型也接受語言ID和不同語言token的順序信息,也就是位置編碼。這些新的元數(shù)據(jù)能幫模型學(xué)習(xí)到不同語言的token間關(guān)系。
XLM中這種升級版的MLM模型被稱作TLM(Translation Language Model, 翻譯語言模型)。XLM在預(yù)訓(xùn)練時同時訓(xùn)練了MLM和TLM,并且在兩者之間進(jìn)行交替訓(xùn)練,這種訓(xùn)練方式能夠更好的學(xué)習(xí)到不同語種的token之間的關(guān)聯(lián)關(guān)系。在跨語種分類任務(wù)(XNLI)上XLM比其他模型取得了更好的效果,并且顯著提升了有監(jiān)督和無監(jiān)督的機(jī)器翻譯效果。
五、XLMR
XLMR(XLM-RoBERTa)同是Facebook的研究成果,它融合了更多的語種更大的數(shù)據(jù)量(包括缺乏標(biāo)簽的的低資源語言和未標(biāo)記的數(shù)據(jù)集),改進(jìn)了以前的多語言方法Multilingual BERT,進(jìn)一步提升了跨語言理解的性能。同BERT一樣,XLMR使用transformer作為編碼器,預(yù)訓(xùn)練任務(wù)為MLM。XLMR主要的優(yōu)化點(diǎn)有三個:
a. 在XLM和RoBERTa中使用的跨語言方法的基礎(chǔ)上,增加了語言數(shù)量和訓(xùn)練集的規(guī)模,用超過2TB的已經(jīng)過處理的CommonCrawl 數(shù)據(jù)以自我監(jiān)督的方式訓(xùn)練跨語言表示。這包括為低資源語言生成新的未標(biāo)記語料庫,并將用于這些語言的訓(xùn)練數(shù)據(jù)量擴(kuò)大兩個數(shù)量級。下圖是用于XLM的Wiki語料庫和用于XLMR的CommonCrawl語料庫中出現(xiàn)的88種語言的數(shù)據(jù)量,可以看到CommonCrawl數(shù)據(jù)量更大,尤其是對于低資源語種。
圖4. XLMR和XLM的訓(xùn)練數(shù)據(jù)對比
b. 在fine-tuning階段,利用多語言模型的能力來使用多種語言的標(biāo)記數(shù)據(jù),以改進(jìn)下游任務(wù)的性能。使得模型能夠在跨語言基準(zhǔn)測試中獲得state-of-the-art的結(jié)果。
c. 使用跨語言遷移來將模型擴(kuò)展到更多的語言時限制了模型理解每種語言的能力,XLMR調(diào)整了模型的參數(shù)以抵消這種缺陷。XLMR的參數(shù)更改包括在訓(xùn)練和詞匯構(gòu)建過程中對低資源語言進(jìn)行上采樣,生成更大的共享詞匯表,以及將整體模型容量增加到5.5億參數(shù)。
XLMR在多個跨語言理解基準(zhǔn)測試中取得了SOTA的效果,相較于Multilingual BERT,在XNLI數(shù)據(jù)集上的平均準(zhǔn)確率提高了13.8%,在MLQA數(shù)據(jù)集上的平均F1得分提高了12.3%,在NER數(shù)據(jù)集上的平均F1得分提高了2.1%。XLMR在低資源語種上的提升更為明顯,相對于XLM,在XNLI數(shù)據(jù)集上,斯瓦希里語提升了11.8%,烏爾都語提升了9.2%。
六、百分點(diǎn)在實(shí)際業(yè)務(wù)數(shù)據(jù)上的實(shí)驗(yàn)結(jié)果
先明確兩個概念,單語種任務(wù):訓(xùn)練集和測試集為相同語種,跨語種任務(wù):訓(xùn)練集和測試集為不同語種。
6.1 主題分類任務(wù)上效果
主題分類是判斷一段文本是屬于政治、軍事等10個類別中哪一個。實(shí)驗(yàn)中分別使用XLMR和Multilingual BERT在1w的英語數(shù)據(jù)上進(jìn)行訓(xùn)練,然后在英語、法語、泰語各1萬的數(shù)據(jù)上進(jìn)行測試??梢钥吹綗o論是單語種任務(wù)還是跨語種任務(wù)上,XLMR的效果都優(yōu)于Multilingual BERT,跨語種任務(wù)上的優(yōu)勢更明顯。
6.2 情感分類任務(wù)上的效果
情感分類任務(wù)是判斷一段文本所表達(dá)的情感是正面、負(fù)面或中立。實(shí)驗(yàn)中分別對XLMR和BERT做了單語種任務(wù)的對比和跨語種任務(wù)的對比,可以看到在單語種任務(wù)中BERT和XLMR的效果差別不明顯,而在跨語種任務(wù)中XLMR明顯優(yōu)于Multilingual BERT。
6.3 NER任務(wù)上的效果
NER任務(wù)是抽取一段文本中實(shí)體,實(shí)體包括人名、地名、機(jī)構(gòu)名。在該實(shí)驗(yàn)中,XLMR表現(xiàn)一般,不管是單語種任務(wù)還是跨語種任務(wù)上,效果比Multilingual BERT要略差一些。
七、內(nèi)容總結(jié)
Multilingual BERT使用特征抽取能力更強(qiáng)的transformer作為編碼器,通過MLM和NSP在超過100種語言上進(jìn)行預(yù)訓(xùn)練,但它的模型本身并沒有針對多語種進(jìn)行過多優(yōu)化。而XLM對Multilingual BERT進(jìn)行了優(yōu)化,主要是增加了TML預(yù)訓(xùn)練任務(wù),使模型能學(xué)習(xí)到多語種token之間的關(guān)聯(lián)關(guān)系。XLMR結(jié)合了XLM和RoBERTa的優(yōu)勢,采用了更大的訓(xùn)練集,并且對低資源語種進(jìn)行了優(yōu)化,在XNLI、NER CoNLL-2003、跨語種問答MLQA等任務(wù)上,效果均優(yōu)于Multilingual BERT,尤其是在Swahili、Urdu等低資源語種上效果提升顯著。
在百分點(diǎn)實(shí)際業(yè)務(wù)數(shù)據(jù)的測試中,目前已經(jīng)在英語、法語、阿語等常規(guī)語種上進(jìn)行測試,無論是單語種任務(wù)還是跨語種任務(wù),整體來看XLMR的效果要優(yōu)于Multilingual BERT。想要實(shí)現(xiàn)在一種語種上進(jìn)行模型訓(xùn)練,然后直接在另外一種語種上進(jìn)行預(yù)測這樣的跨語種遷移,仍需要相關(guān)領(lǐng)域進(jìn)一步深入的探索。
Google近期發(fā)布了一個用于測試模型跨語種性能的基準(zhǔn)測試Xtreme,包括了對12種語言家族的40種語言進(jìn)行句子分類、句子檢索、問答等9項(xiàng)任務(wù)。在Xtreme的實(shí)驗(yàn)中,先進(jìn)的多語言模型如XLMR在大多數(shù)現(xiàn)有的英語任務(wù)中已達(dá)到或接近人類的水平,但在其它語言尤其是非拉丁語言的表現(xiàn)上仍然存在巨大差距。這也表明,跨語言遷移的研究潛力很大。不過隨著Xtreme的發(fā)布,跨語種NLP的研究肯定也會加速,一些激動人心的模型也會不斷出現(xiàn),讓我們共同期待。
參考資料
[1] https://github.com/google-research/bert/blob/master/multilingual.md
[2] https://static.aminer.cn/misc/pdf/1911.02116.pdf
[3] https://www.lyrn.ai/2019/02/11/xlm-cross-lingual-language-model/
[4]https://arxiv.org/pdf/1410.3791v1
[5] https://github.com/google-research/xtreme
來源:百分點(diǎn)
刷新相關(guān)文章
我要評論
活動推薦more >
- 2018 上海國際大數(shù)據(jù)產(chǎn)業(yè)高2018-12-03
- 2018上海國際計(jì)算機(jī)網(wǎng)絡(luò)及信2018-12-03
- 中國國際信息通信展覽會將于2018-09-26
- 第五屆FEA消費(fèi)金融國際峰會62018-06-21
- 第五屆FEA消費(fèi)金融國際峰會2018-06-21
- “無界區(qū)塊鏈技術(shù)峰會2018”2018-06-14
不容錯過的資訊
-
1【活動預(yù)告】CISE2020中國節(jié)博會專題活動
-
2#榜樣的力量#思必馳疫情防控機(jī)器人丨數(shù)
-
3#榜樣的力量#萬博思圖新冠全球疫情地圖
-
4數(shù)據(jù)模型:數(shù)字化轉(zhuǎn)型的核心能力
-
5CPG 2020: 第四屆中國消費(fèi)品CIO峰會-
-
6基于深度遷移學(xué)習(xí)的多語種NLP技術(shù)原理和
-
7WIFIPIX:后疫情時代,私域流量讓家居零
-
8加州大學(xué)遭黑客勒索,花114萬美元贖金向
-
9張涵誠:大數(shù)據(jù)招商平臺可推動地方供給側(cè)
-
10德風(fēng)科技完成A輪8000萬融資,招商局創(chuàng)投