機器之心發布
機器之心編輯部
位元組跳動發表在 EMNLP 2020 會議上的一項研究提出多語言翻譯新範式——mRASP。
1920 年大哲學家羅素先生來中國各地訪問,陪同翻譯的是當時清華大學語言學家趙元任。趙元任極富語言天才,當時已經會說保定話、常州話、福州話、南京話等多地方言和英語。他在陪同羅素從上海到長沙的船上跟同船的經濟學家楊瑞六學長沙話,船到長沙靠岸,趙元任已經能把羅素的演講和俚語翻譯成長沙話了。神經網路翻譯能否成為「機器翻譯界的趙元任」呢?即創造一個統一的具備多種語言能力的模型,在遇到新的語言時,臨時少量學習即可達到很流利的語言水平。
趙元任(後排左二)與羅素(前排右一)
本文將給大家介紹 EMNLP 2020 新鮮出爐的多語言翻譯新範式 multilingual Random Aligned Substitution Pre-training (mRASP) [1],其核心思想是打造「機器翻譯界的趙元任模型」,通過預訓練技術再在具體語種上微調即可達到領先的翻譯效果,其在 32 個語種上預訓練出的統一模型在 47 個翻譯測試集上取得了全面顯著地提升。
mRASP 不同於以往的翻譯模式,樹立了翻譯的預訓練和微調的成功路徑。
以 BERT 為代表的預訓練範式幾乎橫掃了所有的文本理解任務,成為各種 NLP 任務的基石。然而,在文本生成尤其是機器翻譯領域,雖然預訓練模型也湧現出不少新演算法,但是取得的效果仍有一定局限性,在資源豐富程度各異的場景和多語言擴展上依然面臨著挑戰。mRASP 解決的核心問題是:能否預訓練出一個統一的翻譯模型,在任何語對例如中文到印尼語中都能通過少量微調來達到好的翻譯效果?
mRASP 主要針對機器翻譯任務而設計,它有三個應用優勢:
打破了資源場景的限制,不論平行雙語資源高低都能有所提升。在資源豐富的語言,比如標準英法翻譯任務上已經有 4000 萬平行語句訓練情況下,使用 mRASP 依然能獲得顯著提升,達到了 44.3 的 BLEU 值;在低資源語言中,mRASP 的表現令人驚喜,極端情況下,只需要一萬句訓練數據,通過 10 分鐘微調訓練,就能得到一個還不錯的翻譯系統。
打破了語種數量的限制。任何語言的翻譯,無論是孟加拉語到古吉拉特語還是印地語到菲利賓語,只要是地球上的語言,mRASP 都可以直接拿來微調,並且效果可期。
資源消耗低。相比於上百張卡的「軍備競賽」預訓練玩法,mRASP 更平民,僅需要 8 卡訓練一周就可以得到。簡單來說,我們可以把 mRASP 理解為機器翻譯領域的輕量級 BERT,只要是機器翻譯任務,任何場景或者語言,拿來用用,都有可能出現小驚喜!
論文作者表示已經在位元組跳動研發的火山翻譯系統上使用了這項技術,得到了實際業務的檢驗。作者還公布了研究數據、代碼和預訓練模型,參見文末 GitHub 地址。
接下來我們從三個方面介紹分析 mRASP:1)機器翻譯預訓練的挑戰;2)mRASP 的動機和方法;3)mRASP 的實際效果和分析。
機器翻譯預訓練的挑戰
目前絕大多數 AI 任務都是建立在數據基礎之上的統計學習,模型的性能很大程度上依賴於數據的質量和數量。利用大量較易獲得的數據來預訓練模型,在具體應用場景中再利用少量標註數據微調來實現實際場景可用的模型,已經成為 NLP 新的成功範式。例如 BERT [2] 在大規模純文本上預訓練後,在自然語言理解的 11 項任務上進行少量微調就能取得很好的成績。不過,在多語言機器翻譯中,通過預訓練再微調的範式還未取得普遍的成功。以前的 NLP 預訓練方式例如 BERT、GPT [5] 的訓練目標與翻譯任務關注的目標之間差距過大,不易直接使用。
mRASP 提出了全新的思路,利用多個語言已經積累的大量雙語平行語料,合併起來聯合訓練一個統一的模型,之後再基於此微調,讓預訓練和微調目標儘可能接近,這樣才能更大地發揮預訓練模型的作用。
上圖對比分析了之前 NLP 預訓練方法在機器翻譯場景直接應用的限制。BERT 和 GPT 分別對應了 Transformer [6] 編碼器部分和解碼器部分的預訓練,而機器翻譯用的是序列生成模型。這種模型結構的不一致會導致翻譯模型只有一部分參數被初始化,難以有效發揮預訓練的作用,因此需要很多特殊的技巧才能得到性能提升 [10]。
針對序列模型,很快也有研究者提出了 MASS [7] 和 BART [8] 等框架,將預訓練擴展到序列生成任務。它們使用 auto-encoder(自編碼器)進行自學習,在很多下游生成任務上都取得了顯著的效果。但是在機器翻譯應用中依然存在兩個重要的問題:第一是在資源豐富的語種(例如英德和英法)上沒有觀察到提升,第二沒有辦法擴展到多語種翻譯任務。這種局限性,很大一部分原因在於自編碼是相對簡單的任務,很難學習到更深層次的表示,而機器翻譯需要更複雜的語義轉化,這種預訓練目標和下游任務之間的差異導致模型很難最大程度地利用好預訓練數據。
如何克服這兩個問題,成了預訓練模型在機器翻譯領域應用的重要挑戰。
mRASP 的動機和方法
對於語言學習者來說,存在一個非常有意思的現象。他們發現在學習了三四種語言之後,再學習一門新的語言速度就會加快。例如,如果有人分別學習德語和法語,可能各需要一年的時間,然而他先學習德語再去學法語,可能只需要一年零三個月,接下來再去學習西班牙語,速度可能會更快 [3]。對於程序語言其實也是類似的道理,學習 C++ 可能需要一年,接下來再學習 Java、Python 可能只需要一個月。
一個淺顯的解釋是,人類在多語言學習的過程中會自發總結語言中比較抽象的共性,重點學習新語言的特性。因此想要提升個人的語言學習能力,往往需要學習更多的語言,能夠對語言的共性有更精確地把握,而不是拚命學習一種語言。同樣的道理,對於機器翻譯而言,能否把翻譯能力遷移到不同語言上,使得不同語言之間的信息可以互相利用,就成了一個非常有趣的問題。
mRASP 正是基於這樣的考慮,設計了一個通用的預訓練模型,學習語言之間轉換的共性,接下來就可以更容易地遷移到新的翻譯方向。就好像語言學習者一樣,在學習了兩種語言之後,學習第三種語言就變得很輕鬆了。
mRASP 的設計遵循了兩個基本原則:第一,預訓練的目標和機器翻譯基本一致,需要學習語言的轉換能力;第二,儘可能學習語言的通用表示、跨語言的句子或詞語,如果語義接近則隱空間中的表示也應該接近。
mRASP 方法,使用帶語言標識的 Transformer 作為翻譯網路框架
mRASP 遵循了通用的預訓練 - 微調框架。在預訓練階段,不同於傳統預訓練模型大量堆疊無監督單語數據的方式,mRASP 另闢蹊徑,採用了多語言平行數據作為預訓練的主要目標,將幾十種語言的平行數據放到同一個模型進行聯合訓練。
神經網路結構採用 Transformer,使用語言標識符 (Language token) 標識源語言和目標語言。為了保證不同語言的句子和詞語能嵌入到同一個空間,同一個意思的句子無論中文還是英文都應該對應同一個向量表示。此外,該方法還引入了隨機替換對齊技術 RAS,來製造更豐富的上下文。
中文句子「我 愛 北京 天安門」中的「愛」有一定概率被替換成「aime」(法語),「北京」也有一定概率被替換成「Pékin」(法語),於是原句就可能會變成「我 aime Pékin 天安門」。訓練集中的一對平行句對可以變為兩對(甚至三對、四對……):
1. 我 愛 北京 天安門 ==> I love Beijing Tiananmen Square
2. 我 aime Pékin 天安門 ==> I love Beijing Tiananmen Square
對模型而言,通過大量學習這樣的平行語料,它會很自然地根據這種「人為製造」的「語境」學習到不同語言的同義詞之間的對應關係。實際上,這種基於平行詞典的隨機替換方法,拉近了不同語言的同義句在空間上的分布。在上例中,「愛」和「aime」(法語)計算出來的詞向量期望是儘可能接近的。
而在微調階段,只需要使用預訓練階段的參數進行初始化,之後採用和傳統單向機器翻譯相同的訓練方法即可,因此使用 mRASP 並不需要掌握任何額外的技能。詳細方法介紹參見論文 [1]。
mRASP 實際效果和分析
mRASP 使用 32 個語言的平行語料進行預訓練,在英語到法語方向上僅使用 wmt14 的平行語料進行微調,就達到了不需要使用費時費力的海量單語 Back Translation 的最佳效果 (44.3 BLEU)。同時,應用到新的語言方向——荷蘭語 (Nl) 到葡萄牙語 (Pt) 時,僅使用 1.2 萬平行句對,微調了十分鐘就可以獲得一個可使用的 (BLEU 10+) 模型,而同等平行句對量很難從頭訓練一個可使用的 MT 模型(BLEU 接近 0)。
簡單概括,mRASP 具有如下幾點優勢:
模型簡單易復現
mRASP 的預訓練僅使用了共 1.1 億對平行句對(由於同一對平行句對對兩個方向都適用,所以一共是 2.2 億個訓練樣本),詞表大小僅 64k 個 bpe subword。相比於其它預訓練方法動輒百億數據幾十層網路,mRASP 的訓練難度更小,單機 8 卡不到一周即可在 32 個語言上完成預訓練。當然在更多語言上的預訓練模型也可以通過簡單擴展獲得。
通用性極強
mRASP 在大中小規模訓練集上,相對於直接訓練的單向機器翻譯模型,效果都有一定的提升,甚至包括平行語料最多的語向英語到法語(提升了 1.1 BLEU)。即使對於預訓練數據從來沒有見過的語種荷蘭語到葡萄牙語,它也取得了 10+ BLEU 的顯著收益。
這裡摘錄了部分有代表性的實驗結果:
1)En-De 和 En-Fr Benchmark
下圖對比了 mRASP 加微調在英德 (En-De) 和英法 (En-Fr) 上的效果和最近同期的其他幾個跨語言預訓練模型加微調的結果。可以看出,mRASP 的效果是有一定優勢的,它在 En->De wmt 2016 測試集上達到了 30.3 (tokenized BLEU), 在 En->Fr wmt 2014 測試集上達到了 44.3 (tokenized BLEU)。其他模型中,CTNMT 使用了 BERT 預訓練;MASS 使用了大規模單語數據;mBERT 是多語言 BERT 模型;mBART 是同期出現的另一種預訓練方式,引入了海量多語言單語數據,訓練時間達到 256 卡 20 天。
2)預訓練階段沒見過的語言擴展
不包含在預訓練階段平行句對中的語向,被稱作「Exotic Direction」。在 Exotic Direction 上是否有效果,決定了 mRASP 是否具有很好的擴展性和泛化能力。
論文中對 Exotic Direction 分為四種情況:
Exotic Pair:源語言和目標語言都經過了單獨地預訓練,但模型還沒有見過它們組成的雙語對;
Exotic Source:模型在預訓練階段只見過目標端語言,源端語言完全沒見過;
Exotic Target:模型在預訓練階段只見過源端語言,目標端語言完全沒見過;
Exotic Full:模型在預訓練階段完全沒見過源端語言和目標端語言。
在這四種未見語對情況下訓練機器翻譯很難。其中難度最大的是最後一種,相當於要求只學習了中文和英語的人,讀少量拉丁語和印地語的句子就可以做從拉丁語到印地語的翻譯。
值得關注的是,法中 (Fr-Zh) 兩邊都單獨出現過,但是沒有作為平行語對出現過,只使用了 20K 平行語料就可以達到 20+ BLEU 值。
同時,對於兩邊語言都沒在預訓練階段出現過的語對,比如荷蘭語到葡萄牙語 (Nl-Pt),只使用 1.2 萬句平行語料,經過大概 10 分鐘的訓練後,也可以達到 10+ BLEU 值。
3. 案例分析
為了更直觀地理解 mRASP 的效果,作者在論文中也進行了案例分析。
法中 (Fr-Zh)
Exotic Pair,20k 平行句對
Direct 0.7 BLEU 遠弱於 mRASP 25.8 BLEU
Direct 系統完全不能翻譯,而 mRASP 系統翻譯得很好。
荷葡 (Nl-Pt)
Exotic Full,1.2 萬平行句對
Direct 0 BLEU vs mRASP 14.1 BLEU
通過案例分析,我們發現 mRASP 得到的荷葡翻譯模型的翻譯效果雖然不能成功翻譯每個細節,但是能抓住原文的一些關鍵信息。比如下面例子中的 (1) 日期 (2) 會議記錄 會議的消息 (3) 分發 共享。
英法 (En-Fr)
我們發現,mRASP 方法訓練出來的模型比 Direct 方法的模型優秀的地方之一是:Direct 系統忽略了無實際意義單詞(冠詞、指示詞等)的傾向,而 mRASP 保持了冠詞和指示詞的一致。
英中 (En-Zh)
4. 效果分析
mRASP 作為通用的預訓練模型,它對各個 MT 下游任務的提升效果從何而來?
作者認為,其提升主要來源於兩個方面:
mRASP 拉近了不同語言間同義詞的向量表示;
mRASP 拉近了不同語言間同義句子的向量表示。
單詞級別和句子級別的表示被拉近意味著,經過預訓練階段對大量語言的平行句對的處理和學習,mRASP 隱式地「掌握」了語言無關的表示,而這個表示是可以被遷移到任意語言上的,因此 mRASP 可以普遍地提高機器翻譯下游任務的效果。
1)mRASP 拉近不同語言單詞級別的向量表示
RAS 的引入使得不同語言的同義詞之間共享相同的上下文,而在 NLP 中詞義是由上下文 (context) 決定的,從而進一步拉近不同語言之間同義詞的表示。
上圖:w/o RAS,下圖:w/ RAS
可以看出,加了 RAS 方法之後,不同語言之間的 embedding 分布被拉近了(角度變小)。
2)mRASP 拉近不同語言句子級別的向量表示
除了拉近同義詞的向量表示之外,mRASP 還拉近了語義的向量表示。
使用編碼器輸出向量作為句子的空間表徵(L2 normalized averaged-pooled encoder output),從 TED 平行測試集(經過過濾得到的 15-way 平行測試集,共 2284 條)中匹配到相似度(cosine similarity)最近的句子,計算 Top-1 準確度 (sentence retrieval accuracy)。
圖 1:mRASP 的準確度減去 mBART [9] 的準確度,注意荷蘭語(Nl)在 mRASP 預訓練數據中完全沒出現過,其他方向上的準確度都大大超過了 mBART。
mRASP 檢索的平均準確度達到 76%。
圖 2:mRASP 的準確度減去不使用 RAS 的 mRASP 方法的準確度。可以看出 mRASP 的 RAS 方法在預訓練階段沒出現過的語言 (Nl) 上有明顯收益。
圖 3:將句首的語種標識符(Language token)去掉以後,Nl 的準確度還可以進一步提升,不過其他語言上的準確度大幅下降。
可以看出,RAS 方法的確進一步拉近了語義向量表示,相同語義的句子在 mRASP 預訓練之後會得到接近的表示。
總結
回到文初,語言天才趙元任先生一生掌握 33 種方言加 7 門外語,從北方的保定到南方福州,從長江上游到下游,從美國伯克利到法國巴黎,到了當地就能用當地口音說本地話。而建立統一的多語言跨領域的翻譯模型正是機器翻譯研究的終極目標之一。向語言天才趙元任看齊的 mRASP 建立了多語言預訓練到微調到多個語種翻譯模型的成功路徑,這也會成為機器翻譯的新範式。位元組跳動已經將這項技術應用到火山翻譯系統里,可以在下方所附網頁中體驗。
Github 地址:https://github.com/linzehui/mRASP
論文地址:https://arxiv.org/abs/2010.03142
火山翻譯體驗官網:http://translate.volcengine.cn/
參考文獻
[1] Lin, Zehui, et al. "Pre-training Multilingual Neural Machine Translation by Leveraging Alignment Information." In the Conference on Empirical Methods in Natural Language Processing (2020).
[2] Devlin, Jacob, et al. "Bert: Pre-training of deep bidirectional transformers for language understanding." NAACL-HLT (1) 2019: 4171-4186.
[3] Thomas, Reed, and Callie Mady. "Teaching for transfer: Insights from theory and practices in primary-level French-second-language classrooms." McGill Journal of Education/Revue des sciences de l'éducation de McGill 49.2 (2014): 399-416.
[4] Johnson, Melvin, et al. "Google』s multilingual neural machine translation system: Enabling zero-shot translation." Transactions of the Association for Computational Linguistics 5 (2017): 339-351.
[5] Radford, Alec, et al. "Improving language understanding by generative pre-training." (2018): 12.
[6] Vaswani, Ashish, et al. "Attention is all you need." Advances in neural information processing systems. 2017.
[7] Song, Kaitao, et al. "MASS: Masked Sequence to Sequence Pre-training for Language Generation." ICML. 2019.
[8] Lewis, Mike, et al. "Bart: Denoising sequence-to-sequence pre-training for natural language generation, translation, and comprehension." ACL 2020: 7871-7880
[9] Liu, Yinhan, et al. "Multilingual denoising pre-training for neural machine translation." TACL.2020
[10] Yang, et al. "Towards Making the Most of BERT in Neural Machine Translation" AAAI.2020
NeurIPS 2020線上分享:知識圖譜嵌入的自動化
論文:《Interstellar: Searching Recurrent Architecture for Knowledge Graph Embedding》。
本篇論文作者受到神經架構搜索(NAS)的啟發,提出將 Interstellar 作為一種處理關係路徑中信息的循環架構。此外,該研究中的新型混合搜索演算法突破了 stand-alone 和 one-shot 搜索方法的局限,並且有希望應用於其他具有複雜搜索空間的領域。
11月24日,第四範式資深研究員姚權銘博士將為大家詳細解讀此前沿研究。