腾讯AI Lab:深度解读AI辅助翻译的研究及应用
11月13日,深圳 - 騰訊AI Lab今日發(fā)布了一款AI輔助翻譯產品 - “騰訊輔助翻譯”(Transmart),可滿足用戶快速翻譯的需求,用AI輔助人工翻譯提高效率和質量。該產品采用業(yè)內領先的人機交互式機器翻譯技術,融合神經網絡機器翻譯、統(tǒng)計機器翻譯、輸入法、語義理解、數(shù)據(jù)挖掘等多項前沿技術,配合億級雙語平行數(shù)據(jù),為用戶提供實時智能翻譯輔助,幫助用戶更好更快地完成翻譯任務。產品旨在致敬人工翻譯,輔助人工翻譯更快、更好地完成任務,探索人工智能賦能翻譯行業(yè)新思路。
體驗網址:騰訊發(fā)布人工智能輔助翻譯,致敬人工翻譯
同時,來自騰訊AI Lab的高級研究員黃國平,在QCon全球軟件開發(fā)大會上發(fā)表了主題為「人機交互式機器泛起研究與應用」的主題演講。
以下為黃國平在大會的演講全文。
大家好,我是騰訊AI Lab黃國平,網名為@翻譯驢,今天的演講題目是《人機交互式機器翻譯研究與應用》,給大家來分享關于人機交互式機器翻譯的一些探索與思考。
需要特別說明的是,在AI技術行業(yè)落地過程中,我相信人機交互式機器翻譯的經驗也能給其他方向的探索有一些啟發(fā)。
我博士畢業(yè)于中國科學院自動化研究所模式識別國家重點實驗室,大的研究方向為機器翻譯,具體方向為人機交互式機器翻譯。
入職騰訊AI Lab后,繼續(xù)該方向的研究與應用,目前總體負責一款相關的獨立產品,最早將近期上線。
在今天的分享中,我首先會簡單介紹一下與“翻譯”這個關鍵詞相關的現(xiàn)狀介紹,包括機器翻譯、翻譯需求和人工翻譯;然后系統(tǒng)介紹人機交互式機器翻譯相關的技術、研究與應用;最后分享一下我對人工智能落地的一點思考。
機器翻譯的現(xiàn)狀
這些年,在大家的推波助瀾之下,機器翻譯的概念深入人心。一批機器翻譯產品接二連三被發(fā)布出來,形式包括但不限于網頁版、手機APP以及目前甚囂塵上的翻譯機與同聲傳譯。隨機機器翻譯技術的進步,尤其是基于Transformer的翻譯模型全面落地后,自動譯文的質量獲得大幅度的提升,以至于有些公司喊出了“人工智能將讓人工翻譯下崗”的口號。
但我們需要看到的是,目前的機器翻譯產品的自動譯文質量其實也并不高,基本不能用于比較嚴肅的場合,同時同質化現(xiàn)象也非常嚴重。
通過各家機器翻譯網頁版的截圖,我們可以用一句詩來概念目前各家產品:藕花深處田田葉,葉上初生并蒂蓮。用白話講,大家都是多胞胎兄弟,沒什么明顯不同。從技術角度來看,機器翻譯嚴重同質化主要還是因為技術突破是一件非常困難的事。因為技術的突破需要長期的積累,且投入的產出往往是不確定的。
目前國內實質擁有機器翻譯科研力量的單位可以分成兩類,一類是國有研究機構,主要有中國科學院自動化研究所、計算技術研究所,清華大學、東北大學、蘇州大學、哈爾濱工業(yè)大學、南京大學等,另一類是商業(yè)公司設立的研究機構或者研發(fā)團隊,如微軟亞洲研究院、百度、有道、騰訊、搜狗、阿里巴巴、網易等。
原始學術創(chuàng)新大量來源于前一類研究機構,后一類主要承擔起了落地和商業(yè)化變現(xiàn)的重任。需要提及的是,這個分類不是絕對的,比如后一類的微軟亞研輸出的學術創(chuàng)新成果是有目共睹的。
另外需要注意的是,有的公司明顯缺乏核心科研力量,他們更多謀求通過宣傳公關的方式來引起社會的關注,這是機器翻譯行業(yè)客觀存在的現(xiàn)實。在此向堅持數(shù)十年機器翻譯研究的團隊致以誠摯的敬意!
歷史上出現(xiàn)過很多機器翻譯方法,比較有名的如基于規(guī)則的翻譯方法、統(tǒng)計機器翻譯方法,目前最流行的是基于神經網絡的機器翻譯方法,簡稱為神經機器翻譯NMT。
需要說明的是,以前的翻譯方法并不是不用了,比如我們會用統(tǒng)計機器翻譯的思路和方法改進NMT的翻譯性能。在后續(xù)演講過程中,為了方便起見,除非特別說明,“機器翻譯”均指“神經機器翻譯NMT”。神經機器翻譯是指直接采用神經網絡以端到端方式進行翻譯建模的機器翻譯方法。
區(qū)別于以前的翻譯方法,神經機器翻譯采用方法比較簡單而且直觀:首先使用一個稱為編碼器(Encoder)的神經網絡將源語言句子編碼為一個稠密向量,然后使用一個稱為解碼器(Decoder)的神經網絡從該向量中解碼出目標語言句子。這樣的神經網絡模型一般稱之為“編碼器-解碼器”(Encoder-Decoder)結構。
在這種框架下,NMT其實就是一個典型的Seq2Seq模型,傳統(tǒng)的NMT使用兩個RNN:一個RNN對源語言進行編碼,將源語言編碼到一個固定維度的中間向量;再使用一個RNN進行解碼翻譯到目標語言。
從這里可以看出,在生成目標句子的單詞時,不論生成哪個單詞,它們使用的輸入句子的語義編碼都是一樣的,沒有任何區(qū)別。而語義編碼是由源文句子的每個單詞經過Encoder 編碼產生的,這意味著不論是生成哪個單詞,源文句子中的任意單詞對某個目標單詞來說影響力都是相同的。
比如輸入的是中文句子:這是成功的秘訣,Encoder-Decoder框架逐步生成英文單詞:this is the secret of success。
在翻譯“秘訣”這個中文詞的時候,模型里面的每個中文單詞對于翻譯目標單詞“secret”貢獻是相同的。很明顯這里不太合理,顯然“秘訣”對于翻譯成“secret”更重要,但是目前這個模型是無法體現(xiàn)這一點的。
這樣的模型,我們可以稱之為分心模型。這樣的模型在輸入句子比較短的時候問題不大,但是如果輸入句子比較長,此時所有語義完全通過一個中間語義向量來表示,單詞自身的信息已經消失,可想而知會丟失很多細節(jié)信息。
為了解決上述模型的問題,我們需要引入注意力機制,即應該在翻譯“secret”的時候,體現(xiàn)出中文詞對于翻譯當前英文單詞不同的影響程度,比如給出類似下面一個概率分布值:(這,0.1)(是,0.1)(成功,0.2)(的,0.1)(秘訣,0.5)。
每個中文詞的概率代表了翻譯當前單詞“secret”時,注意力分配模型分配給不同中文詞的注意力大小。這對于正確翻譯目標語單詞肯定是有幫助的,因為引入了新的信息。采用注意力機制“編碼器-解碼器”結構與普通結構不同之處在于上下文向量的構建。解碼步驟中,模型通過注意力機制選擇性地關注源語言句子的不同部分,動態(tài)地構建上下文向量。
請看視頻動態(tài)演示
接下來我們將介紹目前線上系統(tǒng)應用最廣泛、一般也是自動譯文性能最好的機器翻譯方法:基于Transformer的機器翻譯方法。
傳統(tǒng)的神經機器翻譯大都是利用RNN或者CNN來作為“編碼器-解碼器”的模型基礎,而谷歌最新的只基于Attention的Transformer模型摒棄了固有的定式,并沒有直接使用任何CNN或者RNN的結構。
編碼器由6個相同的層堆疊在一起,每一層又有兩個支層:第一個支層是一個多頭的自注意機制,第二個支層是一個簡單的全連接前饋網絡。每部分的輸出都經過一個LayerNorm,并且采用殘差連接。模型的解碼器也是堆疊了六個相同的層,每層除了編碼器中那兩個支層,解碼器還加入了第三個支層:帶有mask的多頭自注意機制。在訓練的時候,該模型可以高度并行地工作,所以在提升翻譯性能的同時訓練速度也特別快。
如果想詳細了解Transformer模型的細節(jié),請閱讀論文《Attention is all you need》。
請看視頻動態(tài)演示
接下來簡單介紹一下機器翻譯的訓練流程。雖然機器翻譯訓練最終優(yōu)化目標是盡可能提高自動譯文與參考譯文的相似度,但由于計算速度的原因,目前的訓練優(yōu)化目標一般是降低PPL(困惑度)。
因此,與一般的深度學習模型的訓練過程是基本一致的。一般而言,先隨機隨機初始化模型參數(shù),然后逐詞解碼一個或者多個Batch,然后計算損失,在這里一般是PPL,然后根據(jù)損失確定更新參數(shù)的策略。重復上述過程直到收斂。
機器翻譯的困難?
在小節(jié)最后,我們總結一下機器翻譯領域特有的一些困難。
我們一般認為,之所以目前的機器翻譯質量還不夠好,下邊這些原因占了很大一部分。
首先,自然語言中普遍存在的歧義和未知現(xiàn)象始終難以被已有訓練數(shù)據(jù)覆蓋并被模型及時學習到,即便能覆蓋也可能有長尾問題;其次,翻譯本身并不僅僅是字符串的轉換,比如我們并不能直接簡單通過字面就能正確翻譯“青梅竹馬”這個詞;再者,翻譯的解并不唯一,始終存在人為的標準,這樣直接做訓練模型的損失函數(shù)失效;最后,有的翻譯問題實在太難了,可能需要翻譯大家窮其一生,更遑論機器翻譯模型。比如在見到“最是那一低頭的溫柔,像一朵水蓮花不勝涼風的嬌羞”的時候,機器翻譯幾乎只能選擇啟動自殺程序(如果有的話)。
在這種背景下,除了極少一部分機器翻譯能完成得很好的翻譯任務以外,如果要正式使用自動譯文,幾乎都需要不同程度的人工介入。
這是我們?yōu)槭裁赐度肴藱C交互式機器翻譯的最初動機。
在此,我們需要對傳統(tǒng)人工翻譯行業(yè)保持必要的謙遜,同時向長期奮斗在一線的翻譯工作者們致以崇高的敬意。沒有他們,我們的機器翻譯將無以為繼,因為訓練語料的產生有賴于廣大翻譯工作者。
翻譯需求與人工翻譯行業(yè)
介紹完機器翻譯現(xiàn)狀,我們接下來回歸到機器翻譯要解決的問題本身,那就是翻譯需求。有翻譯需求,就離不開人工翻譯行業(yè)。為了更清晰地看到機器翻譯的未來,我們有必要將翻譯需求與人工翻譯行業(yè)看得更清楚。
???
就當下而言,整個人工翻譯市場規(guī)模全球為400~500億美元規(guī)模,但歐洲和北美洲占比就超過90%,整個亞洲占比才不到9%。由此可以推算,國內人工翻譯行業(yè)產值在300億人民幣左右。
這個市場規(guī)模似乎并不值得機器翻譯玩家們高舉高打,因為機器翻譯的產值應該不會超過人工翻譯行業(yè)的產值,雖然機器翻譯解決了以往人工翻譯難以解決的需求,但新的需求往往難以產生有吸引力的商業(yè)價值。
需要提及的是,這里的翻譯需求包括筆譯、口譯以及本地化。因此,如果一家公司想要靠機器翻譯來支撐股價,這大概是不現(xiàn)實的。
????
那我們?yōu)槭裁从忠度刖ρ芯咳藱C交互式機器翻譯呢?
主要原因是翻譯需求雖然不大,但不可缺少,但是人工翻譯翻譯行業(yè)又非常零散。零散到什么程度呢?前100家語言服務提供者的市場占比總共不到15%。
而且排名和占比都基本穩(wěn)定。
分散往往意味著低效,事實上也是如此,在以筆譯為主的翻譯市場上,技術所占的份額就比較少,口譯的介入就更少了。
更艱巨的情況是,10人以內的團隊為絕大多數(shù),他們需要專業(yè)的翻譯工具,卻無力支付正版。目標也許已經很明確,為了人工翻譯行業(yè)整體提高翻譯效率,我們有必要投入足夠的力量到人機交互式機器翻譯技術研發(fā)中。
?
??人機交互式機器翻譯
?接下來我們來認真聊聊什么才是人機交互式機器翻譯。
顧名思義,人機交互式機器翻譯就是通過人機交互的途徑來完成翻譯任務,這顯然區(qū)別于不對最終譯文質量負責的全自動的機器翻譯。
在前面的介紹中我們曾提到,目前機器翻譯全自動輸出的翻譯結果無法保證譯文質量。
但隨著機器翻譯技術的進步,幫助人工翻譯提高翻譯效率的可行性已經比較明顯。此時的主要挑戰(zhàn)在于,如何通過人機交互的方式來完全翻譯作業(yè),且要明顯提高翻譯效率、降低經濟成本。
站在人工翻譯側,機器翻譯需要能夠接受用戶提供的譯文干預,及時學習用戶的修改反饋,同時實時提供翻譯輔助信息。
我們認為,同時滿足上上述三個要求的系統(tǒng)才能稱之為人機交互式機器翻譯系統(tǒng)。
那人機交互式機器翻譯技術如何與人工翻譯完成配合呢?
經過深度調研,我們總結出了如下“一評估三交互”的人機交互翻譯范式:
一評估指貫穿全過程的機器翻譯自動譯文質量評估技術,在具體的應用場景中,通過自動翻譯質量評估,向用戶推薦合適的交互手段;
三交互指三種人機交互手段,分別是翻譯輸入法、交互式機器翻譯和譯后編輯,分別適用于自動譯文質量比較差、質量尚可和質量較優(yōu)的情形。
????
在“一評估三交互”的人機交互翻譯范式中,機器翻譯系統(tǒng)承擔助手角色,輔助人工翻譯在不降低譯文質量的前提下顯著加快翻譯效率。
因此,機器翻譯需要承擔的任務可以分為六類:
1. 整句更新,理解用戶干預,輸入當前句子更好的自動譯文供人工譯員參考和決策;?
2. 優(yōu)質翻譯片斷提示,以便用戶快速采用機器翻譯建議;
3. 翻譯輸入法,方便用戶在翻譯過程中精準組詞,以快速錄入人工譯文;
4. 在線學習,及時學習用戶修改反饋;
5. 語義理解,實時提供翻譯輔助信息;
6. 快速解碼, 所有交互過程必須實時響應。
可以看到,人機交互式機器翻譯即有工程技術的難題,也有目前難以找到有效解決方案的學術問題。
接下來,我將介紹“三交互”中的三個重要模塊。
首先是當自動譯文質量比較好的情況下,直接通過譯后編輯這種模式就可以快速完成翻譯任務。
所謂譯后編輯,簡單而言就是指通過人工修改自動譯文來完成翻譯。主要的技術難點是如何準確自動推薦優(yōu)質譯文,業(yè)界通用的技術為Quality Estimation,即無參考譯文的機器翻譯質量評估。實現(xiàn)途徑一般是特征工程,同時輔以人工翻譯規(guī)則。
當機器譯文質量尚可,但缺乏譯后編輯價值時,就需要使用交互式機器翻譯技術。交互式機器翻譯的中心思想在于,機器翻譯根據(jù)用戶已輸入片斷,提供片斷級的翻譯建議。優(yōu)化目標是通過盡可能少的人工干預,生成盡可能準確的長翻譯片斷。主要的技術難點在于如何理解用戶給定的干預信息,干預信息包括但不限于譯文片斷、術語以及不希望出現(xiàn)的詞。
交互式機器翻譯的技術核心是約束解碼方法。在通用的機器翻譯系統(tǒng)中,模型的推理階段一般采用標準的Beam Search算法。但在人機交互式機器翻譯系統(tǒng)中,生成的自動譯文往往需要滿足一定約束,比如前綴約束、后綴約束、譯文中必須出現(xiàn)或者必須不出現(xiàn)哪些片斷。
比較簡單且成熟的解碼方法稱為Grid Beam Search,即在推理的每一個時刻都試圖擴展約束,最后輸出滿足所有約束的翻譯假設。優(yōu)點是代碼簡單直接,缺點是解碼速度下降比較明顯,且對約束的噪聲比較敏感。
為了改進GBS的缺陷,我們將約束引入訓練過程,即將約束作為額外特征引入模型,經實驗證明,能達到與GBS基本一致的解碼質量,能容忍最多60%的約束噪聲,且翻譯速度與標準Transformer模型基本一致。
譯后編輯與交互式機器翻譯的一個共同點都是需要用戶閱讀理解自動譯文,如果自動譯文質量比較差的情況下,這是不被用戶所接受的。在比較嚴肅的領域,如醫(yī)療、醫(yī)藥、法律等領域是經常發(fā)生的事。
在這種情形下,機器翻譯就不能輔助人工翻譯提高翻譯效率嗎?
我們的答案是完全可行的,途徑就是翻譯輸入法,在用戶不閱讀理解自動譯文的前提下,通過機器翻譯提升人工翻譯效率。
我們來簡單看一個例子。
用戶希望錄入的最終譯文是“中國考慮改革公務員福利制度”,一般在錄入時,我們都希望一次能多輸入幾個字。搜狗、谷歌、微軟輸入法雖然都很優(yōu)秀,但是很遺憾,由于缺乏對翻譯上下文的感知,如果輸入的拼音串太長,則很容易解碼不成功。
每個拼音對應多個漢字,把一個拼音串對應的漢字從左到右連起來,就是如圖所示的網格圖。y1,y2,y3,…,yN是用戶輸入的拼音串,N為拼音數(shù)也是輸入法短語候選的漢字數(shù);h11,h12,h13是第一個拼音y1的候選漢字,以此類推。
從第一個字到最后一個字可以組成很多句子,每一個句子和圖中的一條路徑一一對應。拼音輸入法就是要根據(jù)上下文在給定拼音條件下找到一個最優(yōu)的輸入短語,我們利用對數(shù)線性模型可以對輸入法進行建模。
傳統(tǒng)的拼音輸入法融合的特征有音字轉換概率、字音轉換概率、語言模型概率以及輸入歷史等。
而翻譯輸入法需要額外融合機器翻譯相關的特征,比如翻譯概率、翻譯規(guī)則、翻譯假設等。這些機器翻譯相關的特征,直接反映了當前翻譯的上下文信息,因此就能夠生成更符合人工翻譯期望的結果。
比如我們能比較少的按鍵數(shù)直接輸入“中國考慮改革”。
在線學習是人機交互式機器翻譯場景必然面對的挑戰(zhàn),在翻譯過程中,用戶希望系統(tǒng)能從反饋中自動糾正以前的自動翻譯錯誤。
比如圖中所求有兩個比較明顯的翻譯錯誤,把publication chair翻譯成了出版物的椅子,把人名錯誤翻譯成了仁諫早。但在翻譯過程中,人工翻譯已經分別糾正為出版主席和井佐原均。
如果沒有在線學習模塊,則可以預計在后續(xù)的翻譯過程中,自動翻譯系統(tǒng)還會繼續(xù)犯錯。
大家可以通過學術搜索引擎發(fā)現(xiàn)很多關于在線學習方法的文獻,比如我們選擇了在線隨機森林作為機器翻譯在線學習的基礎模型。
在翻譯問題中,每個源短語對應包含中M棵決策樹的隨機森林,每棵決策樹記錄了不同的特征,最后通過投票來決定源短語到目標短語的翻譯概率。
體現(xiàn)在線學習的主要是兩個方面:
1. 在決策樹生長過程中,根據(jù)信息增益決定具體的節(jié)點是否需要分支;
2. 在翻譯過程中,隨時根據(jù)錯誤率決定是否刪除某決策樹是否應該被刪除重新生長。
另一種能達到類似于在線學習效果的方法是融合翻譯記憶的機器翻譯方法。翻譯記憶的中心思想是讓用戶盡量復用之前的人工翻譯結果,盡量避免重復翻譯相同的文本。
我們可以在機器翻譯解碼過程中,通過翻譯記憶來引導自動譯文的生成更偏向翻譯記憶中的匹配片斷。
綜合實驗證明,融合翻譯記憶之后,自動譯文的質量提升是比較明顯的。
????
我們在科研方面也提出了一些新方法,比如將翻譯記憶的目標端句子壓縮為詞圖,然后來引導神經機器翻譯目標端句子的生成。
實驗證明,翻譯記憶與當前待翻譯的源文句子的匹配率越高,則對自動譯文質量的提升作用更為明顯。
人機交互式機器翻譯應用
在騰訊公司內部,機器翻譯落地場景大致可以三類:
機器翻譯+語音識別=同聲傳譯;
機器翻譯+OCR=拍照翻譯;
機器翻譯+人機交互=輔助翻譯。
這些技術的落地可以同時為公司內產品服務,以及對外開放給合作伙伴。
就目前而言,在人機交互式機器翻譯場景,騰訊走在行業(yè)前沿。
我們以一個具體的例子來說明人機交互式機器翻譯的正確打開方式。這是某大型公司以翻譯核心的多語知識解決方案。
整個公司可以分為兩類部門:
大部分屬于知識消費部門,即翻譯需求的發(fā)起者,比如在專利申請、手冊閱讀、信息檢索場景都可能有翻譯需求;
第二部分是人數(shù)較少但不可或缺的知識生產部門,翻譯團隊,有的公司的做法是直接外包翻譯任務,這里的翻譯團隊就是外部團隊。
兩類部門通過內部業(yè)務系統(tǒng)建立聯(lián)系,如果沒有機器翻譯,則所有翻譯需求都需要直接導向人工翻譯團隊。加入機器翻譯之后,只需要概要閱讀或者跨語言檢索的場景則直接導向機器翻譯。
如果引入人機交互式機器翻譯之后,打通術語詞典和翻譯記憶庫之后,則有一部分需要嚴肅翻譯結果的需求也不用完全導流給人工翻譯團隊,用戶可以直接以較少的努力就能快速完成翻譯任務。
請看視頻動態(tài)演示效果
最后,大家不禁要問,如何才能構建一套人機交互翻譯系統(tǒng)呢?
我的答案是首先要定義明確的需求,即我們需要什么語種、什么領域、用于什么場景,以及如何現(xiàn)有業(yè)務系統(tǒng)打通;然后準備足量的雙語平行句對作用訓練語料;接著集成已經可以應用的最新技術,比如輸入法、術語抽取、翻譯片斷挖掘等;再然后就是調試GPU集群、并行加速訓練等;最后部署上線并迭代更新。
在這個過程中,往往會出現(xiàn)很多現(xiàn)實問題。比如最終部署的系統(tǒng)并不能完全預定任務,主要可能是對自動譯文質量過高的期望,或者發(fā)現(xiàn)開源系統(tǒng)不是那么容易填坑,另外就是如何甄別出切實可用的技術,并拉通目標場景的技術鏈條。
最后的最后,我提出人工智能落地傳統(tǒng)行業(yè)時遇到的三個典型問題:
1. 我們需要什么的人?調參大師和代碼工匠都是需要的,那論文機器呢?現(xiàn)有人員能否快速轉化科研成果?
2. 行業(yè)內、公司內的數(shù)據(jù)鴻溝和工程壁壘如何打通?畢竟人工智能技術不太可能成為獨立存在,需要嵌入式即有業(yè)務邏輯之中;
3. 人工智能產品與用人工智能的產品是不一樣的,我們如何選擇?
????我的分享到此結束,謝謝大家!
大家可以在本公眾號號后臺回復關鍵字「機器翻譯」獲取黃博士的現(xiàn)場演講PPT。
總結
以上是生活随笔為你收集整理的腾讯AI Lab:深度解读AI辅助翻译的研究及应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 走进5G | 腾讯技术工程5G技术沙龙开
- 下一篇: 大牛书单 | 系统架构方向好书推荐