102個模型、40個數據集,這是你需要了解的機器翻譯SOTA論文

2021-01-10 機器之心Pro

機器之心原創

作者:思源

機器翻譯,是一條漫漫長路;SOTA 模型,都包含著作者們的深刻見解。

機器翻譯一直是非常吸引研究者的「大任務」,如果某些方法被證明在該領域非常有效,那麼它很可能可以擴展到其它問題上。例如 Transformer,它出生於機器翻譯家族,卻廣泛應用於各種序列建模任務。

其實機器翻譯也走過一條漫漫長路,從早期基於規則與實例的方法,到基於統計的機器翻譯,再到目前基於深度神經網絡的翻譯系統,我們探索了非常多的可能性與思路。有的在剛提出來就受到很多關注,有的則受限於計算資源,直到今天才展現出其強大的能力。

1954 年,人類第一次嘗試俄語到英語的自動翻譯,這種基於規則的翻譯第一次證明機器翻譯是可行的。

1954 年的機器翻譯報導。

自此之後,機器翻譯主要歷經了四種模式:

基於規則的方法:它首先會將源語言句子解析為語法樹,再經過一系列操作轉化為目標語言的語法樹,最後只需要根據目標語法樹生成目標語句就行了。基於實例的方法:它的基本思想即將源語言句子分割為翻譯實例中見過的短語片段,並根據相似性檢索出與待翻句子片段相似的實例,最後對相似實例的翻譯結果執行替代操作,我們就能得到源語短語片段的翻譯結果。統計機器翻譯:將源語言句子分割為短語片段,利用基於雙語語料庫學習到的短語翻譯知識,將源語言短語轉化為合適的目標短語。最後對目標短語片段進行合理的調序,並生成完整的譯文。神經機器翻譯:利用深度神經網絡將原語言句子編碼為一個低維向量,然後再直接解碼為目標語言句子。

其實早幾年我們可能感覺機器翻譯還需要大量的人工調整,包括表達方式、專業詞彙、句式結構等等。但是隨著 GNMT 等神經機器翻譯模型的崛起,尤其是 Transformer 展現出強大的能力,體驗上,機器翻譯效果已經非常驚人了。很多時候只需要調整少數詞或表達就能得到滿意的結果,甚至在特定領域上能超過人類的專業翻譯水平。

那麼,從 GNMT 到現在已經三年了,Transformer 的誕生也有兩年了。我們可能很想知道,在最近的 NMT 研究中,到底有什麼樣的 SOTA 模型,翻譯效果又有什麼樣的進步?

在這篇文章中,我們將一探機器翻譯 102 個模型、40 個數據集,從中找找 SOTA 模型到底都有什麼。

機器之心 SOTA 項目

以前我們找 SOTA 模型,基本上只能靠背景知識與各種 Benchmark,頂多也是 Follow 一些收集頂尖模型的 GitHub 項目。但隨著任務細分與新數據集的不斷公布,這些只關注主流數據集的 Benchmark 就有些不太夠用了。機器之心構建的 SOTA 模型項目,就旨在解決這個問題,我們可以直接從機器之心官網中找到 SOTA 平臺,並搜索想要的頂尖模型。

為了探索當前最佳的 NMT 模型,我們選了幾個常見的數據集,並看看在 Transformer 之後,還有哪些激動人心的研究成果。我們發現不同的 NMT 模型都有其側重的數據集,但最常用的還是 WMT 英法數據集或英德數據集。除此之外,我們也特意找了中英數據集,看看適合翻譯中文的模型又是什麼樣的。

如下是基於 WMT 2014 English-French 數據集的模型,展開後可以看到對應論文與代碼。後面我們也會介紹 Transformer Big + BT 模型的核心思路,看看它如何繼承了 Transformer 衣缽。

除此之外,當我們選擇 WMT French-English 數據集後,我們發現當前的 SOTA 模型 MASS 是微軟亞洲研究院劉鐵巖等研究者提出來的,它的基本思想承接於 BERT 預訓練模型,是另一個非常吸引人的方向。

最後在選擇 NIST Chinese-English 數據集時,我們發現早一段時間馮洋等研究者提出的 Oracle Word 能獲得當前 SOTA 結果,該研究也獲得了 ACL 2019 最佳論文。

