鐘文康 ,葛季棟 ,陳 翔 ,李傳藝 ,唐 澤 ,駱 斌
1(計(jì)算機(jī)軟件新技術(shù)國家重點(diǎn)實(shí)驗(yàn)室(南京大學(xué)),江蘇 南京 210023)
2(南通大學(xué) 信息科學(xué)技術(shù)學(xué)院,江蘇 南通 226019)
機(jī)器翻譯研究如何將基于一種自然語言描述的文本自動(dòng)翻譯成基于另一種自然語言描述的文本,是自然語言處理的一個(gè)重要研究問題.傳統(tǒng)的機(jī)器翻譯系統(tǒng)主要采用統(tǒng)計(jì)機(jī)器翻譯模型[1].近年來,隨著深度學(xué)習(xí)的發(fā)展和應(yīng)用,基于序列對(duì)序列模型(sequence to sequence model)的神經(jīng)機(jī)器翻譯模型[2]在很多語言對(duì)的機(jī)器翻譯任務(wù)上都超過了統(tǒng)計(jì)機(jī)器翻譯模型.神經(jīng)機(jī)器翻譯模型不僅有很高的研究價(jià)值,還有很強(qiáng)的產(chǎn)業(yè)化能力[3],目前主流的翻譯服務(wù)提供商(例如,谷歌翻譯、必應(yīng)翻譯、百度翻譯、騰訊翻譯等)都提供了在線神經(jīng)機(jī)器翻譯服務(wù).
盡管神經(jīng)機(jī)器翻譯為機(jī)器翻譯任務(wù)帶來了極大的性能上的提升,但仍存在一些問題.例如,對(duì)長句子和低頻詞語的翻譯效果不佳,翻譯結(jié)果和詞對(duì)齊模型不符等[4],并且,這些錯(cuò)誤出現(xiàn)的規(guī)律和原因往往難以被發(fā)現(xiàn).與統(tǒng)計(jì)機(jī)器翻譯模型相比,神經(jīng)機(jī)器翻譯系統(tǒng)還存在更為顯著的魯棒性問題[4].Cheng 等人[5]指出,對(duì)輸入語句做出的極小改變可能會(huì)引起翻譯結(jié)果的劇烈改變,如同“蝴蝶效應(yīng)”.此外,目前商用的神經(jīng)機(jī)器翻譯系統(tǒng)較多,但由于神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)和訓(xùn)練數(shù)據(jù)的差異,各神經(jīng)機(jī)器翻譯系統(tǒng)的穩(wěn)定性并不一樣.圖1 和圖2 分別展示了谷歌和百度的神經(jīng)機(jī)器翻譯系統(tǒng)在翻譯3 個(gè)近似句子時(shí)的不同結(jié)果.3 個(gè)待翻譯英文句子在結(jié)構(gòu)上完全相同,在內(nèi)容上僅句尾單詞含義不同,但是它們經(jīng)過谷歌和百度的神經(jīng)機(jī)器翻譯系統(tǒng)翻譯得到的翻譯結(jié)果卻出現(xiàn)了較大的差異.谷歌翻譯在第2 個(gè)和第3 個(gè)句子上出現(xiàn)了翻譯錯(cuò)誤,而百度翻譯在第1 個(gè)句子上出現(xiàn)了翻譯錯(cuò)誤.
Fig.1 Translation errors of Google’s neural machine translation system圖1 谷歌神經(jīng)機(jī)器翻譯系統(tǒng)的翻譯錯(cuò)誤示例
Fig.2 Translation errors of Baidu’s neural machine translation system圖2 百度神經(jīng)機(jī)器翻譯系統(tǒng)的翻譯錯(cuò)誤示例
顯然,對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行翻譯魯棒性評(píng)估具有重要的現(xiàn)實(shí)意義和研究意義.目前在該領(lǐng)域還缺乏相關(guān)研究.傳統(tǒng)的機(jī)器翻譯質(zhì)量評(píng)估通常采用基于參考譯文的方法,側(cè)重翻譯的正確性.而神經(jīng)機(jī)器翻譯系統(tǒng)采用的神經(jīng)網(wǎng)絡(luò)模型導(dǎo)致其與傳統(tǒng)的統(tǒng)計(jì)機(jī)器翻譯模型相比存在更為顯著的翻譯魯棒性問題,亟需合理的測試手段和評(píng)估指標(biāo).如何對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行測試和質(zhì)量評(píng)估具有一定的研究挑戰(zhàn)性.目前,這種挑戰(zhàn)性主要體現(xiàn)在兩個(gè)方面.
神經(jīng)網(wǎng)絡(luò)模型的測試?yán)щy性.神經(jīng)機(jī)器翻譯系統(tǒng)采用的神經(jīng)網(wǎng)絡(luò)模型缺乏可解釋性和可理解性[6].在進(jìn)行神經(jīng)機(jī)器翻譯時(shí),待翻譯語句在神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中會(huì)被轉(zhuǎn)換為多維向量,這種轉(zhuǎn)換涉及到的步驟繁雜,參數(shù)眾多,很難理解每一個(gè)步驟的實(shí)際含義.另一方面,神經(jīng)網(wǎng)絡(luò)模型對(duì)訓(xùn)練數(shù)據(jù)具有很強(qiáng)的依賴性,相同的網(wǎng)絡(luò)結(jié)構(gòu)在不同的訓(xùn)練數(shù)據(jù)集下,訓(xùn)練出的參數(shù)取值會(huì)存在較大差異,造成輸出的穩(wěn)定性較低.
機(jī)器翻譯任務(wù)的評(píng)估困難性.翻譯質(zhì)量通?;趨⒖甲g文進(jìn)行評(píng)估,即給定人工翻譯結(jié)果,與神經(jīng)機(jī)器翻譯系統(tǒng)輸出的翻譯進(jìn)行比較,并通過相似度指標(biāo)進(jìn)行量化.但這種方法完全依賴于參考譯文的質(zhì)量,而高質(zhì)量的參考譯文獲取的難度較大,成本很高.
神經(jīng)網(wǎng)絡(luò)模型的測試?yán)щy性意味著采用白盒測試方法可行性較低,而機(jī)器翻譯模型的黑盒測試方法通?;趨⒖甲g文,成本較高.為了解決上述研究挑戰(zhàn),實(shí)現(xiàn)在沒有參考譯文情況下對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行有效的翻譯魯棒性評(píng)估,本文基于蛻變測試思想提出了一個(gè)多粒度的蛻變測試框架 MGMT(multi-granularity metamorphic test).MGMT 首次采用多粒度的蛻變測試方法進(jìn)行質(zhì)量評(píng)估,分別在句子、短語和單詞粒度上定義了蛻變關(guān)系以及相似度計(jì)算方法,并基于蛻變關(guān)系對(duì)每一個(gè)句子進(jìn)行3 個(gè)粒度上的蛻變測試,最后用蛻變關(guān)系滿足率作為神經(jīng)機(jī)器翻譯系統(tǒng)的魯棒性量化指標(biāo).同時(shí),我們基于MGMT 框架開展了實(shí)證研究,采用一個(gè)公開的中英翻譯數(shù)據(jù)集UM-Corpus[7],選取其中5 個(gè)領(lǐng)域(教育、微博、新聞、口語、字幕)的英文句子集作為源數(shù)據(jù)集,在MGMT 測試框架下對(duì)現(xiàn)有的、使用廣泛的大型神經(jīng)機(jī)器翻譯系統(tǒng)(包括谷歌翻譯[8]、必應(yīng)翻譯[9]、百度翻譯[10]、阿里巴巴翻譯[11]、騰訊翻譯[12]、搜狗翻譯[13])進(jìn)行質(zhì)量評(píng)估.最后將數(shù)據(jù)集中的中文句子作為參考譯文,以基于參考譯文的方法為基準(zhǔn),與同類型的蛻變測試方法進(jìn)行比較,以證明MGMT 相比于同類型方法在評(píng)估準(zhǔn)確度上有顯著的優(yōu)越性.
本文第2 節(jié)對(duì)已有的面向神經(jīng)機(jī)器翻譯系統(tǒng)的質(zhì)量評(píng)估和測試工作進(jìn)行總結(jié).第3 節(jié)介紹本文提出的多粒度蛻變測試框架,描述測試流程、蛻變關(guān)系定義以及相似度計(jì)算方法.第4 節(jié)針對(duì)6 個(gè)主流商用神經(jīng)機(jī)器翻譯系統(tǒng)在一個(gè)多領(lǐng)域的翻譯數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),并用同類型蛻變測試工作與基于參考譯文的測試方法進(jìn)行對(duì)比,以證明本文方法的有效性.第5 節(jié)進(jìn)行總結(jié)與展望,對(duì)本文工作進(jìn)行總結(jié)并闡明未來可能的工作方向.
傳統(tǒng)的機(jī)器翻譯系統(tǒng)質(zhì)量評(píng)估并不區(qū)分正確性和魯棒性,通常用翻譯質(zhì)量來衡量系統(tǒng)質(zhì)量.Eirini[14]總結(jié)了兩類翻譯質(zhì)量評(píng)估方法.一類是人工評(píng)估,即由專業(yè)譯者來判斷翻譯質(zhì)量的好壞.人工評(píng)估的優(yōu)點(diǎn)是評(píng)估結(jié)果最接近實(shí)際,但是時(shí)間成本和人力成本都較高.另一類方法是基于參考譯文進(jìn)行評(píng)估,即給定翻譯好的參考譯文,將機(jī)器翻譯的輸出結(jié)果與參考譯文進(jìn)行相似度指標(biāo)計(jì)算,最常用的指標(biāo)有BLEU[15]、METEOR[16]、WER[17]等.基于參考譯文的方法相對(duì)于人工方法成本有所降低,但是高質(zhì)量參考譯文的獲取難度較大,成本仍然很高.
如何在沒有參考譯文的情況下對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行質(zhì)量評(píng)估是一項(xiàng)困難的任務(wù).神經(jīng)機(jī)器翻譯系統(tǒng)采用的神經(jīng)網(wǎng)絡(luò)模型具有參數(shù)規(guī)模大、可理解性弱的特點(diǎn),且普遍存在測試預(yù)言問題.測試預(yù)言問題[18]是指在測試中對(duì)于某個(gè)輸入需要給定預(yù)期的輸出來判斷系統(tǒng)實(shí)際輸出的正確性.Wang 等人[19]總結(jié)了目前常見的解決深度神經(jīng)網(wǎng)絡(luò)系統(tǒng)測試預(yù)言的方法,將其分為兩類.第1 類基于差異測試[20],即通過檢測同一輸入在基于相同規(guī)約的實(shí)現(xiàn)下的輸出是否相同來判斷是否出錯(cuò).另一類基于蛻變測試[21],即通過定義蛻變關(guān)系來描述系統(tǒng)的輸入變化和輸出變化之間的關(guān)系.在以往的神經(jīng)機(jī)器翻譯系統(tǒng)質(zhì)量評(píng)估工作中,基于蛻變測試的方法較為常見,這種方法的關(guān)鍵在于蛻變關(guān)系的定義.
Milam 等人[22]提出用往返翻譯RTT(round-trip translation)在無需參考譯文的情況下可以對(duì)機(jī)器翻譯系統(tǒng)進(jìn)行測試的有效性.基于RTT 構(gòu)造的蛻變關(guān)系是:源語句通過神經(jīng)機(jī)器翻譯系統(tǒng)翻譯到目標(biāo)語言,再翻譯回源語言得到的翻譯結(jié)果應(yīng)該與源語句相同.
Daniel 等人[23]提出了一種結(jié)合蒙特卡洛隨機(jī)算法和蛻變測試的方法 MCMT(Monte Carlo combined metamorphic test),以此來衡量神經(jīng)機(jī)器翻譯系統(tǒng)的質(zhì)量.它定義了一種類似RTT[22]的蛻變關(guān)系:源語言經(jīng)過神經(jīng)機(jī)器翻譯系統(tǒng)直接翻譯到目標(biāo)語言,與源語言先使用蒙特卡洛算法隨機(jī)翻譯到一種中間語言,再翻譯到目標(biāo)語言得到的兩個(gè)翻譯結(jié)果應(yīng)該相同.
Zhou 等人[24]在Daniel 等人[23]工作的基礎(chǔ)上提出了新的神經(jīng)機(jī)器翻譯系統(tǒng)質(zhì)量評(píng)估方法MT4MT.該方法使用基于詞替換的蛻變關(guān)系:替換源語句中的一個(gè)單詞,不會(huì)影響翻譯語句的結(jié)構(gòu).同時(shí),MT4MT 有針對(duì)性地設(shè)計(jì)了一些簡單的替換規(guī)則.
此外,有部分工作研究如何在無需參考譯文的情況下進(jìn)行機(jī)器翻譯系統(tǒng)的翻譯錯(cuò)誤定位.He 等人[25]提出了結(jié)構(gòu)不變性測試(structure-invariant test,簡稱SIT)以發(fā)現(xiàn)系統(tǒng)的翻譯錯(cuò)誤.結(jié)構(gòu)不變的含義是指,上下文含義相近的句子在結(jié)構(gòu)上應(yīng)該相同.具體做法是,將源語句中的某個(gè)詞通過BERT 遮蔽語言模型[26]進(jìn)行替換,生成上下文相似的句子,最后再比較這兩個(gè)句子的結(jié)構(gòu)相似度.Zheng 等人[27]也提出了一種自動(dòng)測試神經(jīng)機(jī)器翻譯系統(tǒng)的方法,通過短語識(shí)別和聯(lián)系學(xué)習(xí)可以自動(dòng)發(fā)現(xiàn)神經(jīng)機(jī)器翻譯系統(tǒng)的過譯(over-translation)和漏譯(undertranslation)錯(cuò)誤.Shashij 等人[28]提出了一種翻譯錯(cuò)誤的自動(dòng)檢測方法,借助句子的成分句法分析樹將句子中的短語獨(dú)立出來,通過比較短語在句子中和獨(dú)立翻譯的結(jié)果來自動(dòng)發(fā)現(xiàn)系統(tǒng)的翻譯錯(cuò)誤.Sun 等人[29]提出了一個(gè)結(jié)合測試與修復(fù)的框架TransRepair,在測試階段也采用了基于詞替換的方法來生成上下文相似句子.
但是,上述基于蛻變測試的工作仍然存在不足之處.MCMT[23]采用隨機(jī)算法來選擇中間語言,但不同語言的翻譯效果有較大差異,會(huì)對(duì)實(shí)驗(yàn)產(chǎn)生干擾.MT4MT[24]設(shè)計(jì)的替換規(guī)則過于主觀,能被替換的詞的范圍較小.另外,基于蛻變測試的已有工作都只采用了一種蛻變關(guān)系來進(jìn)行蛻變測試,實(shí)驗(yàn)結(jié)果缺乏說服力.
針對(duì)已有研究工作存在的不足,本文提出了一個(gè)多粒度的蛻變測試框架MGMT,可以在無需參考譯文的情況下對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行魯棒性評(píng)估.MGMT 與已有方法有較大區(qū)別.首先,MGMT 與已有工作的目的不同.已有工作旨在利用蛻變測試思想對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)的翻譯性能進(jìn)行評(píng)估(例如RTT[22]、MCMT[23])或定位翻譯錯(cuò)誤的樣本(例如SIT[25]、TransRepair[29]),主要關(guān)注翻譯的正確性;而MGMT 的主要目的是借助蛻變測試對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)的整體魯棒性進(jìn)行評(píng)估,主要關(guān)注翻譯的穩(wěn)定性.具體來說,MGMT 與RTT[22]、MCMT[23]、MT4MT[24]都基于蛻變測試對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行整體性評(píng)估且不需要參考譯文,RTT[22]、MCMT[23]、MT4MT[24]基于單一蛻變關(guān)系來評(píng)估翻譯質(zhì)量,但MGMT 旨在以合理的方式評(píng)估翻譯系統(tǒng)魯棒性,因此使用了3 種符合翻譯直覺的蛻變關(guān)系(具體細(xì)節(jié)可參考第3.2 節(jié)中的蛻變關(guān)系定義).MGMT 中短語和單詞粒度的測試樣本生成思路受SIT[25]和TransRepair[29]的啟發(fā),用替換的方式生成測試樣本,但SIT[25]的目的是盡可能地發(fā)現(xiàn)更多的翻譯錯(cuò)誤,因此采用了盡可能多且獨(dú)立于替換方法的相似度計(jì)算方法,而MGMT 為確保魯棒性評(píng)估的合理性,采用了一一對(duì)應(yīng)的替換方法和相似度計(jì)算方法.
在本節(jié)中,首先介紹框架的整體架構(gòu)和測試流程(見第3.1 節(jié)).其次介紹框架中的主要模塊設(shè)計(jì),包括句子粒度、短語粒度、單詞粒度上的蛻變關(guān)系定義(見第3.2 節(jié)).之后介紹MGMT 框架中如何選擇待替換成分并進(jìn)行成分替換(見第3.3 節(jié))以及如何進(jìn)行各粒度上的相似度計(jì)算(見第3.4 節(jié)).
本文提出的面向神經(jīng)機(jī)器翻譯系統(tǒng)的多粒度蛻變測試框架MGMT 大致可分為3 個(gè)部分.圖3 展示了從源語句輸入到蛻變關(guān)系判定結(jié)果輸出的主要流程.
(1) 選擇源語句中的待替換成分.根據(jù)MGMT 中定義的蛻變關(guān)系(見第3.2 節(jié)),對(duì)源語句進(jìn)行句子、短語、單詞粒度的替換.因此,首先要在3 個(gè)粒度上選擇源句子中需要替換的成分.在MGMT 的設(shè)計(jì)中,源句子在句子粒度上的待替換成分即為整個(gè)句子.接著進(jìn)行待替換單詞和待替換短語的選擇.我們對(duì)源語句進(jìn)行成分句法分析,得到句子的成分句法分析樹,再使用DeepSelect 算法(見第3.1.1 節(jié))在成分句法分析樹上進(jìn)行選擇.在圖3 所示的例子中,我們根據(jù)分析樹選擇了一個(gè)NNP(proper noun,singular)詞性單詞作為待替換單詞和一個(gè)ADJP(adjective phrase)詞性短語作為待替換短語.
(2) 對(duì)源語句進(jìn)行成分替換.句子粒度上的替換基于RTT[22]思想.RTT 包含正譯(forward translation,簡稱FT)和回譯(backward translation,簡稱BT),正譯是指將文本從源語言翻譯到目標(biāo)語言,回譯是指將正譯得到的翻譯結(jié)果翻譯回源語言.我們先將源語句正譯到目標(biāo)語言,再回譯到源語言以得到句子粒度的替換結(jié)果.短語粒度和單詞粒度上的替換基于BERT 遮蔽語言模型[26].本文將上面(1)中選中的待替換單詞和短語用遮蔽詞替代,再輸入BERT 遮蔽語言模型中,該模型可以根據(jù)句子的語境預(yù)測被遮蔽位置的詞.最后用預(yù)測出的結(jié)果替換源句子中相同位置的單詞和短語以得到短語粒度和單詞粒度的替換結(jié)果.
(3) 翻譯并對(duì)翻譯結(jié)果進(jìn)行相似度計(jì)算.將源語句連同上面(2)中3 個(gè)粒度的替換語句輸入到神經(jīng)機(jī)器翻譯系統(tǒng)中得到4 個(gè)目標(biāo)語言翻譯結(jié)果,并分別對(duì)3 個(gè)粒度上的替換語句和源語句的翻譯結(jié)果進(jìn)行相似度計(jì)算.在句子粒度上,根據(jù)編輯距離[12]分別計(jì)算源語言句子對(duì)和目標(biāo)語言句子對(duì)的相似度.在短語和單詞粒度上,考慮到選擇待替換成分是基于成分結(jié)構(gòu)分析樹的,因此在計(jì)算目標(biāo)語言句子對(duì)相似度時(shí)也基于句子的成分結(jié)構(gòu)分析樹.最后根據(jù)相似度計(jì)算結(jié)果判斷是否滿足MGMT 定義的蛻變關(guān)系(見第3.2 節(jié)).
Fig.3 Process of multi-granularity metamorphic testing framework圖3 多粒度蛻變測試框架的流程
為了利用蛻變測試對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行合理的翻譯魯棒性評(píng)估,在本節(jié)中我們定義了句子、短語和單詞3 個(gè)粒度的蛻變關(guān)系.這3 個(gè)蛻變關(guān)系的定義基于對(duì)翻譯任務(wù)的常理性推斷.句子粒度的蛻變關(guān)系基于:源語句的直譯結(jié)果與源語句經(jīng)過多輪翻譯得到的翻譯結(jié)果應(yīng)該接近.短語和單詞粒度的蛻變關(guān)系基于:改變源語句中的一小部分,那么源語句其他部分的翻譯結(jié)果應(yīng)該不變.下文第3.2.1 節(jié)、第3.2.2 節(jié)和第3.2.3 節(jié)分別詳細(xì)介紹句子、短語、單詞粒度的蛻變關(guān)系定義及判定方法.
3.2.1 句子粒度蛻變關(guān)系
RTT[22]是在沒有參考譯文情況下的一種常用機(jī)器翻譯系統(tǒng)測試手段.其測試流程是首先將源語言正譯成目標(biāo)語言,再將目標(biāo)語言翻譯結(jié)果回譯到源語言,最后通過比較兩個(gè)源語言句子來評(píng)估機(jī)器翻譯系統(tǒng)的質(zhì)量.本文在RTT“正譯-回譯”流程的基礎(chǔ)上添加1 次正譯,由此定義了句子粒度的蛻變關(guān)系MRsl.
定義1(句子粒度蛻變關(guān)系MRsl).設(shè)源語言句子為S,將S經(jīng)過神經(jīng)機(jī)器翻譯系統(tǒng)正譯得到目標(biāo)語言翻譯結(jié)果St,再將St通過神經(jīng)機(jī)器翻譯系統(tǒng)回譯到源語言得到翻譯結(jié)果S1,最后將S1通過神經(jīng)機(jī)器翻譯系統(tǒng)再一次正譯到目標(biāo)語言得到St1,那么S、S1、St、St1應(yīng)滿足:
公式(1)的含義是,用目標(biāo)語言句子對(duì)與源語言句子對(duì)相似度的比值來評(píng)估基于句子粒度的翻譯魯棒性,目的是排除回譯對(duì)實(shí)驗(yàn)的影響.MGMT 框架實(shí)際評(píng)估的是神經(jīng)機(jī)器翻譯系統(tǒng)在源語言到目標(biāo)語言翻譯(正譯)上的翻譯魯棒性,然而句子粒度的替換過程(如圖3 所示)涉及到一次回譯.回譯采用的神經(jīng)機(jī)器翻譯模型是與正譯采用的神經(jīng)機(jī)器翻譯模型相互獨(dú)立的,因此在回譯階段產(chǎn)生的翻譯錯(cuò)誤會(huì)影響第2 次正譯.例如,在某次測試過程中,正譯的翻譯質(zhì)量極高而回譯的翻譯質(zhì)量很低,直接以Similarity(S,S1)或Similarity(St,St1)評(píng)估翻譯質(zhì)量都會(huì)導(dǎo)致評(píng)估值遠(yuǎn)高于真實(shí)值.因此,我們在公式(1)中用Similarity(St,St1)/Similarity(S,S1)作為翻譯質(zhì)量的評(píng)估值,意在為低質(zhì)量的回譯過程增加一個(gè)補(bǔ)償因子:如果某次回譯過程翻譯質(zhì)量較差(Similarity(S,S1)較小),那么正譯翻譯質(zhì)量分?jǐn)?shù)應(yīng)得到部分補(bǔ)償(即Similarity(St,St1)/Similarity(S,S1)的值會(huì)增大);若回譯過程翻譯質(zhì)量較好(即Similarity(S,S1)接近1),那么翻譯魯棒性的真實(shí)值也更接近目標(biāo)語言句子對(duì)的相似度Similarity(St,St1),而此時(shí)公式(1)中的評(píng)估值Similarity(St,St1)/Similarity(S,S1)也更接近Similarity(St,St1).
3.2.2 短語粒度蛻變關(guān)系
一個(gè)句子由單詞構(gòu)成,不同的單詞能夠組成不同的短語結(jié)構(gòu).以英文句子為例,短語結(jié)構(gòu)可分為名詞性短語(noun phrase,簡稱NP)、動(dòng)詞性短語(verb phrase,簡稱VP)、介詞性短語(prepositional phrase,簡稱PP)、副詞性短語(adverb phrase)等.將源句子中某個(gè)短語結(jié)構(gòu)替換為另一個(gè)近似的短語結(jié)構(gòu)之后,源句子和替換后句子經(jīng)過神經(jīng)機(jī)器翻譯系統(tǒng)翻譯得到的翻譯結(jié)果的結(jié)構(gòu)應(yīng)該相同.本文由此定義了短語粒度的蛻變關(guān)系MRpl.
定義2(短語粒度蛻變關(guān)系MRpl).設(shè)源語句為S,替換S中的某個(gè)短語產(chǎn)生結(jié)構(gòu)相似的替換語句Sp.再將S和Sp通過神經(jīng)機(jī)器翻譯系統(tǒng)翻譯到目標(biāo)語言得到結(jié)果St和Spt.那么,St和St應(yīng)滿足:
公式(2)的含義是源語句S和短語替換語句Sp經(jīng)過神經(jīng)機(jī)器翻譯系統(tǒng)的翻譯結(jié)果St和Spt在結(jié)構(gòu)上應(yīng)該相同.本文用基于成分句法分析樹的相似度計(jì)算方法(見第3.3.3 節(jié))來計(jì)算St和Spt的結(jié)構(gòu)相似度.結(jié)構(gòu)相似度的取值范圍在0~1 之間,取值為0 時(shí),說明兩個(gè)句子的句法分析樹結(jié)構(gòu)完全不同,取值為1 時(shí),說明兩個(gè)句子的句法分析樹結(jié)構(gòu)完全相同.
3.2.3 單詞粒度蛻變關(guān)系
一個(gè)句子由單詞構(gòu)成,不同的單詞有著不同的詞性,處在不同的句子結(jié)構(gòu)塊中.將源句子中的某個(gè)單詞替換為相同上下文的近似單詞,那么源句子和替換后的句子的翻譯結(jié)果在結(jié)構(gòu)上應(yīng)該相同.本文由此定義了單詞粒度的蛻變關(guān)系MRwl.
定義3(單詞粒度蛻變關(guān)系MRwl).設(shè)源語句為S,替換S中某個(gè)單詞產(chǎn)生結(jié)構(gòu)相似的替換語句Sw,再將S和Sw通過神經(jīng)機(jī)器翻譯系統(tǒng)翻譯到目標(biāo)語言得到結(jié)果St和Swt.那么,St和Swt應(yīng)滿足:
公式(3)的含義是源語句S和單詞替換語句Sw經(jīng)過神經(jīng)機(jī)器翻譯系統(tǒng)得到的翻譯結(jié)果St和Swt在結(jié)構(gòu)上應(yīng)該相同.同樣,我們用基于成分句法分析樹的相似度計(jì)算方法(見第3.3.3 節(jié))來計(jì)算St和Swt的結(jié)構(gòu)相似度.結(jié)構(gòu)相似度的取值范圍為0~1,取值為0 時(shí),說明兩個(gè)句子的句法分析樹結(jié)構(gòu)完全不同,取值為1 時(shí),說明兩個(gè)句子的句法分析樹結(jié)構(gòu)完全相同.
3.3.1 選擇待替換成分
根據(jù)MGMT 定義的蛻變關(guān)系(見第3.2 節(jié)),對(duì)于一個(gè)測試樣本要在3 個(gè)粒度上進(jìn)行基于替換的蛻變測試,因此首先要在句子、短語、單詞3 個(gè)粒度上選擇源語句中要被替換的成分.
句子粒度的待替換成分即整個(gè)源句子.短語和單詞粒度的待替換成分是句子中的某個(gè)短語和單詞.在MGMT 中,基于源句子的成分句法分析樹來選擇短語和單詞粒度的待替換成分.圖4 展示了一個(gè)英文句子經(jīng)過BerkeleyParser[30]得到的成分句法分析樹.可以看到,句子根據(jù)單詞詞性和短語詞性被組織成樹狀結(jié)構(gòu).成分句法分析樹的節(jié)點(diǎn)都是由句子中的單詞構(gòu)成的,每一棵子樹都是某幾個(gè)單詞的組合.那么在句子中選擇一個(gè)詞或一個(gè)短語,就等價(jià)于在句法分析樹中選擇到達(dá)某棵子樹的路徑.基于以上特點(diǎn),本文設(shè)計(jì)了一種基于成分句法分析樹的選擇算法DeepSelect 來在短語粒度和單詞粒度上選擇要替換的成分.
算法1.DeepSelect.
Fig.4 Example of constituency parse tree圖4 成分句法分析樹示例
輸入:源語句Sentence,候選集大小Candidatenum,短語詞性集合PhrasePOS;
輸出:待替換路徑finalpath.
DeepSelect 算法旨在選擇句子在短語和單詞粒度下的待替換成分.首先,采用BerkeleyParser[30]句法分析器來生成句子的成分句法分析樹.由于處在成分句法分析樹較深路徑的節(jié)點(diǎn)的粒度一般較小,選擇這些節(jié)點(diǎn)更符合MGMT 的蛻變關(guān)系定義(見第3.2 節(jié)),因此我們將句法分析樹中的路徑按從長到短排序收集到路徑集合PathSet中.接著,在單詞粒度下,我們直接往候選集中添加Candidatanum條路徑;在短語粒度下還需進(jìn)行一個(gè)額外判斷,要求路徑節(jié)點(diǎn)的詞性必須是短語結(jié)構(gòu)型.最后,為了保證路徑選擇的公平性,算法隨機(jī)從候選集中選擇一條路徑作為最終的待替換路徑.
3.3.2 成分替換
句子粒度的成分替換采用的是基于往返翻譯的方法.首先將源句子輸入神經(jīng)機(jī)器翻譯系統(tǒng)得到目標(biāo)語言的直譯結(jié)果,再將直譯結(jié)果輸入翻譯系統(tǒng)翻譯回源語言,這樣就得到了一個(gè)句子粒度的替換語句.
短語粒度和單詞粒度的成分替換采用的是BERT[26]遮蔽語言模型.BERT 模型是一個(gè)非常成功的自然語言理解模型,在很多自然語言處理任務(wù)中通過微調(diào)都能達(dá)到SOTA(state of the art)效果.在BERT 中每個(gè)詞的詞向量不是唯一的,而是與詞的上下文相關(guān),因此,通過BERT 可獲得符合句子語義的詞向量.模型主要通過遮蔽詞預(yù)測和下一句預(yù)測這兩個(gè)任務(wù)來進(jìn)行訓(xùn)練.其中,遮蔽詞預(yù)測是指將一個(gè)句子中15%的詞遮蔽,把預(yù)測這些被遮蔽位置的詞當(dāng)作目標(biāo)任務(wù)來進(jìn)行損失計(jì)算和模型參數(shù)優(yōu)化.BERT 遮蔽語言模型是BERT 的一部分,用遮蔽詞任務(wù)進(jìn)行訓(xùn)練,可以預(yù)測出句子中被遮蔽位置的詞.
本文對(duì)短語粒度和單詞粒度的成分替換采用一個(gè)預(yù)訓(xùn)練好的BERT 遮蔽語言模型來實(shí)現(xiàn),圖5 展示了預(yù)測遮蔽詞的原理與流程.
(1) 將句子中待替換的部分置換為遮蔽詞[MASK].
(2) 將遮蔽后的句子輸入BERT 遮蔽語言模型.句子經(jīng)過BERT 中的Transformer 編碼器轉(zhuǎn)換成詞向量,并輸出每個(gè)位置上對(duì)于詞典中每個(gè)詞的預(yù)測分?jǐn)?shù).
(3) 對(duì)被遮蔽位置上的預(yù)測分?jǐn)?shù)進(jìn)行argmax,得到概率最大的詞(需與源句子中的待替換詞不同).
(4) 將得到的替換詞代替原詞,得到替換后語句.
Fig.5 Process of predicting mased word by BERT maked language model圖5 BERT 遮蔽語言模型預(yù)測遮蔽詞的過程
3.3.3 句子粒度的相似度計(jì)算
句子粒度的蛻變測試涉及3 次翻譯和4 個(gè)句子,需分別計(jì)算源語言和目標(biāo)語言的句子對(duì)的相似度.
在本文中采用的是編輯距離[31]的方法,編輯距離屬于文本相似度較常見的一種度量指標(biāo).通過計(jì)算從字符串A轉(zhuǎn)換為字符串B最少需要操作的次數(shù)來衡量A和B的相似程度.編輯距離值越小,A和B越相似.句子粒度的相似度計(jì)算公式為
在公式(4)中,S1和S2是需要計(jì)算相似度的兩個(gè)句子.EditDistance計(jì)算的是兩個(gè)句子間的編輯距離,實(shí)驗(yàn)中采用的是NLTK(http://www.nltk.org/)實(shí)現(xiàn)的算法.length函數(shù)計(jì)算的是句子長度.相似度取值在0~1 之間.
3.3.4 短語粒度和單詞粒度的相似度計(jì)算
對(duì)短語粒度和單詞粒度的蛻變測試是基于源語句的成分句法分析樹進(jìn)行替換的,因此,這兩個(gè)粒度的結(jié)構(gòu)相似度計(jì)算也基于翻譯結(jié)果的成分句法分析樹.具體定義如下:
在公式(5)~公式(7)中,S1和S2為要計(jì)算結(jié)構(gòu)相似度的兩個(gè)句子.Tree1和Tree2分別是S1和S2的成分句法分析樹.PathSet是句法分析樹的所有路徑(包含子路徑)的集合.S1和S2兩個(gè)句子的結(jié)構(gòu)相似度StructureSimilarity在數(shù)值上定義為丟失率LostRate和新增率AddRate的平均值的補(bǔ)數(shù).LostRate計(jì)算的是Tree1相對(duì)于Tree2中的路徑丟失率,AddRate計(jì)算的是Tree2相對(duì)于Tree1的路徑新增率.結(jié)構(gòu)相似度的取值在0~1 之間.
為了驗(yàn)證本文提出的多粒度蛻變測試框架MGMT 的有效性,我們嘗試回答以下3 個(gè)問題.
問題1:MGMT 能否在無需參考譯文的情況下對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行質(zhì)量評(píng)估?
問題2:MGMT 質(zhì)量評(píng)估的結(jié)果是否具有合理性和說服力?
問題3:MGMT 與其他同類型的蛻變測試方法相比是否具有優(yōu)越性?
實(shí)驗(yàn)問題1 的目的是檢驗(yàn)MGMT 的可用性,需要基于MGMT 框架在無參考譯文的情況下對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行質(zhì)量評(píng)估,并給出量化的評(píng)估結(jié)果.實(shí)驗(yàn)問題2 的目的是檢驗(yàn)MGMT 實(shí)驗(yàn)結(jié)果的合理性,需要將MGMT 實(shí)驗(yàn)結(jié)果與基于參考譯文的質(zhì)量評(píng)估結(jié)果進(jìn)行比較.實(shí)驗(yàn)問題3 的目的是比較MGMT 與同類型方法的評(píng)估準(zhǔn)確度,需要將MGMT 實(shí)驗(yàn)結(jié)果與同類型的蛻變測試實(shí)驗(yàn)結(jié)果進(jìn)行比較.
為了回答上述3 個(gè)實(shí)驗(yàn)問題,本文進(jìn)行了如下實(shí)驗(yàn)設(shè)計(jì).
首先是數(shù)據(jù)集和實(shí)驗(yàn)對(duì)象選擇.我們選擇一個(gè)公開的中英對(duì)照數(shù)據(jù)集UM-Corpus[7]作為數(shù)據(jù)來源,選取了其中5 個(gè)領(lǐng)域(教育、微博、新聞、口語、字幕),每個(gè)領(lǐng)域數(shù)據(jù)集中的前1 000 個(gè)中英句子對(duì),總共5 000 個(gè)句子對(duì)作為實(shí)驗(yàn)數(shù)據(jù)集.然后,本文選擇了6 個(gè)使用廣泛、多語種覆蓋的產(chǎn)業(yè)界神經(jīng)機(jī)器翻譯系統(tǒng)(阿里翻譯、百度翻譯、必應(yīng)翻譯、谷歌翻譯、騰訊翻譯、搜狗翻譯)作為質(zhì)量評(píng)估對(duì)象.
針對(duì)問題1,本文將實(shí)驗(yàn)數(shù)據(jù)集中的5 000 個(gè)英文句子作為源語句,使用本文提出的多粒度蛻變測試框架MGMT 對(duì)6 個(gè)神經(jīng)機(jī)器翻譯系統(tǒng)在5 個(gè)領(lǐng)域下的翻譯魯棒性進(jìn)行了評(píng)估,記錄了各神經(jīng)機(jī)器翻譯系統(tǒng)在句子粒度、短語粒度和單詞粒度的蛻變關(guān)系滿足率,將用于評(píng)估的句子集在3 個(gè)粒度上的蛻變關(guān)系滿足率平均值作為神經(jīng)機(jī)器翻譯系統(tǒng)的最終翻譯魯棒性分?jǐn)?shù).由于我們提出的用于短語粒度和單詞粒度蛻變替換的DeepSelect算法(見第3.3.1 節(jié))具有隨機(jī)性,總共進(jìn)行了3 次翻譯魯棒性分?jǐn)?shù)測定實(shí)驗(yàn),采用3 次實(shí)驗(yàn)數(shù)據(jù)的平均值作為最終實(shí)驗(yàn)結(jié)果,以確保實(shí)驗(yàn)結(jié)果的可靠性.
針對(duì)問題2,需要檢驗(yàn)MGMT 的測試結(jié)果是否符合實(shí)際.機(jī)器翻譯系統(tǒng)的翻譯魯棒性沒有專門的評(píng)估指標(biāo),在過往工作中通常是根據(jù)翻譯質(zhì)量來加以衡量.基于參考譯文計(jì)算文本相似度是翻譯質(zhì)量評(píng)估的最常見手段,大部分翻譯質(zhì)量評(píng)估任務(wù)采用的都是這種方法.基于參考譯文的方法具有較高的合理性和說服力,因此要證明MGMT 的合理性,只需將其實(shí)驗(yàn)結(jié)果與基于參考譯文的文本相似度計(jì)算結(jié)果進(jìn)行比較.由此,本文選擇了3 個(gè)使用廣泛且具有代表性的文本相似度指標(biāo):基于編輯距離的WER[17]、基于精確率的BLEU[15]以及基于召回率的METEOR[16].本文利用這3 個(gè)相似度指標(biāo)設(shè)置了一個(gè)基于參考譯文的參照實(shí)驗(yàn),選擇實(shí)驗(yàn)數(shù)據(jù)集中的5 000 個(gè)中文句子作為參考譯文,與5 000 個(gè)英文語句通過神經(jīng)機(jī)器翻譯系統(tǒng)得到的直譯結(jié)果作比較,計(jì)算出各神經(jīng)機(jī)器翻譯在各領(lǐng)域數(shù)據(jù)集上翻譯結(jié)果的BLEU、METEOR、WER 數(shù)值,與MGMT 的實(shí)驗(yàn)結(jié)果進(jìn)行比較.
針對(duì)問題3,需要將MGMT 的實(shí)驗(yàn)結(jié)果與同類型方法作比較.用蛻變測試對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行質(zhì)量評(píng)估的方法主要有RTT[22]、MCMT[23]及MT4MT[24]這3 種,由于MT4MT 的實(shí)驗(yàn)方法只適用于特定類型的數(shù)據(jù),因此本文選擇了RTT 和MCMT 作為對(duì)比方法進(jìn)行實(shí)驗(yàn),將RTT、MCMT、MGMT 對(duì)各神經(jīng)機(jī)器翻譯系統(tǒng)的評(píng)估結(jié)果與實(shí)驗(yàn)問題2 中基于參考譯文的BLEU、METEOR、WER 數(shù)值進(jìn)行比較.與基于參考譯文的評(píng)估結(jié)果越接近,說明方法的準(zhǔn)確性更高.但是,各組實(shí)驗(yàn)結(jié)果的量綱不同,對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行絕對(duì)數(shù)值上的比較不具備一定的參考意義,因此,本文選擇皮爾遜相關(guān)系數(shù)(Pearson correlation coefficient,簡稱PC)[32]和斯皮爾曼等級(jí)相關(guān)系數(shù)(Spearman rank correlation,簡稱SRC)[33]作為實(shí)驗(yàn)結(jié)果相似度的評(píng)測指標(biāo).
4.2.1 針對(duì)問題1的結(jié)果分析
針對(duì)問題1,本文基于MGMT 開展了大規(guī)模的實(shí)證研究,在5 個(gè)領(lǐng)域的數(shù)據(jù)集上對(duì)6 個(gè)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行了翻譯魯棒性評(píng)估.對(duì)于每個(gè)領(lǐng)域數(shù)據(jù)集中的1 000 個(gè)英文句子,MGMT 生成了句子、短語、單詞3 個(gè)粒度上共3 000 個(gè)替換語句,輸入神經(jīng)機(jī)器翻譯系統(tǒng)得到4 000 個(gè)目標(biāo)語言翻譯結(jié)果,并根據(jù)源語句和翻譯結(jié)果進(jìn)行相似度計(jì)算和蛻變關(guān)系判定.我們用蛻變關(guān)系滿足率作為系統(tǒng)翻譯魯棒性的量化指標(biāo).對(duì)于每個(gè)測試樣本,MGMT 會(huì)基于第3.2 節(jié)中定義的3 個(gè)蛻變關(guān)系進(jìn)行句子、短語、單詞粒度上的蛻變測試.當(dāng)測試樣本滿足某個(gè)粒度的蛻變關(guān)系時(shí),該粒度下的蛻變關(guān)系滿足率記為1,否則,記為0.測試樣本違背某個(gè)粒度的蛻變關(guān)系,說明神經(jīng)機(jī)器翻譯系統(tǒng)對(duì)于測試樣本在該粒度上的翻譯魯棒性較差.我們用各神經(jīng)機(jī)器翻譯系統(tǒng)在3 個(gè)粒度上的平均蛻變關(guān)系滿足率作為最終的系統(tǒng)質(zhì)量評(píng)估分?jǐn)?shù),分?jǐn)?shù)越高,說明該系統(tǒng)的整體翻譯魯棒性越好.
表1 展示了基于MGMT 框架對(duì)6 個(gè)神經(jīng)機(jī)器翻譯系統(tǒng)(阿里翻譯、百度翻譯、必應(yīng)翻譯、谷歌翻譯、騰訊翻譯、搜狗翻譯)在5 個(gè)領(lǐng)域(教育、微博、新聞、口語、字幕)的中英文翻譯數(shù)據(jù)集上測得的翻譯魯棒性分?jǐn)?shù).表中加粗?jǐn)?shù)據(jù)代表同一領(lǐng)域不同神經(jīng)機(jī)器翻譯系統(tǒng)的最高質(zhì)量分?jǐn)?shù)或同一神經(jīng)機(jī)器翻譯系統(tǒng)在不同領(lǐng)域中的最高質(zhì)量分?jǐn)?shù).根據(jù)表1,可以分析得到以下結(jié)論.
(1) 各神經(jīng)機(jī)器翻譯系統(tǒng)存在魯棒性差異.阿里翻譯系統(tǒng)在微博、新聞和字幕3 個(gè)領(lǐng)域數(shù)據(jù)集中的質(zhì)量分?jǐn)?shù)都排名第1,在口語和教育領(lǐng)域排名第2,總體魯棒性最好.必應(yīng)翻譯和谷歌翻譯在5 個(gè)領(lǐng)域數(shù)據(jù)集上的排名都在第5 位和第6 位,與其他神經(jīng)機(jī)器翻譯系統(tǒng)在質(zhì)量上有顯著差異,總體魯棒性最差.百度翻譯、騰訊翻譯、搜狗翻譯在各領(lǐng)域的魯棒性差異不大.
(2) 不同領(lǐng)域數(shù)據(jù)上系統(tǒng)魯棒性存在差異.在微博領(lǐng)域,各神經(jīng)機(jī)器翻譯系統(tǒng)表現(xiàn)出的魯棒性最好,平均質(zhì)量分?jǐn)?shù)在5 個(gè)領(lǐng)域中最高.而在新聞?lì)I(lǐng)域的質(zhì)量分?jǐn)?shù)較低,質(zhì)量分?jǐn)?shù)平均值沒有超過40,說明各神經(jīng)機(jī)器翻譯系統(tǒng)在新聞?lì)I(lǐng)域的魯棒性較差.
綜合各領(lǐng)域數(shù)據(jù)集上的評(píng)估結(jié)果,可以得出在MGMT 方法下各神經(jīng)機(jī)器翻譯系統(tǒng)翻譯魯棒性排名如下:
以上的實(shí)驗(yàn)結(jié)果和結(jié)論可以回答問題1,說明本文提出的評(píng)估框架MGMT 無需參考譯文即可對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行魯棒性評(píng)估.
4.2.2 針對(duì)問題2的結(jié)果分析
針對(duì)問題2,本文使用實(shí)驗(yàn)數(shù)據(jù)集中的5 000 個(gè)中文句子作為參考譯文,以BLEU[15]、METEOR[16]、WER[17]作為相似度度量指標(biāo),計(jì)算各神經(jīng)機(jī)器翻譯系統(tǒng)的質(zhì)量分?jǐn)?shù).另外,BLEU、METEOR 數(shù)值與句子的翻譯質(zhì)量成正比,而WER 值與翻譯質(zhì)量成反比,因此,為了直觀比較實(shí)驗(yàn)數(shù)據(jù),實(shí)驗(yàn)中用于比較的WER 數(shù)值為實(shí)際WER 數(shù)值的補(bǔ)數(shù).
為了進(jìn)一步證明MGMT 評(píng)估結(jié)果的合理性,本文對(duì)每個(gè)源語句的評(píng)估結(jié)果進(jìn)行了更加具體的統(tǒng)計(jì).在MGMT 實(shí)驗(yàn)中,對(duì)每個(gè)源語言句子進(jìn)行句子、短語和單詞3 個(gè)粒度上的蛻變測試,并根據(jù)相似度計(jì)算結(jié)果判定是否滿足3 個(gè)粒度的蛻變關(guān)系.為了分析句子層面的評(píng)估結(jié)果,本文將每個(gè)句子的蛻變關(guān)系滿足率分為4 個(gè)等級(jí).0 代表該句子的翻譯結(jié)果無法滿足任何粒度的蛻變關(guān)系,1/3 代表滿足1 個(gè)粒度的蛻變關(guān)系,2/3 代表滿足2個(gè)粒度的蛻變關(guān)系,1 代表滿足所有粒度的蛻變關(guān)系.據(jù)此將所有句子按評(píng)估結(jié)果的蛻變關(guān)系滿足率等級(jí)分為4組,并計(jì)算每組句子基于參考譯文的BLEU、METEOR、WER 數(shù)值,與蛻變關(guān)系滿足等級(jí)進(jìn)行比較.比較結(jié)果見表2.由表2 所示數(shù)據(jù)可知,在教育、微博、新聞、口語、字幕這5 個(gè)領(lǐng)域的數(shù)據(jù)集上,中英文句子對(duì)的平均BLEU、METEOR、WER 數(shù)值是隨著句子的蛻變關(guān)系滿足率等級(jí)的提升而逐級(jí)提高的.也就是說,對(duì)于一個(gè)源語句,在MGMT 下測得的蛻變關(guān)系滿足率和基于句子參考譯文計(jì)算出來的BLEU、WER、METEOR 數(shù)值呈正相關(guān)性.真實(shí)翻譯分?jǐn)?shù)越低的句子對(duì),在MGMT 下測得的蛻變關(guān)系滿足率也就越低.相關(guān)工作——SIT[25]和TransRepair[29]利用蛻變測試來發(fā)現(xiàn)翻譯錯(cuò)誤,而MGMT 除了衡量神經(jīng)機(jī)器翻譯系統(tǒng)的整體魯棒性之外,也可用于發(fā)現(xiàn)翻譯錯(cuò)誤的樣本.在實(shí)際操作中可以根據(jù)樣本的蛻變關(guān)系滿足率來加以判斷,一個(gè)樣本的蛻變關(guān)系滿足率越低,那么它是一個(gè)翻譯錯(cuò)誤的可能性就越大(由于實(shí)驗(yàn)數(shù)據(jù)集過大,我們將在下一步工作中采用人工驗(yàn)證的方式對(duì)上述操作的可行性進(jìn)行驗(yàn)證).
Table 1 Quality evaluation results of multi-granularity metamorphic testing framework表1 多粒度測試框架質(zhì)量評(píng)估結(jié)果
Table 2 Comparison of evaluation results base on reference translations and evaluation results based on MGMT (group by satisfaction rate of metamorphic relationships)表2 MGMT 評(píng)估結(jié)果(按蛻變關(guān)系滿足率分組)與基于參考譯文的評(píng)估結(jié)果比較
綜上所述,MGMT 的評(píng)估結(jié)果與基于參考譯文的BLEU、METEOR、WER 的評(píng)估結(jié)果相似度較高,可以證明,MGMT 對(duì)各神經(jīng)機(jī)器翻譯系統(tǒng)的評(píng)估結(jié)果具有合理性和說服力.
4.2.3 針對(duì)問題3的結(jié)果分析
針對(duì)問題3,本文用評(píng)測指標(biāo)PC 和SRC,將基于蛻變測試的方法RTT[22]、MCMT[23]、MGMT 與基于參考譯文的基準(zhǔn)指標(biāo)BLEU[15]、METEOR[16]、WER[17]進(jìn)行比較.PC 和SRC 衡量的是兩組數(shù)據(jù)在變化方向和數(shù)據(jù)排名上的相關(guān)度,取值均在–1 到1 之間,–1 代表完全負(fù)相關(guān),1 代表完全正相關(guān).實(shí)驗(yàn)中的PC 值和SRC 值通過Python 語言的Scipy[34]包進(jìn)行計(jì)算.
在進(jìn)行RTT 實(shí)驗(yàn)時(shí),本文完全參照Milam 等人[22]的方法,先經(jīng)過FT(forward translation)得到目標(biāo)語言翻譯結(jié)果,再將目標(biāo)語言翻譯結(jié)果通過BT(backward translation)得到源語言翻譯結(jié)果,最后用BLEU 指標(biāo)計(jì)算源語言翻譯結(jié)果與源語句的相似度,并以此作為各神經(jīng)機(jī)器翻譯系統(tǒng)的質(zhì)量分?jǐn)?shù).在進(jìn)行MCMT 實(shí)驗(yàn)時(shí),我們在Daniel[23]等人方法的基礎(chǔ)上進(jìn)行了微小變動(dòng).原方法中MCMT 在7 種語言(法語、日語、韓語、西班牙語、俄語、葡萄牙語、瑞典語)中隨機(jī)選一個(gè)作為中間語言,但本文實(shí)驗(yàn)中并不是所有神經(jīng)機(jī)器翻譯系統(tǒng)都支持瑞典語的翻譯,所以在本文復(fù)現(xiàn)的MCMT 實(shí)驗(yàn)中,中間語言選擇范圍調(diào)整為6 種語言(法語、日語、韓語、西班牙語、俄語、葡萄牙語).
我們將基于蛻變測試的RTT、MCMT、MGMT 這3 種方法測得的質(zhì)量分?jǐn)?shù)與第4.2.2 節(jié)中實(shí)驗(yàn)得到的基于參考譯文的BLEU、METEOR、WER 數(shù)值按照神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行分組,每組數(shù)據(jù)包含該神經(jīng)機(jī)器翻譯系統(tǒng)在5 個(gè)領(lǐng)域上測得的質(zhì)量分?jǐn)?shù).之后我們計(jì)算基于蛻變測試方法的每一組數(shù)據(jù)與基于參考譯文的質(zhì)量分?jǐn)?shù)的PC 值和SRC 值.PC 值、SRC 值及相應(yīng)的p值(p-value)的計(jì)算結(jié)果見表3 和表4.
Table 3 Similarity comparision of evaluation results based on metamorphic testing and reference translations (PC)表3 基于蛻變測試與基于參考譯文的實(shí)驗(yàn)結(jié)果相似度比較(PC)
Table 4 Similarity comparision of evaluation results based on metamorphic testing and reference translations (SRC)表4 基于蛻變測試與基于參考譯文的實(shí)驗(yàn)結(jié)果相似度比較(SRC)
PC 指標(biāo)反映的是兩組實(shí)驗(yàn)結(jié)果在數(shù)據(jù)變化方向上的相關(guān)程度.從表3 可以看出,在BLEU、METEOR 和WER 這3 個(gè)基準(zhǔn)指標(biāo)上,MGMT 的PC 值在各領(lǐng)域都顯著高于RTT 和MCMT.MGMT 與BLEU 指標(biāo)平均相關(guān)系數(shù)為0.85,p值為0.05;與METEOR 和WER 指標(biāo)的相關(guān)系數(shù)平均值為0.85,p值為0.05.從各領(lǐng)域平均值來看,MGMT 與3 個(gè)基準(zhǔn)指標(biāo)的PC 值都顯著高于RTT 和MCMT(比RTT 高約83%,比MCMT 高約130%),且p值較低,說明PC 值較為可信.以上數(shù)據(jù)說明,MGMT 的實(shí)驗(yàn)結(jié)果在數(shù)據(jù)變化方向上與3 個(gè)基準(zhǔn)指標(biāo)的相關(guān)性更高,更接近基于參考譯文的方法.
SRC 指標(biāo)反映的是兩組實(shí)驗(yàn)結(jié)果數(shù)值在數(shù)據(jù)集中排名的相關(guān)程度.從表4 可以看出,在基準(zhǔn)指標(biāo)BLEU 和WER 上,MGMT 的SRC 值在教育、新聞、口語3 個(gè)領(lǐng)域上最高,在微博領(lǐng)域上低于RTT,在字幕領(lǐng)域上低于MCMT.在基準(zhǔn)指標(biāo)METEOR 上,MGMT 的SRC 值在5 個(gè)領(lǐng)域都達(dá)到最高.從各領(lǐng)域平均值來看,MGMT 與3個(gè)基準(zhǔn)指標(biāo)的SRC 值都略高于RTT(高約20%),顯著高于MCMT(高約100%),說明MGMT 的實(shí)驗(yàn)結(jié)果在數(shù)據(jù)排名相關(guān)性上更接近基于參考譯文的方法.
綜上所述,MGMT 與RTT、MCMT 相比,在兩個(gè)相關(guān)系數(shù)PC 和SRC 上都更高.從PC 值來看,MGMT 在5個(gè)領(lǐng)域數(shù)據(jù)集上的PC 值都顯著高于RTT 和MCMT,從SRC 值來看,MGMT 在微博領(lǐng)域低于RTT,在字幕領(lǐng)域低于MCMT,但5 個(gè)領(lǐng)域上的平均SRC 值為最高.說明無論從數(shù)值角度還是將數(shù)值轉(zhuǎn)化為排名后比較各神經(jīng)機(jī)器翻譯系統(tǒng)的質(zhì)量,MGMT 的評(píng)估結(jié)果都更接近基于參考譯文的方法,評(píng)估準(zhǔn)確度比RTT 和MCMT 更高.
4.3.1 蛻變粒度之間的關(guān)系
首先我們對(duì)蛻變粒度之間是否存在相關(guān)性進(jìn)行研究.從表5 可以看出,子粒度與單詞粒度和短語粒度的SRC 值都很低,分別為0.027 和0.041,說明句子粒度的判定結(jié)果與短語、單詞粒度都不具有相關(guān)性.而短語粒度和單詞粒度的SRC 值為0.274,說明這兩個(gè)粒度的判定結(jié)果具有一定的相關(guān)性.短語粒度和單詞粒度具有相關(guān)性是由于短語粒度和單詞粒度都基于依存句法分析樹和BERT 模型進(jìn)行蛻變測試.而句子粒度的蛻變測試流程相對(duì)獨(dú)立.
在第4.2 節(jié)中,我們證明了MGMT 方法能夠在沒有參考譯文的情況下對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行質(zhì)量評(píng)估,且優(yōu)于同類型的RTT 和MCMT 方法.MGMT 方法的關(guān)鍵在于單詞、短語和句子3 個(gè)粒度的蛻變關(guān)系.為了探究哪個(gè)粒度的判定結(jié)果更具重要性,我們進(jìn)行了消融實(shí)驗(yàn).首先將句子根據(jù)滿足的蛻變關(guān)系進(jìn)行分類,計(jì)算出每一組句子的真實(shí)BLEU、METEOR、WER 值,并采用控制變量的方式進(jìn)行比較.如表6 所示,不滿足任何一個(gè)蛻變關(guān)系的句子的平均BLEU 值為0.178 9,而只滿足單詞粒度蛻變關(guān)系的句子的平均BLEU 值為0.190 7,相對(duì)質(zhì)量分?jǐn)?shù)提升了0.011 8,看作單詞粒度對(duì)真實(shí)質(zhì)量分?jǐn)?shù)的貢獻(xiàn)值.在BLEU、METEOR 和WER 這3 個(gè)基準(zhǔn)指標(biāo)上,句子粒度帶來的平均增加值分別為0.118 3、0.150 4、0.196 7,都遠(yuǎn)大于單詞粒度(0.014 8、0.017 8、0.020 2)和短語粒度(0.023 6、0.026 2、0.033),說明與單詞粒度和短語粒度的蛻變測試相比,句子粒度蛻變測試對(duì)句子真實(shí)翻譯質(zhì)量的影響更大.我們由此得出結(jié)論:在對(duì)真實(shí)質(zhì)量分?jǐn)?shù)的影響程度上,句子粒度的蛻變測試最高,其次是短語粒度,最后是單詞粒度.
4.3.2 MGMT準(zhǔn)確性原理分析
由第4.2.2 節(jié)和第4.2.3 節(jié)我們得出結(jié)論:用MGMT 測量神經(jīng)機(jī)器翻譯系統(tǒng)魯棒性具有一定的合理性和說服力,MGMT 與基于參考譯文的方法正相關(guān)性較高,且顯著優(yōu)于同類型的RTT 和MCMT 方法.我們嘗試分析其中的原因.首先,RTT 中涉及了一次正譯和一次回譯,正議和回譯是獨(dú)立的兩個(gè)翻譯過程(可以看作兩個(gè)獨(dú)立的神經(jīng)機(jī)器翻譯系統(tǒng)).回譯過程可能影響機(jī)器翻譯系統(tǒng)質(zhì)量的測定;在MGMT 的句子粒度蛻變關(guān)系中也涉及回譯,為了降低回譯過程中的翻譯錯(cuò)誤對(duì)整體魯棒性測量帶來的影響,我們設(shè)計(jì)了基于相對(duì)相似度的蛻變關(guān)系:當(dāng)回譯質(zhì)量過低時(shí),正譯的質(zhì)量分?jǐn)?shù)應(yīng)該得到一定的補(bǔ)償.而MCMT 通過中間語言來構(gòu)造蛻變關(guān)系,但不同語言間的翻譯差距也會(huì)影響機(jī)器翻譯系統(tǒng)質(zhì)量的測定.MGMT 方法在句子粒度蛻變關(guān)系設(shè)計(jì)過程中對(duì)非正譯過程的影響進(jìn)行了補(bǔ)償處理,并結(jié)合單詞粒度和短語粒度進(jìn)一步提高了評(píng)估準(zhǔn)確性,因此優(yōu)于RTT 和MCMT.
Table 5 Comparison of the results of different metamorphic relationships表5 不同蛻變關(guān)系判定結(jié)果相關(guān)性比較
Table 6 The contribution of different transformation relations to the quality of authentic translation表6 不同蛻變關(guān)系對(duì)真實(shí)翻譯質(zhì)量的貢獻(xiàn)值
本節(jié)我們來分析有可能影響實(shí)驗(yàn)有效性的影響因素.
(1) 內(nèi)部有效性主要涉及影響實(shí)驗(yàn)結(jié)果正確性的內(nèi)部因素.本文中的內(nèi)部有效性影響因素是句法分析器的性能.我們使用的英文和中文句法分析器是BerkeleyParser,該句法分析器在WSJ 測試集上的F1 值可達(dá)95.17,在CTB5.1 測試集上的F1 值可達(dá)91.69.可以將因句法分析錯(cuò)誤導(dǎo)致的實(shí)驗(yàn)影響降到最小.
(2) 外部有效性主要涉及實(shí)驗(yàn)結(jié)果是否具有一般性.本文選擇了機(jī)器翻譯常用的一個(gè)公開中英文數(shù)據(jù)集UM-corpus,并選取了其5 個(gè)領(lǐng)域(包括教育、微博、新聞、口語和字幕)的翻譯數(shù)據(jù),翻譯數(shù)據(jù)覆蓋的領(lǐng)域較為全面,具有代表性.因此,基于該數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果也具有可靠性和代表性.
(3) 結(jié)論有效性主要涉及評(píng)測指標(biāo)的選擇是否合理.本文為了評(píng)估基于蛻變測試和基于參考譯文的實(shí)驗(yàn)結(jié)果的相似度,選擇了兩個(gè)相關(guān)系數(shù)指標(biāo)——PC 和SRC.PC 計(jì)算的是兩組實(shí)驗(yàn)結(jié)果在數(shù)據(jù)變化方向上的相似度,SRC 計(jì)算的是數(shù)據(jù)排名的相似度.由于基于蛻變測試和基于參考譯文的質(zhì)量分?jǐn)?shù)計(jì)算方法量綱上不同,基于絕對(duì)數(shù)值的比較不具備意義,因此,使用PC 和SRC 作為評(píng)測指標(biāo)可以保證評(píng)估的合理性.另一個(gè)影響因素是文本相似度度量指標(biāo)的選擇是否合理.在實(shí)驗(yàn)中我們選擇了BLEU、METEOR、WER 作為文本相似度度量指標(biāo),這3 個(gè)度量指標(biāo)都被廣泛使用且評(píng)估原理不同(BLEU 側(cè)重精確率,METEOR 側(cè)重召回率,WER 基于編輯距離),因此可以保證文本相似度度量的合理性.最后,在句子粒度蛻變關(guān)系(見3.2.1 節(jié))定義中涉及到了不同語言的相似度比較.相似度分布可能因不同的語言特性產(chǎn)生差異,這種差異無法避免.因此,我們對(duì)同一語言使用相同的分詞工具,再將分詞后的句子對(duì)基于編輯距離計(jì)算相似度,從而能夠有效降低相似度分布差異對(duì)實(shí)驗(yàn)帶來的影響.
基于神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的神經(jīng)機(jī)器翻譯系統(tǒng)應(yīng)用廣泛,許多翻譯服務(wù)提供商的翻譯服務(wù)都基于神經(jīng)機(jī)器翻譯系統(tǒng),對(duì)其所進(jìn)行的測試和質(zhì)量評(píng)估也具有較高的研究和現(xiàn)實(shí)意義.本文提出了一個(gè)多粒度的蛻變測試框架MGMT.該測試框架能夠在沒有參考譯文的情況下對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行質(zhì)量評(píng)估.MGMT 首次使用了多粒度的蛻變關(guān)系對(duì)神經(jīng)機(jī)器翻譯系統(tǒng)進(jìn)行整體性的翻譯魯棒性評(píng)估.從實(shí)驗(yàn)結(jié)果來看,MGMT 與已有的同類型方法相比,與基于參考譯文的BLEU、METEOR、WER 評(píng)估結(jié)果都更接近,評(píng)估準(zhǔn)確度更高.
未來工作可以基于如下3 個(gè)方面展開.首先,研究人員可以繼續(xù)改進(jìn)和優(yōu)化本測試框架中的各個(gè)流程以達(dá)到更合理的質(zhì)量評(píng)估效果,例如在替換階段可以針對(duì)替換模型的缺陷設(shè)計(jì)有針對(duì)性地替換約束.其次,研究人員可以更改MGMT 的部分設(shè)計(jì),將其與錯(cuò)誤定位任務(wù)結(jié)合起來,用于自動(dòng)判定神經(jīng)機(jī)器翻譯系統(tǒng)的翻譯錯(cuò)誤.最后,我們將對(duì)本文中的實(shí)驗(yàn)數(shù)據(jù)和結(jié)果進(jìn)行清理并共享,以方便研究人員針對(duì)翻譯系統(tǒng)的魯棒性展開后續(xù)研究.