Unsupervised Bilingual Word Embedding Agreement for Unsupervised Neural Machine Translation
-
- 知識點
- 摘要
- 引言
- 初步實驗
- Train UNMT with UBWE Agreement
這是2019ACL的一篇文章,探究了無監督的雙語詞嵌入和無監督神經機器翻譯之間的關系。
哈工大的一篇文章,感覺文章并沒有什麼實質性的内容,就是把一個并不複雜的問題公式化,然後看起來很複雜的樣子,實際上用的方法還不是以前方法提到過的,說的很高大上的樣子,看的雲裡霧裡,一篇短文可以說明的問題硬是寫成了長文
文章連結:
Unsupervised Bilingual Word Embedding Agreement for Unsupervised Neural Machine Translation
知識點
- 提出 UBWE協定正規化和UBWE對抗性訓練,使UBWE和UNMT在訓練過程中互相作用,進而提高了翻譯性能。
- 使用不同檢查點的VecMap嵌入對UNMT進行預訓練,可以獲得不同精度級别的UBWE(無監督的雙語詞嵌入)。
摘要
無監督的雙語詞嵌入(UBWE)以及其他技術(例如反向翻譯和去噪)已幫助無監督的神經機器翻譯(UNMT)在幾種語言對中取得了令人矚目的成就。在以前的方法中,首先使用非并行單語語料對UBWE進行訓練,然後使用這種經過預先訓練的UBWE來初始化嵌入在UNMT的編碼器和解碼器中的單詞。 也就是說,UBWE和UNMT的教育訓練是分開的。 在本文中,我們首先通過實證研究UBWE與UNMT之間的關系。實證結果表明,UBWE的表現對UNMT的表現有很大的影響。是以,我們提出了兩種用UBWE協定訓練UNMT的方法。在幾種語言對上的經驗結果表明,所提出的方法明顯優于正常的UNMT。
引言
文中研究了UBWE和UNMT之間的關系:
- 預訓練UBWE的品質和UNMT的效果成正相關。
- 在UNMT訓練期間,UBWE的品質顯著下降。
基于這兩個發現,我們假設通過UBWE協定學習UNMT可以提高UNMT的效果。詳細地說,我們提出了兩種方法,即UBWE協定正規化和UBWE對抗訓練,以在NMT教育訓練期間保持UBWE的品質。幾種語言對上的實驗結果表明,所提出的方法明顯優于原始的UNMT。本文的其餘部分安排如下。
- 第2節中,我們介紹了UNMT的背景。
- 第3節中介紹和分析初步實驗的結果。
- 第4節中,我們提出了與UBWE協定共同訓練UNMT的方法。
- 第5節和第6節中,我們描述了評估我們方法性能的實驗并分析實驗結果。
- 第7節介紹了一些相關的工作。
- 第8節總結論文。
初步實驗
為了研究UBWE和UNMT之間的關系,我們根據經驗選擇了一種相似的語言對(英語-法語屬于同一語言家族)和一種遙遠的語言對(英語-日語屬于不同語言家族)作為語料庫。
3.1 Effect of UBWE Quality on UNMT Performance
圖1顯示了使用不同準确度級别的UBWE時UNMT的性能。為了獲得不同精度級别的UBWE,我們使用在不同檢查點的VecMap嵌入來對UNMT進行預訓練。

