XLM,基於BERT的跨語言模型

這個模型在跨語言分類任務(15個語言的句子蘊含任務)上比其他模型取得瞭更好的效果,並且顯著提升瞭有預訓練的機器翻譯效果。

原標題 | XLM — Enhancing BERT for Cross-lingual Language Model

作者 | Rani Horev

編輯 | Pita

註意力模型,尤其是BERT模型,已經在NLP領域分類和翻譯任務上取得瞭極具前景的結果。Facebook AI在一篇新論文中提出瞭一個改良版的BERT模型XLM,在以上兩個任務上均取得瞭SOTA結果。

XLM用瞭一個常見的預處理技術BPE(byte pair encoder字節對編碼)以及BERT雙語言訓練機制來學習不同語言中詞與詞之間的關系。這個模型在跨語言分類任務(15個語言的句子蘊含任務)上比其他模型取得瞭更好的效果,並且顯著提升瞭有預訓練的機器翻譯效果。

背景

XLM基於幾個核心概念:

Transformers, Google在2017年提出的一種能夠同時處理輸入文本並且學到詞語上下文聯系的註意力機制。一個Transformer包含兩部分:一個編碼器讀入文本輸入並且生成每個詞的向量表示,一個解碼器將向量表示轉換成翻譯結果文本。更詳細的Transformer回顧可以看這篇文章:http://jalammar.github.io/illustrated-transformer/

普通的Transformer隻考慮瞭每個單詞有限的上下文(單詞的前幾個詞),於是在2018年提出的BERT模型在此基礎上更進瞭一步。BERT利用Transformer的編碼器學習一個語言模型,通過遮住(舍棄)一些詞再試著去預測這些詞。這使得模型可以學習全篇內容,也就是被遮住詞的前序和後續詞。

因為在註意力模塊中所有詞都是同時處理的,所以模型還需要考慮額外的位置信息。模型網絡通過給每個token加一個基於位置的固定值(例如正弦函數),可以成功學習到token間的聯系,這一步叫位置編碼。可以看這篇我們對BERT的總結:http://www.lyrn.ai/2018/11/07/explained-bert-state-of-the-art-language-model-for-nlp/

2018年Lample et al.提出瞭將Transformer 和基於短語的統計機器翻譯技術(PBSMT)相結合的模型。後者給出瞭不同語言中短語的概率表。這篇論文中另一個重要概念是反向翻譯,也就是把句子翻譯成目標語言句再翻回原句。

這讓我們可以用單一語言作為訓練集,比有監督的雙語言訓練集量更大也更常見。Lample et al.得出的一個結論是token的初始化嵌入對於模型最終的成功來說至關重要,尤其對反向翻譯來說。他在文中用瞭一個簡單的詞嵌入方法FastText,他們認為更有效的語言模型能夠進一步提升他們的模型結果。

XLM模型工作原理

這篇論文提出瞭兩個創新點:一個是用BERT訓練多語言文本分類、另一個是用BERT初始化機器翻譯模型。

BERT進行跨語言文本分類

盡管BERT的訓練語料超過100種語言,它的模型本身並沒有針對多語言進行優化——大多數詞匯沒有在語言間共享,因此能學到的跨語言知識是很有限的。針對這一點,XLM模型在以下方面修正瞭BERT:

首先,XLM的模型輸入用瞭字節對編碼(BPE)而不是用字符或詞語。BPE把輸入按所有語言中最常見的詞片段(sub-words)進行切分,以此來增加跨語言共享的詞匯。這是一個常見的預處理算法,關於BPE可以看這篇總結:http://www.lyrn.ai/2019/01/06/massively-multilingual-sentence-embeddings-for-zero-shot-transfer/#appendix-a-bpe

其次,XLM以下面兩個方式升級瞭BERT的模型結構:

1、XLM的每個訓練樣本包含含義相同語言不同的兩條句子,而不是像BERT中一條樣本僅來自同1一語言。BERT的目標是預測被遮住的token。

XLM模型中,我們可以對每組句子,用一個語言的上下文信息去預測另一個語言被遮住的token。因為句子對中不同的隨機詞語會被遮住,模型可以利用翻譯信息去預測token。

2、模型也接受語言ID和不同語言token的順序信息,也就是位置編碼。這些新的元數據能幫模型學習到不同語言的token間關系。

