Google's Neural Machine Translation System

關鍵詞:automated translation 自動翻譯
谷歌傳統的機器翻譯系統:基於詞組/短語的(phrase-based) 統計機器翻譯 Statistical Machine Translation (SMT),即 Phrass-Based Machine Translation (PBMT),翻譯的是一列長度可能不相同的單詞或詞組。
PBMT 有許多缺陷 (導致翻譯不準確),爲了克服這些缺陷,提出了Neural Machine Translation (NMT) 神經機器翻譯。
結構:兩個 Recurrent Neural Networks (RNNs) 遞歸神經網絡。一個用來處理輸入的文本 (encoder network),一個用來生成翻譯後的文本 (decoder network)。
優點:end-to-end 直接學習,從輸入文本直接映射到關聯的輸出文本
缺點:主要有三個
  1. 速度慢:對大規模的數據集,訓練的速度慢;推斷 (即最後翻譯) 的速度也慢,因爲涉及到大量的參數;
  2. 準確率低,不穩健(lack robustness):處理罕見詞時比較無能;
  3. 有時候並不翻譯所有輸入的內容,即,沒有完全覆蓋 (cover)所有的輸入文本。
爲了處理這三個缺點,GNMT的方法是:
  1. 爲了加快速度:使用了8層的 Long Short-Term Memory (LSTM) RNNs。
    • 層與層之間的 residual connection 殘差相關是爲了促進梯度流 (encourage gradient flow)[不是很清楚,可能加快梯度下降的速度];
    • decoder network 的最高層與 encoder network 的最底層之間的 attention connection 是爲了並行計算 (parallelism),從而減少訓練的時間;
    • 使用了低精度計算,以減少推斷時間,即增加了翻譯速度;並且用 Google 的 Tensor Processing Unit (TPU) 張量處理單元進行加速。
  2. 爲了增加準確率,使得更加穩健,也就是改進對罕見詞的處理,在輸入和輸出時都採用了 wordpieces 系統。
  3. 長度正則化過程 length normalization procedure 來處理 decoding 時,不同長度的假設之間的比較問題。coverage penalty 懲罰項,能夠促使模型翻譯所有的輸入內容。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章