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