升級版的BERT模型被稱作翻譯語言模型(TLM),普通BERT模型+BPE輸入被稱作有掩碼語言模型(MLM)。

完整的模型同時訓練瞭MLM和TLM,並且在兩者之間進行交替訓練。

上圖:類似BERT的單語言模型MLM, 和跨語言模型TLM進行對比。來源:XLM

為瞭評估模型效果,這篇論文在句子蘊含(句子對關系分類)任務上測試瞭模型。論文使用瞭XNLI數據集,數據集中句子來自15個語言。

模型在所有配置上都比當下著名模型,比如Artetxe et al.和BERT效果要更好。配置包括模型僅在英語數據上訓練其他數據預測(Zero-Shot零樣本學習),其他語言翻英語(Translate-Train),英語翻其他語言(Translate-Test)。這些結果都取得瞭當前SOTA結果。

39103c7a35cec7a9f89873e8bee56d14

在不同的訓練、測試集配置上對比模型和其他模型在XNLI數據集上的準確率。每一列代表一種語言。來源:XLM

用MLM初始化翻譯模型

這篇論文提出瞭BERT的又一貢獻,更確切的說是MLM模型:MLM可以作為更好的初始化技術,用來改進Lample et al. 的翻譯模型。token初始化不用FastText,而改用MLM,結果再傳到翻譯模型中。

在編碼和解碼階段均用該方法進行token初始化,翻譯模型(使用Transformer的模型)的翻譯質量提升瞭7 BLEU。具體見下表。

不同初始化方法的翻譯結果。CLM表示因果語言模型(Causal Language Modeling),不用掩碼技術,每一個詞是基於前序詞來預測的。來源:XLM

提示:這篇論文同時顯示跨語言模型對於學習一個語料匱乏的小語種是非常有用的,通過BPE算法,他們可以利用其它語言的數據,尤其是相近語言。這個結論和Artetxe et al.的結論相似。(我們的總結可以看這裡)

計算因素

BERT模型在PyTorch框架下的實現,以及預訓練模型可以在此處找到:http://github.com/facebookresearch/XLM。我們使用Volta顯卡訓練,語言模型64卡,翻譯任務8卡,訓練時間並未指定。具體的實現細節可以在論文的5.1和5.2節中找到。

結論

正如近期許多研究所示,本文也展示瞭語言模型和遷移學習的強大功能,特別是BERT,能夠在許多NLP任務上提高性能。通過簡單高效的微調,BERT的性能可以超過其他跨語言分類模型,並顯著改善翻譯模型。

有趣的是,本文中使用的翻譯模型和用於初始化的MLM模型都基於Transformer。可以推斷在將來,我們應該能夠看到更多這樣的組合應用,比如,將新的Transformer-XL用於初始化。

via http://www.sunshinestatesarah.com/2010/10/bert-endorses-ernie.html#.XV5a1m_7SUk

封面圖來源:http://straightfromthea.com/2011/08/12/sesame-street-officially-addresses-age-old-ernie-bert-gay-question/

✨本 期 譯 者:代小岱From BUPT ; 橋墩墩 From CMU

发表回复

相关推荐

日系小裙子画法,原画人教程

今天小编分享一个跟课天使芈冰整理的原画人插画教程,这个教程是由原画人橘子老师主讲的。主题是日系小裙子画法。

· 3秒前

UI和UE一字之差,UI和UE差距怎么那么大?

设计在我们的生活中扮演着重要的角色,但是面对越来越多的专业术语和相近的岗位职责,人们总是困惑:明明是差不多的岗位,为 ...

· 13秒前

如何保护手机中的隐私安全?

一、智能手机广泛应用的双重效应 智能手机的诞生和普及,彻底改变了全球数十亿人的工作和生活方式。它将强大的计算能力置于 ...

· 23秒前

怎样学好地理

我发现同学们有这一类问题的困惑:“怎样学好地理?”“高中怎样学好地理?”“初二怎样学好地理?”“怎样提高地理成绩?” 针对这 ...

· 32秒前

练字丨衡水体26个英文字母写法大揭秘,多拿10分卷面不费劲儿!

"衡水体”实质上是衡水中学学生书写的手写印刷体, 随着中考高考电子阅卷的普及,采用简洁、工整、快速的字体进行书写成 ...

· 41秒前