總體而言,這三個 SOTA 模型都有著獨特的優化方向,其中 Transformer Big + BT 探索用更多的單語數據強化模型效果、MASS 探索預訓練語言模型與無監督的翻譯方法、Oracle Word 則探索如何能彌補訓練與推斷間的鴻溝。

Transformer Big + BT:回譯是王道

一般而言,訓練 NMT 模型需要原文與參考譯文這種成對的雙語數據。但是,雙語數據相對於網絡上常見的大量單語數據要有限地多。在這一項研究中,研究者展示了如何通過僅提供我們想要翻譯的語言的文本來提升模型的翻譯性能,他們表明利用大量的此類數據可以大幅提升模型準確度。

論文:Understanding Back-Translation at Scale論文地址:https://arxiv.org/pdf/1808.09381v2.pdf

通過單語數據提升 NMT 模型最高效的方法之一是回譯(back-translation)。如果我們的目標是訓練一個英語到德語的翻譯模型,那麼可以首先訓練一個從德語到英語的翻譯模型,並利用該模型翻譯所有的單語德語數據。然後基於原始的英語到德語數據,再加上新生成的數據,我們就能訓練一個英語到德語的最終模型。

該論文表示,讓模型理解數據的正反翻譯過程是非常重要的,通過採樣故意不總是選擇最好的翻譯同樣也能得到性能提升。如下動圖展示了回譯的主要過程,相當於我們用左邊較少的數據集生成了右邊較大的數據集,並在兩種數據集上訓練而獲得性能提升。

研究者表示,如果我們把 2.26 億個反向翻譯的句子添加到現有的包含 500 萬個句子的訓練數據中,我們就能大幅提升翻譯質量。下圖(左)顯示了這一系統在標準 WMT』14 英-德基準測試集上的準確率,該系統在 16 個 DGX-1 機器上需要訓練 22.5 小時。圖中還顯示了 DeepL 的準確率,這是一個依賴於高質量人工翻譯的專業翻譯服務,此前該服務在該基準測試上表現最佳。

MASS:預訓練必不可少

BERT 或 XLNet 等預訓練語言模型獲得了非常好的效果,它們能學習到一些通用的語言知識,並遷移到下遊 NLP 任務中。受到這種範式的啟發,微軟亞研劉鐵巖等研究者提出了 MAsked Seq2Seq 預訓練模型(MASS),用於基於編碼器-解碼器的語言生成任務,例如機器翻譯。

論文:MASS: Masked Sequence to Sequence Pre-training for Language Generation論文地址:https://arxiv.org/abs/1905.02450v5

MASS 採用了編碼器-解碼器框架,並嘗試在給定部分句子的情況下修復整個句子。如下所示為 MASS 的框架圖,其輸入句子包含了一些連續的 Token,並且中間會帶有一些連續的 Mask,模型的任務是預測出被 Mask 掉的詞是什麼。相比 BERT 只有編碼器,MASS 聯合訓練編碼器與解碼器,能獲得更適合機器翻譯的表徵能力。

MASS 整體框架,其中「_」表示被 Mask 掉的詞。雖然關注自然語言理解的 BERT 只需要編碼器就行,但這種關注語言生成的預訓練模型需要同時保留編碼器與解碼器。

正因為這種聯合訓練編碼器-解碼器的方法,MASS 非常適合擁有較少雙語語料的翻譯任務。此外,它在無監督翻譯中也能得到非常不錯的效果,甚至超過早期基於注意力機制的有監督翻譯模型。

在 MASS 中被 Mask 掉的詞數量是可選的,如果輸入只 Mask 掉一個詞(k=1),那麼它就等價於 BERT,因為解碼器沒有了額外的輸入信息。如果 Mask 掉所有詞,那麼就等價於 GPT 這種標準的自回歸語言模型,因為編碼器完全沒有輸入信息。如果只 Mask 掉部分詞,那麼它就非常適合機器翻譯這種生成任務了。

MASS 的兩種極限選擇,它們分別等價於 BERT 與 GPT。

MASS 這種架構可以強迫編碼器理解輸入句子的意義,並鼓勵解碼器從編碼器中抽取有用的信息。此外,因為解碼器預測的是連續的詞,因此它也能構建更強大的語言建模能力。這種結構非常符合語言生成模型的要求,因此經過預訓練後的模型只需要簡要的微調就能有比較好的效果。

在該論文的實驗結果中,這種預訓練模型在無監督機器翻譯(只有單語數據)和少樣本機器翻譯中效果都非常出眾。此外,即使在通常較為充足的雙語數據中,MASS 的預訓練也能獲得更多的性能提升。

