技術(shù)宅
很多經(jīng)常查找外文資料的朋友都會(huì)用到谷歌、百度的在線翻譯功能,這其實(shí)就是機(jī)器翻譯的一種典型應(yīng)用(圖1)。
不過(guò)由于機(jī)器翻譯只是簡(jiǎn)單地對(duì)單詞進(jìn)行機(jī)械翻譯,因此很多時(shí)候翻譯的結(jié)果并不讓人滿意。因?yàn)樵趯?shí)際生活中,很多語(yǔ)句翻譯還要結(jié)合上下文、語(yǔ)氣、語(yǔ)境等綜合因素進(jìn)行,這樣才能獲得更為準(zhǔn)確的翻譯結(jié)果。
為了讓機(jī)器翻譯的結(jié)果更為準(zhǔn)確,相應(yīng)的技術(shù)不斷更新。早期主要應(yīng)用的是基于規(guī)則的技術(shù),就是為機(jī)器配置一些簡(jiǎn)單的規(guī)則,比如名詞以特定的后綴-heit、-keit、-ung等結(jié)尾,然后機(jī)器根據(jù)這些規(guī)則進(jìn)行機(jī)械翻譯。之后隨著語(yǔ)音識(shí)別、DNN(深度神經(jīng)網(wǎng)絡(luò))技術(shù)的快速發(fā)展,基于神經(jīng)網(wǎng)絡(luò)的機(jī)器翻譯技術(shù)逐漸成為主流。微信翻譯目前使用的是“神經(jīng)機(jī)器翻譯”(NeuralMachine Translation,以下簡(jiǎn)稱NMT)技術(shù),它就是基于神經(jīng)網(wǎng)絡(luò)的翻譯技術(shù)(圖2)。
NMT是怎樣翻譯的呢?為什么這次微信翻譯會(huì)出現(xiàn)如此大的差錯(cuò)?
NMT和傳統(tǒng)的基于規(guī)則的翻譯技術(shù)不同,它不是一次翻譯一個(gè)單詞的破碎句子,而是使用大型人工神經(jīng)網(wǎng)絡(luò)計(jì)算單詞序列的概率,將完整的句子放辦P個(gè)集成模型中,從而實(shí)現(xiàn)更高質(zhì)量的翻譯。
NMT在一定程度上模仿人腦的思維方式,當(dāng)我們輸入一句需要翻譯的語(yǔ)句時(shí),NMT首先會(huì)根據(jù)一個(gè)單詞在整個(gè)句子(可以是長(zhǎng)句)當(dāng)中的語(yǔ)境,為這個(gè)單詞建立一個(gè)神經(jīng)網(wǎng)絡(luò)的模型,形成一個(gè)語(yǔ)義表示。舉個(gè)例子,我們輸入的是“dog”這個(gè)單詞,那么NMT會(huì)先把它理解為“狗”。但是如果我們輸入的是一句話,如“一條狗生下了小狗”,那么NMT就會(huì)根據(jù)單詞在句子甚至段落的語(yǔ)境中,將模型重新轉(zhuǎn)換成另一種語(yǔ)言。比如在法語(yǔ)的語(yǔ)境中,狗默認(rèn)是“l(fā)echien”,但是在上述語(yǔ)境中,顯然前一個(gè)“狗”指的是狗媽媽,因此這里的“狗”就會(huì)被翻譯成代表“女性”的“l(fā)a chienne”(圖3)。
既然NMT是基于神經(jīng)網(wǎng)絡(luò)的技術(shù),那么就離不開模型和算法。為了讓NMT學(xué)會(huì)翻譯各種語(yǔ)句,科學(xué)家們會(huì)先制定一個(gè)模型,然后輸入海量數(shù)據(jù)給NMT訓(xùn)練,通過(guò)大量的數(shù)據(jù)訓(xùn)練,并且結(jié)合NMT自主學(xué)習(xí),最終形成一套算法。這套算法部署到服務(wù)器后,當(dāng)用戶輸入特定的語(yǔ)句時(shí),服務(wù)器在后臺(tái)就會(huì)根據(jù)算法進(jìn)行翻譯,結(jié)合上下文語(yǔ)境,將最佳的翻譯結(jié)果輸出到屏幕顯示(圖4)。
這次微信翻譯出現(xiàn)異常,原因可能出現(xiàn)在訓(xùn)練數(shù)據(jù)上,因?yàn)檫@次用戶輸入的只是一句類似“you playbasketball like zhangsan?”的句子。在這個(gè)翻譯場(chǎng)景中,類似人名“zhangsan”是一個(gè)不常見的單詞,它既沒有出現(xiàn)在任何一本英語(yǔ)辭典當(dāng)中,看上去跟句子的上下文也沒什么關(guān)系??梢哉f(shuō)NMT在之前的訓(xùn)練中可能并沒有接觸過(guò)這樣的數(shù)據(jù),因此微信翻譯服務(wù)器在接到類似的語(yǔ)句輸入時(shí),NMT就只能根據(jù)算法將最優(yōu)的翻譯結(jié)果推送給用戶,從而出現(xiàn)文章前面所說(shuō)的翻譯Bug(圖5)。
不過(guò)根據(jù)NMT的翻譯機(jī)制,上述Bug的出現(xiàn)還可能是其他原因?qū)е碌摹1热鏸J I}練集噪音,微信翻譯團(tuán)隊(duì)人員可能使用生成對(duì)抗攻擊的方式訓(xùn)練,在訓(xùn)練中手動(dòng)加入噪音,這樣在翻譯中會(huì)主動(dòng)對(duì)類似的翻譯結(jié)果進(jìn)行糾錯(cuò)的操作,最終卻干擾了翻譯結(jié)果。也有可能是學(xué)習(xí)錯(cuò)誤導(dǎo)致的,比如領(lǐng)域不匹配,這次語(yǔ)句出現(xiàn)匕asketball,而微信翻譯的訓(xùn)練數(shù)據(jù)集可能沒有籃球領(lǐng)域,或者跟籃球有關(guān)的非常少,導(dǎo)致NMT無(wú)法精準(zhǔn)識(shí)別,從而翻譯效果欠佳。
因此從嚴(yán)格意義上說(shuō),這次Bug并不能讓微信翻譯團(tuán)隊(duì)背鍋,這是由于NMT翻譯機(jī)制導(dǎo)致的,其他使用NMT技術(shù)翻譯的產(chǎn)品也會(huì)出現(xiàn)類似的錯(cuò)誤。
這次微信翻譯的Bug在網(wǎng)上弄得沸沸揚(yáng)揚(yáng),從上面的描述我們知道,原因并非出在微信身上。這次Bug并不影響NMT技術(shù)給我們帶來(lái)的便利,隨著NMT得到更廣泛的應(yīng)用,它必定會(huì)給我們的生活帶來(lái)更多便利。
舉例來(lái)說(shuō),通過(guò)使用NMT技術(shù),我們可以和全球任何人進(jìn)行互動(dòng),這在全球一體化的今天具有很大的現(xiàn)實(shí)意義,比如很多網(wǎng)店商家,借助NMT就可以和全球客戶進(jìn)行交流。NMT在多語(yǔ)言同聲翻譯中的應(yīng)用,則給大家和不同國(guó)家的同事之間交流帶來(lái)方便?;贜MT和語(yǔ)音識(shí)別開發(fā),在2018年博鰲論壇擔(dān)任同聲傳譯的騰訊同傳,就讓參加會(huì)議的各國(guó)朋友在第一時(shí)間“聽”懂和“看”懂了主持人發(fā)言(圖6)。