編者按:Google Translate是全球最流行的翻譯服務之一,目前支持108種語言的互譯,每天翻譯的單詞量達到1500億。過去一年間,通過利用針對總體質量,延遲以及整體推理速度的一系列技術組合,其BLEU翻譯質量平均又提高了5分多。Venturebeat的KYLE WIGGERS報導了相關的技術進展,原文標題是:How Google is using emerging AI techniques to improve language translation quality
劃重點
Google Translate支持108種語言互譯,每日翻譯的單詞量達到1500億
經過運用一系列技術之後,2019年5月至2020年5月期間,Translate的翻譯表現平均提高了5分或更多
Transformer編碼器+RNN解碼器+爬蟲升級為翻譯質量提升做出了貢獻
課程學習對噪聲數據進行了更好的處理
Google Translate Community將是Google Translate重要的助手
Google近日表示,自己在提高沒有大量書面文字的語言的翻譯質量方面已經取得了進展。在一篇即將發表的博客文章裡面,該公司詳細介紹了自己新的創新技術。這些創新技術增強了目前Google Translate所支持的108種語言(尤其是缺乏數據的語言,如約魯巴語和馬拉雅拉姆語)的用戶體驗。據稱,Google的這項服務平均每天翻譯的單詞量達到1500億。
自Google Translate首次公開亮相以來的這13年間,神經機器翻譯,基於重寫的範式以及設備處理等技術已經讓該平臺翻譯的準確性出現了可量化的飛躍。但是直到最近,哪怕是Translate最新的算法也落後於人類的表現。Google之外的努力說明了該問題的量級——旨在讓非洲大陸上數千種語言能夠自動翻譯的Masakhane 項目,目前仍未擺脫數據收集和轉錄的階段。自2017年6月發布以來,Mozilla為構建轉錄語音的開源數據集所做的努力Common Voice,至今也僅審核了40種語音。
Google表示,其翻譯突破並不是由單一技術推動的,相反,那是針對低資源語言,高資源語言,總體質量,延遲以及整體推理速度的一系列技術的組合。2019年5月至2020年5月期間,經過人工評估和BLEU(一種基於系統翻譯與人工參考翻譯之間相似性的指標)進行衡量之後,發現Translate的表現為在所有語言當中平均提高了5分或更多,在50種最低資源水平的語言的翻譯平均提高了7分或更多。此外,Google表示,翻譯在面對機器翻譯幻覺時已經變得更加健壯。(註:機器翻譯幻覺是一種特殊的現象,當AI模型被賦予怪異輸入時會產生這種現象,比方說「Shenzhen Shenzhen Shaw International Airport (SSH)」的泰盧固語文字為「ష ష ష ష ష ష ష ష ష ష ష ష ష ష ష」,意思是「Sh sh sh sh sh sh sh sh sh sh sh sh sh sh sh sh sh」)。
混合模型與數據爬蟲
這些技術裡面首當其衝的是一種翻譯模型架構,這是一種混合型的架構,包含了一個Transformer編碼器以及一個遞歸神經網絡(RNN)解碼器,用針對時序建模的TensorFlow框架Lingvo實現。
在機器翻譯裡面,編碼器的工作通常是將單詞和短語編碼為內部表示,然後解碼器將其用來生成所需語言的文本。2017年,Google相關研究人員首次提出,在這方面基於Transformer的模型要比RNN更為有效,但Google表示,其工作表明,所獲得的大部分質量提升僅來自於Transformer的一個組件:編碼器。原因可能是因為雖然RNN和Transformer都被設計為處理有序數據序列,但是Transformers並不需要按順序來處理序列。換句話說,如果所討論的數據是自然語言的話,則Transformer無需在處理結尾之前先得處理句子的開頭。
儘管如此,在推理時,RNN解碼器仍比Transformer當中的解碼器「快得多」。在意識到這一點之後,Google Translate團隊在開始優化RNN解碼器,然後再與Transformer的編碼器進行結合,從而創建出比四年前基於RNN的神經機器翻譯模型延遲更低,質量更高,更穩定的混合模型,並替換了後者。
自2006年成立以來,Google翻譯模型的BLEU得分情況
除了新穎的混合模型體系結構之外,Google還升級了自己已經使用了幾十年,用來從數百萬對文章、書本、文檔以及web搜索結果的示例翻譯中編譯訓練數據集的爬蟲。這位新的數據爬蟲(針對14種大型語言對採用嵌入式而不是字典式,意味著它利用的是實數向量來表示單詞短語)更加注重精確度(相關數據在檢索到的數據中所佔的比例)而不是回憶(相關數據總量在實際檢索到的數據中的佔比)。Google表示,在生產環境下,這讓爬蟲析取的句子數平均增加了29%。
噪聲數據與遷移學習
另一項翻譯性能提升來自於一種建模方法,這種方法對訓練數據中的噪聲進行了更好的處理。因為觀察到噪聲數據(含有大量無法正確理解或解釋的信息的數據)會損害數據豐富的語言的翻譯,因此Google的翻譯團隊部署了一個系統,利用經過噪聲數據訓練的模型來對例子進行打分,然後對「清洗」後的數據進行調整。基本上,這些模型一開始利用所有的數據進行訓練,然後逐步用規模小一點乾淨一點的子集進行訓練,這種方法在AI研究社區裡面被稱為課程學習(curriculum learning)。
針對資源匱乏的語言,Google在Translate裡面實現了反向翻譯方案,給翻譯添加了並行訓練數據,讓被翻譯語言的每個句子都跟翻譯進行配對。(機器翻譯傳統上依賴於源語言目標語言配對句子語料集源的統計數據。)在這種方案中,訓練數據會自動跟合成的並行數據進行匹配,從而保證目標文本是自然語言,但源語言則通過神經翻譯模型生成。其結果是Translate利用了更豐富的單一語言文本數據來訓練模型,Google表示這對於提高流利性特別有用。
帶Translate功能的Google Maps
Translate現在還利用了M4建模,用一個大型模型M4實現多種語言與英語之間的互譯。(去年的一篇論文裡面首次提出了M4,證明在利用100多種語言的250億對句子對進行訓練之後,M4可提高30多種低資源語言的翻譯質量。)M4建模令Translate裡面的遷移學習成為可能,通過對包括法語,德語和西班牙語(有數十億個並行示例)等高資源語言的訓練收集而來的洞察,可以應用到諸如約魯巴語,信德語和夏威夷語(僅有數萬個示例)等低資源語言的翻譯當中。
展望未來
根據Google的說法,自2010年以來,Google Translate每年至少都提高了1個BLEU點,但是自動機器翻譯絕對還算不上已解決的問題。Google承認,即使是其增強的模型也容易出錯,包括會將一種語言的不同方言混淆,產生過多的直譯,在特定題材和非正式或口頭語言的翻譯上表現不佳等。
該科技巨頭正常是多管齊下解決這一問題,包括通過它的Google Translate Community,這個遊戲化的計劃招募了一批志願者,讓他們翻譯單詞短語或者檢查翻譯是否正確來幫助改進低資源語言翻譯的性能。今年1月,該計劃在各種新興機器學習技術的合作下,又為Translate增加了5種為7500萬人使用的語言的翻譯:其中包括盧安達語(Kinyarwanda),奧裡亞語(Odia),韃靼語(Tatar),土庫曼語(Turkmen)以及維吾爾語。
追求真正通用翻譯這一目標的並不只有Google。2018年8月,Facebook就披露了一種結合了逐詞翻譯,語言模型和反向翻譯的AI模型,這種模型在表現要優於語言配對系統。最近,麻省理工學院計算機科學與人工智慧實驗室的研究人員提出了一種無監督模型(即可以從未經明確標記或分類的測試數據當中學習的模型),這種模型可以在沒有直接翻譯數據的情況下對兩種語言的文本進行互譯。
在一份聲明中,Google婉轉地對 「學術界和業界」的機器翻譯研究表示了「感謝」,稱其中一些對自己的工作起到了促進作用。該公司表示:「我們通過綜合和擴展了各種最新進展來實現[Google Translate 最近的改進]。通過此次更新,我們為能提供相對一致的自動翻譯而感到自豪,這種一致性甚至體現在我們所支持的108種語言當中資源最少的的語言翻譯上。」
譯者:boxi。