Google 一直致力於透過機器學習改善自家翻譯系統的準確度,利用人工智慧的力量提升機器翻譯品質,並於今年八月發表新機器學習模型 Universal Transformer。隨著機器學習模型不斷演進,AI 處理翻譯時的邏輯和策略也與真人譯者越來越相似。
Google 在去年發佈了新型機器學習模型 Transformer,使得翻譯準確度和效率較循環神經網路模型(Recurrent Neural Networks, RNN)提升不少。而今年Google 則是改良了Universal模型,發表了新的 Universal Transformer 模型,讓翻譯事業更上一層樓。要瞭解這之間的運作方式,以及 Google 翻譯系統越來越強大的原因,就請各位讀者跟著小編一起讀下去囉!
首先,過去的機器翻譯系統採用循環神經網路模型處理翻譯訊息,而該模型處理訊息的機制是依照順序處理每個單字,並且將先前單字處理好的結果帶入下一個單字的分析預測中。
舉個例子來說,小明重訓時習慣分成胸 – 三頭、背 – 二頭、腿三組循環,但是重訓的時間極不固定,如果公司上班忙碌,需要加班,可能間隔好幾天才重訓;而比較不忙碌的時候,則會天天跑去重訓。
RNN 透過逐筆運算,分析發現小明的運動規律和前一次訓練的部位有關,如果前一次練背 – 二頭、下一次就會練腿,再下一次就會練胸 – 三頭,進而預測小明每天訓練的部位。如果小明今天沒去重訓呢?循環神經網路會使用小明前一次重訓的紀錄(可能是昨天或好幾天前),帶入明天的預測分析中。
到這裡我們可以發現 RNN 會依序分析資料後,形成一個資料網路,分析每筆資料間的關聯,並作出預測,但這同時也代表在長句處理時 RNN 需要的步驟較為繁複,訓練起來較費時。
相較之下,Transformer 則是利用自我注意機制(self-attention mechanism),判斷句子中的哪些單詞需要較多的運算資源,並進行處理,就像人類譯者並不是拿到文章就一路埋頭苦翻到底,而是邊分析文章中的字句,邊決定接下來如何翻譯。
文章中所舉的例子為:I arrived at the bank after crossing the river.
傳統的RNN運算模型需要逐字分析完「bank」、「river」等字後才能理出其中的關連,判斷bank指的是河堤,而非銀行。若句子拉長,兩個彼此有關聯的單詞距離較遠時,這樣的運算方式就會較耗時。
Transformer模型則是透過經驗,建立句子中所有單詞之間的關聯(與單詞相對距離無關),並判斷哪些單詞需要較多的關注,以同句子為例,Transformer模型能判斷「I」、「bank」、「river」中,「bank」有多種解釋可能,「I」和「river」則相對較無歧異。接著,為了處理歧異性較高的「bank」,Transformer 模型會去找出和「bank」關聯性較高的單字,從而找出「river」和其高度關聯,判斷「bank」的意思為河堤。
不過,在一開始對於句子裡的所有單字進行判斷時,Transformer模型需要無條件將同樣的運算量用在每個單詞,因此 Google 新發表了 Universal Transformer 模型,讓系統可以只在歧異性較高的單詞上花費較多的運算資源,使得分析過程變得更「動態」,資源分配也更有效率。
Transformer推出時,Google 研究指出其翻譯品質較先前的機器學習模型提高2.0 個 BLEU(Bilingual Evaluation Understudy)值,而在相同的訓練方式和訓練資料下,Universal Transformer 模型比起 Transformer 又提高了 0.9 個BLEU 值,整體翻譯品質和去年相比,相對提升 50%。
Universal Transformer模型提供大規模語言處理(如機器翻譯)一個更快、更準確的解決方案,翻譯結果更接近真人翻譯,而 Google 團隊也會持續努力提升Universal Transformer 模型效能。
原文連結
註:本文為 2018 年 9 月 14 日師大翻譯所臉書粉絲專頁貼文