Oracle Word:訓練與預測之間有 Gap

目前 NMT 的訓練範式有兩大局限性。首先在訓練過程中,每預測一個譯文詞,它都會以已知的標註詞作為約束,然而在推斷中,模型只能以已知的預測詞作為約束,這種不匹配就造成了模型在測試集的效果沒那麼好。其次在訓練中,我們要求模型預測的譯文必須與標註的譯文一一對應,很明顯這也會限制翻譯的多樣性。

為了解決這兩個問題,這項研究提出了在訓練過程中用 Oracle Word 強化 Ground Truth Word。也就是說,在翻譯模型的訓練中,它不止會將標註數據作為指導,同時也會將預測結果作為指導。這很大程度上降低了訓練和推斷之間的差異,並大大提升了模型的預測效果。

論文:Bridging the Gap between Training and Inference for Neural Machine Translation論文地址:https://arxiv.org/abs/1906.02448

其中 Oracle Word 可以簡單理解為模型預測出的候選詞,它的選擇方法有兩種,即 word-level oracle 和 sentence-level oracle。

詞語級別的 Oracle Word 選擇方法。

word-level oracle 的選擇方法如圖所示,在時間步為 j 時,獲取前一個時間步模型預測出的分數。為了提高模型的魯棒性,論文在預測分數基礎上加上了 Gumbel noise,最終取分數最高的詞語作為此時的 Oracle Word。sentence-level oracle 的選擇方法則是在訓練時的解碼階段中,使用束搜索的方法,選擇前 k 個備選句子,然後計算每個句子的 BLEU 分數,最終選擇分數最高的句子。這種方式選擇出來的句子就可以作為模型的預測結果,並指導模型繼續學習。

現在有了候選詞,那麼我們就要考慮如何將它們加入標註詞,並共同訓練模型。這篇研究的思路非常精煉,即在訓練過程中,隨機選擇兩者中的一個作為模型所需的信息。具體而言,如果模型要預測譯文的第 j 個詞,那麼模型會以 p 的概率選擇 Oracle Word、以 1-p 的概率選擇 Ground Truth Word 作為所需的第 j-1 個譯文詞。

現在,在訓練中,只需要令概率 p 遞增,那麼相當於從傳統的訓練過程逐步遷移到推斷過程,這兩者之間的鴻溝也就不存在了。

如下所示為該項研究在 NIST Chinese-English 數據集上的效果,其中 MT03 表示 NIST 2003 作為測試集的效果。我們可以看到,不論是將 Oracle Word 加到 RNN 架構還是加到 Transformer 架構,它都能得到性能上的提升(BLEU 值)。

最後,以上 3 個 SOTA 模型只是從不同的角度提升機器翻譯效果,SOTA 項目中還能找到更多優秀的模型,它們都有各自的特點與關注的角度。總的而言,理解機器翻譯最前沿的思想,這些 SOTA 模型都是要了解的,我們需要從各個角度看看神經機器翻譯的潛力到底怎麼樣。

機器之心「SOTA模型」:22大領域、127個任務,機器學習 SOTA 研究一網打盡。

www.jiqizhixin.com/sota

相關焦點

  • 全球最大人臉數據集;類Transformer模型跨界視覺任務新SOTA
    機器之心 & ArXiv Weekly Radiostation參與:杜偉、楚航、羅若天本周的重要論文包括格靈深瞳等機構開源的全球最大人臉數據集,以及類 Transformer 模型跨界在視覺任務上取得了新 SOTA。
  • 腦機接口利器,從腦波到文本,只需要一個機器翻譯模型
    這篇論文的工作思路異常簡單。他們將腦波到文本的轉換視為機器翻譯的過程,腦波為輸入序列,文本為輸出序列。通過讓受試者朗讀文本,收集相應腦區的電波,構成訓練數據集,然後去訓練一個端到端的機器翻譯模型。更具體地說,在這兩種情況下,目的都是將任意長度的序列轉換為任意長度的另一序列。這裡需要重點強調一下「任意」,因為輸入和輸出序列的長度是變化的,並且彼此之間並不必須有確定性的一一對應關係。在Joseph 等人的這項工作中,他們嘗試一次解碼一個句子,這和現在基於深度學習的端到端機器翻譯算法類似。
  • Facebook 100種語言互譯模型原始碼公開!機器翻譯再也不用英語當...
    智東西(公眾號:zhidxcom)編 | 子佩智東西10月23日消息,Facebook近期開源其M2M-100原始碼,這是首個可以不依賴英語數據而可以實現100個語言對互相翻譯的機器翻譯模型(如中文-法文互譯為一個語言對)。
  • 北大獲中國首個WWW大會最佳論文獎,提出ELSA跨語言情感分析模型
    針對這一現象,學術界提出了「跨語言情感分析」,將英語語料中學習到的知識遷移到那些缺乏標註語料的語言(稱為目標語言)上。最直接的跨語言情感分析方法就是使用機器翻譯技術來連接兩種語言。比如,將目標語言文本翻譯成英語,直接使用英語的情感分析工具來處理翻譯語料。
  • 一口氣發布1008種機器翻譯模型,GitHub最火NLP項目大更新:涵蓋140...
    一口氣發布1008種機器翻譯模型,GitHub最火NLP項目大更新:涵蓋140種語言組合 2020-05-19 15:51 來源:澎湃新聞·澎湃號·湃客
  • 百分點認知智能實驗室出品:機器翻譯是如何煉成的(下)
    讀完本文,您將了解:· 神經機器翻譯模型如何進化並發展成令NLP研究者萬眾矚目的Transformer模型;· 基於Transformer模型,我們如何打造工業級的神經機器翻譯系統。這兩件事標誌著以神經網絡作為基礎的機器翻譯,開始全面超越此前以統計模型為基礎的統計機器翻譯(SMT),並快速成為在線翻譯系統的主流標配。2016年穀歌部署神經機器翻譯系統(GNMT)之後,當時網上有一句廣為流傳的話:「作為一個翻譯,看到這個新聞的時候,我理解了18世紀紡織工人看到蒸汽機時的憂慮與恐懼。」
  • 落地機器翻譯服務,Atman推出TransGod翻譯工具
    Atman採用了目前國際上普遍認可的基於深度學習的神經網絡機器翻譯算法,這一算法目前已經被Google、Facebook、有道、搜狗等公司採用,並提升了翻譯的效果。具體的研發策略上,團隊認為一個統一的翻譯模型可能很難適用所有領域,因此會針對不同的專業領域開發不同的翻譯模型。一般來說,進入一個新的領域大約需要2周時間。此前接受36氪採訪時,Atman解釋,這是因為團隊做了通用的機器翻譯模型,代碼框架也是通用的,進入新的領域主要需要通過新的語料素材訓練,實現周期可以做到兩周。
  • TensorFlow最出色的30個機器學習數據集
    它是一個端到端平臺,適合完全沒有經驗的初學者和有經驗的數據科學家。TensorFlow庫包括工具、預訓練模型、機器學習教程以及一整套公開數據集。為了幫助你找到所需的訓練數據,本文將簡單介紹一些TensorFlow中用於機器學習的大型數據集。我們將以下數據集的列表分為圖像、視頻、音頻和文本。TensorFlow圖像數據集1.
  • 別再SOTA了,Science發文炮轟論文灌水
    真正的好算法,需要經得起考驗,那麼結果又如何呢?第一輪考驗:剪枝 vs 架構研究人員基於ImageNet,繪製了剪枝後模型的準確率和壓縮/加速水平,以及沒有做過剪枝、不同架構的相同指標,結果如下圖所示。
  • Atman 劉昌芳:醫學機器翻譯與機器寫作
    第一,不同於谷歌、百度面向通用領域的機器翻譯,我們做醫學領域的機器翻譯;第二,Atman 會為用戶定製私有化訓練。什麼是私有化訓練?如果用戶之前有翻譯過的文檔,我們可以用這些文檔再次訓練(模型),翻譯得更加準確。第三,我們可以做私有部署,將客戶的機器翻譯部署到企業內部,數據安全更有保障。
  • 漫畫文字自動翻譯
    發論文、公開數據集、商業化一條龍在科研方面,目前該篇論文已經被 AAAI 2021 接收,研究團隊還開源了一個包含五部不同風格(幻想、愛情、戰鬥、懸疑、生活)的漫畫,所組成的翻譯評估數據集。OpenMantra 漫畫翻譯評估數據集論文地址:https://arxiv.org/abs/2012.14271數據格式:帶注釋的 JSON 文件和原始圖像數據內容:1593 個句子、848 個場景、214 頁漫畫數據大小:36.8 MB更新時間:2020 年 12 月 7 日下載地址:https://hyper.ai/datasets/14137在產品化方面,Mantra
  • ICLR 2020 匿名評審九篇滿分論文,最佳論文或許就在其中
    機器之心整理 參與:思源、蛋醬、澤南 從反傳的自動微分機制,到不平行語料的翻譯模型,ICLR 2020 這 9 篇滿分論文值得你仔細閱讀。
  • 百度何中軍:機器翻譯——從設想到大規模應用
    百度何中軍帶來報告《機器翻譯 —— 從設想到大規模應用》。何中軍,博士,百度人工智慧技術委員會主席,從事機器翻譯研究與開發十餘年,申請專利40餘項,研發了全球首個網際網路神經網絡翻譯系統、首個WiFi翻譯機、首個語義單元驅動的語音到語音同傳系統。
  • Transformer:隱藏的機器翻譯高手,效果趕超經典 LSTM!
    這看似抽象,但舉個例子就很好理解了:在閱讀本文時,你會總是把注意力集中在你閱讀的單詞上,但同時你的腦海仍然保留了一些重要關鍵詞,以便聯繫上下文。所以,注意機制對於給定序列的工作方式與我們的閱讀方式類似。對於上文提到的擬人編碼器和解碼器的,我們可以想像為,編碼器不僅用虛構語言寫下句子的翻譯,而且還寫了對句子語義理解很重要的關鍵詞,並將這些關鍵詞以及常規翻譯都提供給解碼器。
  • 你的定製版「谷歌」機器翻譯體系
    但是已經了解模型體系結構,試圖擴展設計,和真實世界的用戶打交道時,就不再需要通用工具了。MarianNMT是專門的工具,旨在簡單快捷搭建產品級的翻譯系統。這裡沒必要費力氣做重複的工作,只是舉個例子說明機器學習從研究實驗室進入日常使用,使得軟體領域發展得越來越成熟。
  • 重磅| 谷歌大腦養成記:從識別貓到突破性機器翻譯
    為什麼這樣的網絡需要如此之多的神經元和數據呢?因為從某種程度上講,該網絡的工作方式就像是一種「機器民主」。可以假想你想要計算機進行 5 種分類,你的網絡由數億個神經元「投票人」組成,他們可以進行 5 個選項的投票:貓、狗、蜘蛛猴、勺子和除顫器。然後你拿出一張圖片問:這是貓、狗、蜘蛛猴、勺子和除顫器中的哪一個?投票者開始投票,然後網絡統計員根據大多數的意見認為這是狗。
  • ...種語言的全新數據集:有效提升 BERT 等多語言模型任務精度高達...
    通過新數據的訓練,該模型對釋義識別任務的精度從 50% 提高到了 85-90%。相比之前即使在有新的訓練數據時,無法獲得非本地上下文信息的模型仍然無法完成釋義識別任務的情況;這一新數據集則為測量模型對語序和結構的敏感性提供了一個有效的工具。
  • 機器翻譯:谷歌翻譯是如何對幾乎所有語言進行翻譯的?
    它使用人工神經網絡來預測某個單詞序列的概率,通常在單個集成模型中對整個句子進行建模。憑藉神經網絡的強大功能,神經網絡機器翻譯已經成為翻譯領域最強大的算法。這種最先進的算法是深度學習的一項應用,其中大量已翻譯句子的數據集用於訓練能夠在任意語言對之間的翻譯模型。
  • 170多萬篇論文,存儲量達1.1 TB,Kaggle上線arXiv完整數據集
    近期,為了讓 arXiv 可用度更高,康奈爾大學和其他一些開發者在 kaggle 上創建了一個免費、開放的 arXiv 數據集。該數據集是一個含有 170 多萬篇學術論文的存儲庫,用戶可以獲取論文的標題、作者、類別、摘要、全文 pdf 等。
  • 谷歌同志是位好「翻譯」!|翻譯|谷歌|谷歌翻譯|google translate
    既然GNMT是通過應用基於實例的的機器翻譯方法來改進翻譯質量,那麼系統就需要會從數百萬個乃至更多的示例中學習,從這些來源中推斷出最相關的翻譯,然後將結果重新排列並組成基於符合人類語言的語法翻譯。這也就意味著,當GNMT進行學習時,需要目標語言有大量文本數據。