神经机器翻译
来自维基百科,自由的百科全书
神经机器翻译(英語:Neural machine translation,縮寫:NMT)是一种直接使用人工神经网络以端到端方式进行翻译建模的机器翻译方法。[1]
2014年出现了第一篇关于在机器翻译中使用神经网络的科学论文,随后几年神经机器翻译又取得了一些进展[2]。
性質
神經機器翻譯所需的記憶體比傳統統計機器翻譯(SMT)模型少了許多,此外,神經翻譯模型的各個部分都是聯合訓練的(端到端),以充分利用翻譯效能。[3][4][5]
歷史
深度學習應用首次出現在1990年代的語音辨識領域。2014年,第一篇關於以神經網路進行機器翻譯的科學論文問世。同年,Bahdanau等人[R 1]和Sutskever等人[R 2]提出了端到端的神經網路翻譯模型,正式使用了「神經機器翻譯」一詞。2015年,百度推出了第一個大規模的NMT系統,隔年Google亦推出其NMT系統,其他公司隨後也陸續跟進[6]。該領域在接下來幾年取得許多進展,如大詞表NMT、影像字幕應用、子詞-NMT、多語種NMT、多源NMT、字元解碼NMT、零資源NMT、全字元-NMT和零樣本NMT(Zero-Shot NMT)等。2015年,NMT系統第一次出現在公開機器翻譯比賽(OpenMT'15),WMT'15也開始有NMT系統參賽,次年,該比賽已經有90%的獲獎者屬於NMT系統[2]。
歐洲專利局從2017年以來持續使用神經機器翻譯技術,讓世界各地的專利系統的資訊得以即時理解[7] 。該系統是與Google合作開發的,有31種語言配對,該系統截至2018年已翻譯超過900萬個文件。[7]
原理
神經機器翻譯(NMT)與個別改造次成份(subcomponents)的統計式片語翻譯模型不同。[8]神經機器翻譯的原理並未大幅突破傳統的統計機器翻譯,它們之間的主要區別在於,神經機器翻譯對詞彙和內部狀態使用了向量表徵(「嵌入」、「連續空間表徵」)。NMT的模型結構比基於片語的模型更為簡單,不是用分開的語言模型、翻譯模型和重新排序模型,而是僅使用一次只預測一個詞的單一序列(Sequence)模型,這個序列預測是根據整段的源語言句子和已產生的目標語言序列來產生。NMT模型使用了深度學習和表徵學習。
詞序列的建模起初通常是以遞迴神經網路(RNN)來完成。一個雙向RNN(稱為編碼器)使用神經網路對第二個 RNN(稱為解碼器)的源句子進行編碼,解碼器則被用來預測目標語言中的詞彙。[9]RNN在將長輸入編碼為單一向量時會碰到困難,這點可以透過注意力機制來彌補[10] 。注意力機制允許解碼器在產生輸出的每個詞彙時特別關注輸入的不同部分。此外還有多種覆蓋模型(Coverage Model)用於解決這種注意力機制所處理的問題,比如忽略過去的對齊資訊所造成的過度翻譯(over-translation)和翻譯不足(under-translation)[11]。
卷積神經網路(CNN)原則上對處理長的連續序列有一定的好處,但仍存在一些劣勢以致於最初未被採用,這些劣勢在2017年時成功以「注意力機制」解決[12]。
「Transformer」[13]是一個基於注意力的模型,目前仍然是幾個語言對的主導架構。[14]Transformer模型的自注意力層( self-attention layer)透過檢查配對序列中所有詞彙之間的依存關係,直接對這些關係進行建模,藉此學習序列中詞彙之間的依存關係。這是一種比RNN採用的門控機制更簡單的方法。Transformer簡單易用,使研究人員即使是在語言資源匱乏(low-resource )的條件下,也能夠用Transformer模型開發高品質的翻譯模型。[15]
備注
參考文獻
Wikiwand - on
Seamless Wikipedia browsing. On steroids.