微軟研究人員在利用深層神經網絡人工智能(AI)訓練技術翻譯文本方面發明了第一臺機器翻譯系統,可以將中文新聞的句子翻譯成英文,準確率與人類不相上下。系統在一套常用的新聞報道測試集上實現了達到了人類水平,測試集名為newstest2017。
在前幾期的文章里,我們介紹了神經網絡和深度學習的相關內容,微軟的這套翻譯系統就是使用深層神經網絡,幫助生成更真實、更準確的翻譯。它還采用了多種不同的人工智能訓練方法,包括雙重學習、商議網絡和聯合訓練,試圖模仿人類的學習方式。
機器翻譯
機器翻譯系統是支持翻譯大量文本的應用程序或在線服務,將文本從“源”語言譯成另一種"目標"語言的過程。
自從2010年代早期,新的人工智能技術- 深度神經網絡(又稱深度學習),已經達到較高的精準度,微軟翻譯團隊將語音識別結合其核心文本翻譯技術,推出新的語音翻譯技術。
雖然機器翻譯技術和接口技術的概念相對簡單,但它背后的科技集成卻是極其復雜的,集成了多項尖端技術,特別是深度學習(人工智能)、 大數據、 語言學、 云計算和 web API。
從歷史上看,曾經主流的機器學習技術在行業中應用是統計機器翻譯 (SMT)。SMT 使用先進的統計分析,從一句話中上下文的幾個詞中來估計最佳可能的翻譯。SMT自20 世紀中期以來的為所有主要翻譯服務提供商所使用,其中包括微軟。
基于深度神經網絡(NN) 的翻譯技術的出現,帶動了機器翻譯技術的突變,顯著提高了翻譯質量。這種新的翻譯技術在2016年的下半年開始大規模部署使用。
這兩種技術共同之處有兩個方面︰
兩者都需要大量的人工翻譯的數據(高達數百萬的人工翻譯過的句子)用于培訓翻譯系統。
既不作為雙語詞典,也不是基于翻譯列表,是根據詞在句子中使用的上下文來翻譯。
Microsoft翻譯
微軟翻譯文本和語音 API,是微軟認知服務集合的一部分,是微軟云的機器翻譯服務。
1、微軟翻譯文本 API
微軟翻譯文本API 已自2006年以來用于微軟多個個業務部門的產品和服務中,并且自2011年向第三方客戶提供。微軟翻譯文本API已經在微軟公司內部廣泛應用,它被用于產品本地化、客戶支持和在線交流(例如, Windows Blog)。還可以從熟悉的微軟產品( Bing、柯塔娜、 Internet Explorer、 Lync、 Cortana、 Office、SharePoint、 Skype 和 Yammer)訪問這一服務,且無需額外付費。
Microsoft Translator 可在任何硬件平臺上以Web方式或客戶端中使用,與任何操作系統結合來進行語言翻譯和其他語言相關操作,如文字語言檢測,文本到語音轉換,以及詞典。
利用行業標準的REST技術,開發人員向服務發送源文本以及標識目標語言的參數,該服務經翻譯后的文本發送回客戶端或 web 應用程序。
微軟翻譯服務部署在微軟數據中心,從安全性、 可伸縮性、 可靠性和不間斷的可用性等方面享受和其他微軟云服務同樣的好處。
2、微軟翻譯語音API
微軟語音翻譯技術首先在2014年底通過Skype Translator集成推出的,并且在2016年初是作為開放的API向客戶提供。它集成在Skype,Skype會議廣播和微軟翻譯app中(Android、 iOS 和 Windows版)。
文本翻譯的工作原理
有兩種主流的機器翻譯技術︰ 傳統的統計機器翻譯(SMT) 和新一代之神經網絡 (NN) 翻譯。
1、統計機器翻譯
微軟翻譯使用的統計機器翻譯(SMT) 是建立在超過十年的微軟自然語言處理研究成果上?,F代翻譯系統不再手動編寫規則進行語言轉換,而是將翻譯當作基于所有語言現有的人工譯文及相互轉換的學習問題,并利用了應用統計學和機器學習方面的最新成果。
所謂的"平行語料庫"在很大程度上充當現代的羅塞塔石,基于語境為許多語言以及專門領域提供單詞、短語和習語翻譯。統計建模技術和高效算法幫助計算機解決解讀(檢測訓練數據中源語言和目標語言之間的對應關系)以及解碼 (為新輸入句子找到最好的翻譯)等問題。Microsoft Translator 將統計方法的力量與語言信息相結合,產生歸納更理想譯文和更易理解的輸出。
由于這種方法并不依賴于詞典或語法規則,它提供基于上下文的最佳翻譯的詞匯和短語。
2、神經網絡翻譯
翻譯質量的不斷改善是十分重要的。然而,SMT 技術自2010年代中期性能改進有所停滯。通過大規模部署的微軟AI 超級計算機,特別是通過微軟認知工具包,微軟翻譯現在提供了基于神經網絡 (LSTM) 的翻譯,使翻譯質量改進步入了新的十年。
這些神經網絡模型已經在所有微軟語音翻譯中部署,可以通過語音翻譯API調用,或者通過文本API 使用“generalnn“的Category ID參數調用。
神經網絡翻譯從根本上的執行方式相對于傳統 SMT翻譯不同。
下面的動畫描述了神經網絡翻譯的各個步驟。使用這種方法,翻譯將考慮到上下文完整的句子,而SMT技術只能考慮上下文的幾個詞語。所以,神經網絡翻譯將會產生更流利和接近人工翻譯的結果。
基于神經網絡的訓練,每個單詞被編碼沿500 維向量 (a) 表示其獨特的特征,針對特定的語言對(例如英語和中文)。將語言對用于訓練,神經網絡將自定義這些維度應該是什么。他們可以對簡單的概念,如性別 (女性,男性,中性),禮貌水平(俚語,休閑,書面的正式的等等),類型的詞(動詞、 名詞等),以及任何其他非明顯的特征作為派生的訓練數據進行編碼。
神經網絡翻譯運行的步驟如下︰
每個單詞或更具體地說 500-維向量表示它,穿過第一層的"神經元",將編碼它在一個1000-維向量 (b) 代表這個詞在上下文句子中其他詞的范圍。
一旦所有單詞均已進行這些 1000- 維向量都編碼,過程被重復幾次,每一層都進行更好地微調這1000- 維度表現這個詞完整的句子(而SMT翻譯只考慮 3 到 5 個單詞的窗口)的范圍內。
翻譯注意層(即軟件算法)將使用此最終輸出矩陣和以前翻譯過的單詞來確定來自源句子的哪個詞,應該接下來到最終輸出矩陣。它還將使用這些計算在目標語言中刪除不必要的詞語。
解碼器(翻譯)層,在它最合適的目標語言等效轉換選定的詞(或更具體地說 1000-維向量代表這個詞的完整的句子范圍內)。這個輸出層(C)然后反饋到注意層計算源句子應該翻譯的下一個單詞。
在動畫的示例中,"the"的上下文感知的 1000- 維度模型將編碼的名詞 (house)是法語的女性詞 (la maison)。這將"the"適當的翻譯為"la" 而不是"le" (單數,男性)或"les" (復數),當它達到解碼器(翻譯)層。
注意算法還將計算基于以前翻譯過的(在這個案例"the"),下一步這個詞被翻譯應該是主題("house") 而不是一個形容詞 ("blue")??梢宰龅竭@一點因為系統學過英語和法語轉換時這些句子中詞語的順序。假如形容詞是"大"而不是一種顏色的形容詞,那它應該不反轉 (“the big house” => “la grande maison”)。
基于這種辦法最終的翻譯結果在大多數情況下,比基于SMT 的翻譯更流暢和更接近于人類的翻譯。
語音翻譯的工作原理
Microsoft Translator 還能夠翻譯語音。此功能最初僅通過Skype Translator,以及iOS 和 Android的Microsoft Translator 應用程序提供?,F在通過最新版的語音翻譯API 提供向開發人員提供。
雖然乍看上去是個簡單的過程,但這比僅僅將“傳統”人機語音識別引擎插入現有文本翻譯引擎的過程復雜得多。
若要正確從一種語言的"源"語音翻譯成不同的"目標"語言,系統經過四步過程。
語音識別,將音頻轉換為文本。
TrueText算法: 微軟特有的技術將口語優化成更標準的文本,使之更適合機器翻譯。
通過上述的文本翻譯引擎進行翻譯,利用專為現實生活口語會話開發的翻譯模型。
文本到語音轉換,必要時輸出譯文的音頻。
1、自動語音識別 (ASR)
使用經過數千小時訓練的DNN 系統執行自動語音識別(ASR)。此模型基于人和人交互數據,而非人機指令訓練,可產生適合正常對話優化的語音識別效果。為達此目的,DNN需要相比傳統人機交互ASR更多大量的生活口語數據訓練系統。
2、TrueText
我們日常的說話并不完美,常常不如自己認為的那樣清晰和流利。憑借 TrueText技術,可以刪除口語中不流利的部分(贅詞,如"嗯"、"啊"、"和"、"比如")、口吃和重復,使文本經轉換更貼近地反映用戶意圖。還通過添加斷句、正確標點符號和大小寫,使文本更易讀和更易譯。為取得這些成果,我們將數十年的研究成果應用于開發 Translator的語言技術,從而創建出 TrueText。下圖通過真實的示例演示 TrueText的執行過程。
3、翻譯
然后,將相關文本翻譯成任何微軟翻譯支持的60 多種語言之一。
面向開發人員提供的語音翻譯API或在語音翻譯應用程序或服務中使用最新的神經網絡翻譯,可以使用所有語音輸入支持的語言(請參閱這里的完整列表)。當前現有的翻譯模型大多是書面語文本訓練的,通過增加更多的口語文本語料庫,打造更好的為口語會話類型的翻譯建立了的模型。這些模型也可通過'Speech'標準類文本翻譯 API 提供。
對于任何其他非語音類支持語言,仍然使用傳統的SMT 翻譯,除非另有說明如這里。
4、文本到語音
目前我們支持18文本到語音轉換語言,如果需要音頻輸出,文本將以語音合成輸出。在語音轉文本的翻譯情景中將省略這一階段。
newstest2017系統的新技術
微軟官方博客中提到,新的翻譯系統中用到了四大技術:對偶學習、聯合訓練、推敲網絡和一致性正則化,對應的論文也已經公開。
1、對偶學習臺(Dual Learning)
對偶學習利用的是人工智能任務的天然對稱性。其發現是由于現實中有意義、有實用價值的人工智能任務往往會成對出現,兩個任務可以互相反饋,從而訓練出更好的深度學習模型。例如,在翻譯領域,我們關心從英文翻譯到中文,也同樣關心從中文翻譯回英文;在語音領域,我們既關心語音識別的問題,也關心語音合成的問題;在圖像領域,圖像識別與圖像生成也是成對出現。此外,在對話引擎、搜索引擎等場景中都有對偶任務。
一方面,由于存在特殊的對偶結構,兩個任務可以互相提供反饋信息,而這些反饋信息可以用來訓練深度學習模型。也就是說,即便沒有人為標注的數據,有了對偶結構也可以做深度學習。另一方面,兩個對偶任務可以互相充當對方的環境,這樣就不必與真實的環境做交互,兩個對偶任務之間的交互就可以產生有效的反饋信號。因此,充分地利用對偶結構,就有望解決深度學習和增強學習的瓶頸,如“訓練數據從哪里來、與環境的交互怎么持續進行”等問題。
2、推敲網絡(Deliberation Network)
“推敲”二字可以認為是來源于人類閱讀、寫文章以及做其他任務時候的一種行為方式,即任務完成之后,并不當即終止,而是會反復推敲。微軟亞洲研究院機器學習組將這個過程沿用到了機器學習中。推敲網絡具有兩段解碼器,其中第一階段解碼器用于解碼生成原始序列,第二階段解碼器通過推敲的過程打磨和潤色原始語句。后者了解全局信息,在機器翻譯中看,它可以基于第一階段生成的語句,產生更好的翻譯結果。
3、腦聯合訓練(Joint Training)
這個方法可以認為是從源語言到目標語言翻譯(Source to Target)的學習與從目標語言到源語言翻譯(Target to Source)的學習的結合。中英翻譯和英中翻譯都使用初始并行數據來訓練,在每次訓練的迭代過程中,中英翻譯系統將中文句子翻譯成英文句子,從而獲得新的句對,而該句對又可以反過來補充到英中翻譯系統的數據集中。同理,這個過程也可以反向進行。這樣雙向融合不僅使得兩個系統的訓練數據集大大增加,而且準確率也大幅提高。
從源語言到目標語言翻譯(Source to Target)P(y|x) 與從目標語言到源語言翻譯(Target to Source)P(x|y)
4、一致性規范(Agreement Regularization)
翻譯結果可以從左到右按順序產生,也可以從右到左進行生成。該規范對從左到右和從右到左的翻譯結果進行約束。如果這兩個過程生成的翻譯結果一樣,一般而言比結果不一樣的翻譯更加可信。這個約束,應用于神經機器翻譯訓練過程中,以鼓勵系統基于這兩個相反的過程生成一致的翻譯結果。
復雜性讓機器翻譯成為一個極有挑戰性的問題,但也是一個極有意義的問題。微軟亞洲研究院副院長、機器學習組負責人劉鐵巖認為,我們不知道哪一天機器翻譯系統才能在翻譯任何語言、任何類型的文本時,都能在“信、達、雅”等多個維度上達到專業翻譯人員的水準。不過,他對技術的進展表示樂觀,因為每年微軟的研究團隊以及整個學術界都會發明大量的新技術、新模型和新算法,“我們可以預測的是,新技術的應用一定會讓機器翻譯的結果日臻完善?!?/p>
-
微軟
+關注
關注
4文章
6590瀏覽量
104024 -
神經網絡
+關注
關注
42文章
4771瀏覽量
100712 -
人工智能
+關注
關注
1791文章
47183瀏覽量
238246 -
機器學習
+關注
關注
66文章
8406瀏覽量
132560
原文標題:仿真人類的微軟AI翻譯系統
文章出處:【微信號:WW_CGQJS,微信公眾號:傳感器技術】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論