[email protected]表示使用MUSE測試集中的第1位預測候選詞來訓示單詞翻譯的準确性。
随着UBWE準确性的提高,兩種語言對的NMT性能都有所提高。這說明預訓練UBWE的品質對于UNMT來說是非常重要的。
3.2 Trend of UBWE Quality during UNMT Training
圖2顯示了UNMT在整個訓練階段中UBWE準确性和BLEU分數的趨勢。VecMap被用來為UNMT的編碼器和解碼器預訓練單詞嵌入。我們使用編碼器的源嵌入和解碼器的目标嵌入來計算UNMT訓練期間MUSE測試集上的單詞翻譯準确性。無論使用哪種語言,UBMT的績效在UNMT教育訓練過程中均大幅下降。
3.3 Analysis
本節分析一些可能的解決辦法:
Use fixed embedding?
固定詞嵌入,在訓練的過程中不改變。很多論文中用過此方法。本文證明并不可行。
如圖2所示,在UNMT訓練過程中UBWE性能顯着下降。是以,我們嘗試在原有的基線系統(baseline -fix)的基礎上修複編碼器和解碼器的嵌入。表1顯示了baseline -fix系統的性能與原始基線系統的性能非常相似。換句話說,Baseline-fix可以防止UBWE精度下降;然而,固定的嵌入也阻止了UBWE進一步改進UNMT訓練。是以,固定的UBWE并不能提高UNMT的性能。
Use byte pair encoding (BPE) to increase shared subwords?
BPE算法也很常見,但本文中沒有采用。
對于英語-法語和英語-德語UNMT,Lample等人将兩個雙語語料庫連接配接成一個單語語料庫。他們采用了BPE來擴大兩種語言的共享子詞數量。使用預先訓練好的單語子詞嵌入作為UNMT的初始化。由于在這些相似的語言對中存在大量的共享子詞,是以該方法比其他UBWE方法具有更好的性能。然而,這種初始化并不适用于遙遠的語言對,比如英語-日語和英語-漢語,因為它們很少有共享的子單詞。在UNMT中使用基于單詞的嵌入更加普遍。此外,基于單詞的嵌入很容易與UBWE技術相結合。是以,我們在提出的方法中沒有采用BPE。
Train UNMT with UBWE Agreement
基于以往的實證結果和分析,我們提出了兩種聯合協定機制,即:, UBWE協定正規化和UBWE對抗性訓練,使UBWE和UNMT在訓練過程中互相作用,進而提高了翻譯性能。圖3說明了UNMT的結構和拟議的協定機制。
一般來說,在UNMT教育訓練中,會添加一個目标函數L_BWE來確定UBWE一緻。一般的UNMT目标函數可以重新表述如下:
4.1 UBWE Agreement Regularization
基于UNMT的現有體系結構,我們在反向翻譯期間誘導UBWE協定正則化,以在UNMT訓練期間保持編碼器和解碼器中的UBWE準确性。 編碼器和解碼器嵌入的相似度函數Similarity(L1; L2)用于測量UBWE精度,目标函數L_BWE為:
enc_L1和enc_L2分别是L1和L2編碼器的所有詞嵌入,dec_L1和dec_L2分别是L1和L2解碼器的所有詞嵌入。
由于在UNMT中沒有可以用作雙語詞典的測試或開發資料集,是以在計算相似度Similarity(L1; L2)之前,我們需要在NMT訓練過程中生成一個合成的詞對詞典來測量UBWE準确性。我們使用CSLS來衡量UBWE準确性。這也可以看作是源詞嵌入和目标詞嵌入之間的相似性(facebook第一篇中的方法)。
由于字典尺寸太大,文中做了篩選,将CSLS評分進行排名,選擇排名靠前的詞對組成新的字典。enc_yj表示編碼器L2對單詞yj的嵌入,dec_xj表示解碼器L1對單詞xj的嵌入。兩個字典的大小都設定為|Dict|。是以,編碼器和解碼器中的詞嵌入之間的相似度可測量為
Dict中單詞對之間的上述相似性用于反向翻譯期間的UBWE協定正則化。注意,在UNMT訓練的每個epoch中,都會動态地選擇合成詞對字典。
4.2 UBWE Adversarial Training
通過對抗訓練求出 編碼器詞嵌入 到 解碼器詞嵌入 的映射矩陣 W_1。
與生成字典時候求得的映射矩陣有什麼不同?
在UBWE,通過轉換矩陣将源詞嵌入映射到目标詞嵌入。借鑒此方法,我們使用相反的方向引進了一個轉換矩陣。生成器估算為:
其中,enc_x為L1編碼器詞嵌入,dec_y為相應的L2解碼器詞嵌入,W1為将enc_x的嵌入空間投影到dec_y的嵌入空間的變換矩陣。鑒别器D_1是一個多層感覺器,它表示單詞嵌入來自于這種語言的機率。它被訓練來區分詞嵌入W1enc_x和dec_y屬于哪種語言。W1則使W1enc_x和dec_y越來越相似來迷惑鑒别器D_1。也就是說,我們訓練D1使其在原始詞嵌入(解碼器詞嵌入吧?)和G1樣本之間以最大的機率選擇準确的語言。生成器G1被訓練成最小化log(1−D_1(G1(enc_x)))。是以,值函數V (G_1;D_1)優化為: