Google 是如何使用新興AI技術來提高語言翻譯質量的?

Google 表示,對於那些沒有大量書面文本的語言,它在提高翻譯質量方面取得了進展。在即將發表的一篇博文中,Google 詳細介紹了一些新的創新,這些創新增強了 Google Translate(Google 翻譯)支持的 108 種語言(特別是數據貧乏的約魯巴語(Yoruba)和馬拉雅拉姆語(Malayalam))的用戶體驗。Google Translate 的服務平均每天翻譯 1500 億字。

自 Google Translate 公開亮相以來的 13 年裏,神經機器翻譯基於重寫的範式設備上處理等技術已經使該平臺的翻譯準確率實現了可量化的飛躍。但直到最近,即使是支撐 Google Translate 的最先進算法也落後於人類的表現。Google 之外的努力表明了這個問題的嚴重性——Masakhane 項目,旨在使非洲大陸的數千種語言實現自動翻譯,但該項目尚未完成數據收集和轉錄階段。而 Common Voice,是 Mozilla 致力於建立的開源轉錄語音數據集,自 2017 年 6 月啓動以來,只審覈了 40 種語言。

Google 表示,其翻譯突破並不是由單一技術推動的,而是針對低資源語言、高質量語言、總體質量、延遲和總體推理速度的技術組合。2019 年 5 月至 2020 年 5 月期間,根據人工評估和 BLEU(一種基於系統翻譯和人工參考翻譯之間相似度的衡量指標)來衡量,Google Translate 在所有語言中,平均翻譯的得分提高了 5 分或更多,在 50 種資源最低的語言中平均提高了 7 分或更多。此外,Google 還表示,Google Translate 更能抵禦機器翻譯“幻覺”,這種“幻覺”是一種現象,人工智能模型在接收無謂輸入時會產生奇怪的“翻譯”,比如“Shenzhen Shenzhen Shaw International Airport(SSH)”,得到的泰盧固語(Telugu)結果就是“ష ష ష ష ష ష ష ష ష ష ష ష ష ష ష”,意思就是“Sh sh sh sh sh sh sh sh sh sh sh sh sh sh sh sh sh”。

混合模型和數據挖掘器

這些技術中的第一項是翻譯模型架構:由 Transformer 編碼器和遞歸神經網絡(RNN)解碼器組成的混合架構,在 Lingvo 中實現,Lingvo 是一個用於序列建模的 TensorFlow 框架。

在機器翻譯中,編碼器通常將單詞和短語編碼爲內部表示,然後解碼器使用這些內部表示來生成所需語言的文本。Google 研究人員在 2017 年首次提出了基於 Transformer 的模型,在這方面顯然比 RNN 更有效,但 Google 表示,它的研究表明,大部分質量提升僅來自 Transformer 的一個組件:編碼器。這可能是因爲 RNN 和 Transformer 都是爲了處理有序的數據序列而設計的,但 Transformer 並不要求按順序處理序列。換句話說,如果處理的是自然語言,Transformer 在處理結束之前無需處理句子的開頭。

不過,RNN 解碼器在推理時間上仍然比 Transformer 內的解碼器要“快得多”。認識到這一點,Google Translate 團隊在將 RNN 解碼器與 Transformer 編碼器進行耦合之前,對 RNN 解碼器進行了優化,以創建低延遲的混合模型,其質量和穩定性都高於他們所取代的已有四年曆史的基於 RNN 的神經機器翻譯模型

圖:Google Translate 模型自 2006 年推出以來的 BLEU 得分。

除了這種新穎的混合模型架構外,Google 還升級了已有數十年曆史的網絡爬蟲程序,用來從文章、書籍、文檔和網絡搜索結果等方面的數百萬個翻譯樣本中編譯訓練語料庫。新的數據挖掘器是基於嵌入的 14 種大型語言對,而不是基於詞典的,這意味着它使用實數向量來表示單詞和短語,更注重準確率(檢索數據中相關數據的分數),而不是召回率(實際檢索到的相關數據總量的分數)。在生產中,Google 稱這使數據挖掘器提取的句子數量平均增加了 29%。

噪聲數據與遷移學習

另一個翻譯性能的提升來自於一種更好地處理訓練數據中噪聲的建模方法。所謂噪聲數據,是指含有大量無法正確理解或解釋的信息的數據,會對數據豐富的語言的翻譯造成危害,因此,Google Translate 團隊部署了一個系統,該系統使用對有噪音的數據進行訓練的模型,並根據“乾淨”的數據進行調整,爲樣本分配分數。實際上,這些模型開始對所有數據進行訓練,然後逐漸在更小、更乾淨的子集上進行訓練,這種方法在人工智能研究領域被稱爲“課程學習”(curriculum learning)。

在低資源語言方面,Google 在 Google Translate 中實現了一個反向翻譯的方案,增加了並行訓練數據,即語言中的每個句子都與其翻譯配對(機器翻譯傳統上依賴於源語言和目標語言的配對句子語料庫的統計)。在該方案中,訓練數據與合成的並行數據自動對齊,使得目標文本爲自然語言,而原文本是由神經翻譯模型生成的。其結果是,Google Translate 利用了更豐富的單語文本數據來訓練模型,Google 認爲這對於提高流利度尤其有幫助。

圖:使用Translate的Google Maps

Google Translate 現在還使用了 M4 建模,M4 是一個巨型模型,可以在多種語言和英語之間進行翻譯。M4 是去年的一篇論文中首次提出的,該論文表明,在對 100 多種語言的 250 多億句子對進行訓練後,它提高了 30 多種低資源語言的翻譯質量。M4 建模使 Google Translate 中的遷移學習成爲可能。因此,通過對包括法語、德語和西班牙語(這些語言都有數十億個平行樣本)在內的高資源語言的須努力按所收集的洞察力可以應用於低資源語言的翻譯,如約魯巴語(Yoruba)、信德語(Sindhi)和夏威夷語(Hawaiian)(這些語言只有數萬個樣本)。

展望未來

根據 Google 的數據,自 2010 年以來,Google Translate 每年至少提高了一個 BLEU 點,但自動機器翻譯絕不是一個已經解決的問題。Google 承認,即使是它的增強型模型也會容易出錯,包括將語言的不同方言混淆,產生過於直譯的翻譯,以及在特定的主題類型和非正式或口語方面表現不佳。

這家科技巨頭正試圖通過各種方式解決這個問題,包括通過 Google Translate 社區,這是一個遊戲化的項目,招募志願者通過翻譯單詞和短語或檢查翻譯是否正確,幫助提高地資源語言的表現。就在今年 2 月份,該項目結合新興的機器學習技術,增加了總共 7500 萬人使用的五種語言的翻譯:盧旺達語(Kinyarwanda)、奧里亞語(Oriya)、韃靼語(Tatar)、土庫曼語(Turkmen)和維吾爾語(Uyghur)。

Google 並不是唯一一家追求真正通用翻譯器的公司。2018 年 8 月,Facebook 發佈了一種人工智能模型,該模型結合了逐字翻譯、語言模型和反向翻譯,從而在語言配對方面表現優於系統。最近,麻省理工學院計算機科學和人工智能實驗室的研究人員提出了一種無監督模型,即一種從未被明確標記或分類的測試數據中學習的模型,這種模型可以在兩種語言的文本進行翻譯,而無需兩種語言之間的直接翻譯數據。

在一份聲明中,Google 用外交辭令表示,它對學術界和工業街的機器翻譯研究表示“感謝”,其中一些研究爲自己的工作提供了參考。“我們通過綜合和擴展各種最近的進展來實現 Google Translate 最近的改進。”該公司稱,“通過這次更新,我們很自豪地提供了相對連貫的自動翻譯,即使是 108 種支持語言中資源最低的語言也是如此。”

作者介紹:

Kyle Wiggers,技術記者,現居美國紐約市,爲 VentureBeat 撰寫有關人工智能的文章。

原文鏈接:

https://venturebeat.com/2020/06/03/how-googleis-using-emerging-ai-techniques-to-improve-language-translation-quality/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章