Improved Zero-shot Neural Machine Translation via Ignoring Spurious Correlations

Improved Zero-shot Neural Machine Translation via Ignoring Spurious Correlations

這是2019ACL的一篇文章,是香港大學和facebook AI實驗室合作完成的一篇文章。

文章鏈接:

Improved Zero-shot Neural Machine Translation via Ignoring Spurious Correlations

技術點

  1. 使用了Decoder預訓練和回譯。

摘要

Zero-shot translation是指從未在NMT系統中訓練過的語言對的翻譯。是在多語言環境中訓練系統時的緊急屬性。但是 zero-shot NMT系統訓練很容易失敗,並且對超參數設置很敏感。性能通常遠遠落後於更傳統的基於數據透視的方法,後者使用第三種語言作爲數據透視進行兩次翻譯。在這項工作中,我們通過定量分析源和解碼語句的語言ID之間的互信息來解決由於捕獲虛假相關性而引起的退化問題。受此分析的啓發,我們建議使用兩種簡單但有效的方法:(1)解碼器預訓練;(2)回譯。這些方法在三個具有挑戰性的多語言數據集上比zero-shot translation有顯著提高(4到22個BLEU點),並且與基於數據透視的方法相比取得了相似或更好的結果。

引言

zero-shot NMT對訓練條件很敏感,並且翻譯質量通常落後於使用共享語言作爲翻譯橋樑的基於樞軸的方法。我們首先從數量上表明,zero-shot NMT的退化性問題是捕獲數據中虛假相關性的結果。 然後,提出了兩種方法來幫助模型忽略這種相關性:語言模型預訓練和反向翻譯。我們在Europarl的四種語言,IWSLT的五種語言和MultiUN提供的四種語言上驗證方法的有效性。我們的實驗表明,所提出的方法可顯着提高基線 zero-shot NMT性能,並且在某些語言對中比基於軸樞的翻譯要好2-3個BLEU點。

Degeneracy Issue of Zero-shot NMT

該部分分析了Zero-shot NMT 爲什麼落後於基於軸樞的翻譯。首先 Zero-shot NMT 對訓練條件很敏感。其次是 Zero-shot NMT 捕獲數據中虛假相關性。

改善方法

文中提出了兩種改善方法:Decoder預訓練和回譯,回譯已經用爛了,但Decoder預訓練我還是頭一次見。

Language Model Pre-training

第一種方法是在MT訓練之前增強解碼器語言模型(LM)。譯碼器語言模型的學習增加了I(j;z)有利於zero-shot translation。一旦模型捕獲了引導模型輸出所需語言的正確依賴項,那麼在標準的NMT訓練期間,模型就更有可能忽略虛假的相關性。也就是說,我們將解碼器預先訓練成多語言語言模型。這表示可以通過在標準NMT訓練期間簡單地將所有源表示替換爲零向量來實施預訓練。在Transformer中,這等效於忽略編碼器和解碼器之間的attention modules 。提出的LM預訓練可以被看作是對所有可能的源句進行邊緣化的粗略近似,而從經驗上我們發現它是有效的。經過幾個梯度下降步驟後,預處理模型繼續進行MT訓練。在這項工作中,我們只考慮在預訓練期間使用相同的平行數據。我們總結了利弊如下:

  • 優點:高效(幾個LM訓練步驟+ NMT訓練),不需要額外數據。
  • 缺點:LM預訓練目標不一定與NMT目標一致。

j 和 z 之間的互信息 I(j;z) 計算公式爲:
在這裏插入圖片描述

Back-Translation

爲了在實現NMT目標的同時應用語言模型訓練,我們必須考慮編碼器。我們使用反向翻譯,尤其是多語言訓練。與使用BT進行半監督學習的初衷不同,我們利用BT生成所有 zero-shot 方向的合成並行語句,並在真實和合成語句的合併數據集上從零開始訓練多語言模型。這樣一來,每種語言都被迫翻譯成其他所有語言。因此,I(i; z)從一開始就有效地接近於0,從而防止模型捕獲 i 和 z 之間虛假的相關性。

生成合成語料庫至少需要一個合理的起點,該起點在zero-shot語言對上進行翻譯,可以通過樞軸語言(表示爲BTTP)或當前沒有BT訓練的 zero-shot NMT(表示爲BTZS)進行選擇。例如,在前面的例子中,爲了生成Es-Fr的合成對,給定En-Fr的訓練集,BTTP使用一個預先訓練的En-Es模型將每一個En句子翻譯成Es(在基於數據軸的MT中使用),而BTZS使用預先訓練的 zero-shot NMT直接將所有Fr句子翻譯成Es。接下來,我們將生成的句子按照反向Es-Fr對,並將它們合併到訓練集。在爲所有翻譯對創建合成語料庫之後,應用相同的多語言訓練方法。

  • 優點:BT明確避免了虛假相關。同樣,通過利用LM預訓練增強的 zero-shot NMT模型,BTZS可能會進一步改善。
  • 缺點:BT在計算上更加昂貴,因爲我們需要爲所有語言對創建合成的平行語料庫,以訓練K語言的多語言模型。BTTP和BTZS的性能都可能受到預訓練模型的質量的影響。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章