韓 雪 王章輝 張涵婷
(遼寧大學(xué)信息學(xué)院 沈陽 110036)
隨著新時代信息技術(shù)的日趨成熟,傳統(tǒng)人工翻譯逐漸被網(wǎng)絡(luò)文本翻譯所取代。與傳統(tǒng)人工翻譯相比,該種方式除了減少人力資源的消耗,同時減少時間的占用比重,真正做到解放無用人力消耗。但新事物的誕生及推廣需大量時間與實驗去驗證,在經(jīng)歷曲折的六十年后,機器翻譯才有了質(zhì)的飛躍。
機器翻譯共經(jīng)歷四個發(fā)展階段,第一階段為基于規(guī)則的方法[1]。該方法利用人類專家的翻譯知識書寫規(guī)則,將詞與成分的翻譯、句子出現(xiàn)的位置都用規(guī)則表示。其優(yōu)點在于語言學(xué)專家所儲備的知識準(zhǔn)確率較高,但存在開發(fā)周期長、成本過高之外、面臨規(guī)則沖突等問題,1981年Makoto Nagao提出基于實例的方法實現(xiàn)機器翻譯,在此之后Sato等進行推廣[2]。
第二階段為基于實例的機器翻譯。它是利用所收集到的雙語料庫中找到與源語句相似度最高的翻譯示例,然后調(diào)整示例所對應(yīng)的目標(biāo)語句實現(xiàn)翻譯。但第二階段的翻譯方法具有局限性,原因在于源語句在尋找實例的過程中無法保證完全覆蓋,機器翻譯進入第三發(fā)展階段。
第三階段為基于統(tǒng)計的機器翻譯,由Peter F.Brown最先提出[3]。統(tǒng)計機器翻譯系統(tǒng)是對機器翻譯進行數(shù)學(xué)建模計算概率,概率越大,源語句尋找目標(biāo)語句的準(zhǔn)確度越高,因此需利用大數(shù)據(jù)進行訓(xùn)練。與基于規(guī)則和實例的翻譯相比其成本較低之外,目標(biāo)語句解決漏譯問題。但統(tǒng)計機器翻譯又稱為基于數(shù)據(jù)庫的方法,因此極其依賴數(shù)據(jù)庫導(dǎo)致數(shù)據(jù)稀疏的產(chǎn)生。
第四節(jié)階段為基于神經(jīng)網(wǎng)絡(luò)的機器翻譯。神經(jīng)網(wǎng)絡(luò)機器翻譯(Neural Machine Translation,NMT)包含encoder to decoder模型,該構(gòu)造為一個或多個編碼器與一個或多個解碼器。編碼器將輸入層中源語句經(jīng)過一系列神經(jīng)網(wǎng)絡(luò)變換,用一個高維向量轉(zhuǎn)遞給解碼器;解碼器通過解碼將高維向量再重新翻譯成目標(biāo)語句。數(shù)據(jù)稀疏問題可通過基于神經(jīng)網(wǎng)絡(luò)的機器翻譯得到緩解,但如需進一步改善,可通過基于命名實體識別的算法等解決。
2013年,由于Kalchbrenner與Blunsoml對神經(jīng)網(wǎng)絡(luò)機器翻譯的重新提出,使科學(xué)家將目光聚集于該方法的研究中。隨后Sutskever、Cho、Jean等分別實現(xiàn)的完全基于神經(jīng)網(wǎng)絡(luò)的機器翻譯模型,展現(xiàn)出了巨大的應(yīng)用潛力[4]。如今,隨著NMT模型的優(yōu)化改進,神經(jīng)網(wǎng)絡(luò)翻譯系統(tǒng)在大部分語言上超過以往機器翻譯模型,成為最有潛力的翻譯方法。
基于神經(jīng)網(wǎng)絡(luò)的機器翻譯模型種類繁多,根據(jù)拓?fù)淇煞譃榍梆伾窠?jīng)[5]、卷積神經(jīng)[6]、循環(huán)神經(jīng)網(wǎng)絡(luò)[7]等,并各自在機器翻譯上獲得較好的效果。然而機器翻譯系統(tǒng)仍面臨著諸多問題,人們對翻譯需求的提高迫使翻譯性能需進一步改進,機器翻譯面臨新的瓶頸。
1)譯文選擇。翻譯句子時會面臨多選詞問題,這是由于語言中一詞多義的現(xiàn)象。如圖1源語句中的[是]既可以翻譯成[am]、又可以翻譯成[is]和[are],如果忽略主語[我],[是]所對應(yīng)的目標(biāo)詞都可以選擇。而在該例句中,只有機器翻譯模型將主語和謂語建立聯(lián)系,才能做出正確的選擇。譯文選擇是基于神經(jīng)網(wǎng)絡(luò)的翻譯所解決的第一個挑戰(zhàn)。
圖1 源語句與目標(biāo)語句
2)可解釋性。在文本翻譯中,盡管可以調(diào)整或優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)來提高系統(tǒng)質(zhì)量,但可解釋性無法改善。可解釋性是指驗證機器翻譯是否有一定依據(jù)來解釋其正確性,例如[我是中國人]和[I am Chinese],通過某種方式確定[我-I]、[是-am]、[中國人-Chinese]相互對應(yīng),而如何確定相互對應(yīng)的方式是解決可解釋性的關(guān)鍵。
3)引入知識。引入知識是為了如何將外來知識引入模型中訓(xùn)練。機器翻譯依靠大量數(shù)據(jù)庫去深度學(xué)習(xí),對于生僻單詞或最新提出的詞組會無法給出其對應(yīng)的解釋,這就需要外引“詞典”去加強數(shù)據(jù)庫深度學(xué)習(xí),這是基于神經(jīng)網(wǎng)絡(luò)的翻譯所解決的第三個挑戰(zhàn)。
4)語篇翻譯。大部分機器翻譯將句子為單位進入輸出層,這種結(jié)構(gòu)對于整篇文章翻譯,缺乏句子之間連貫性,影響詞元素特征信息以及段落層次結(jié)構(gòu)信息,語篇翻譯有待于解決。
機器翻譯發(fā)展歷程與所面臨的挑戰(zhàn)使模型需加以改進。因此提出一種新型基于注意力引導(dǎo)圖卷積網(wǎng)絡(luò)的機器翻譯優(yōu)化模型,該模型通過注意引導(dǎo)層、密集連接層和線性組合層改善基于神經(jīng)網(wǎng)絡(luò)的翻譯所遇到的譯文選擇、可解釋性、數(shù)據(jù)稀疏與語篇翻譯問題。
注意力引導(dǎo)圖卷積網(wǎng)絡(luò)模型融合注意力機制模型與圖卷積神經(jīng)網(wǎng)絡(luò)模型的優(yōu)點,而注意力機制(Attention Model,AM)[8]與圖卷積神經(jīng)網(wǎng)絡(luò)(Graph Convolutional Network,GCN)[9]各自針對上述挑戰(zhàn)有所改善。注意力機制是在經(jīng)歷過循環(huán)神經(jīng)網(wǎng)絡(luò)模型、長短記憶神經(jīng)網(wǎng)絡(luò)的改進,針對在實際翻譯中元素所對應(yīng)的語義編碼的不一致性,將元素按重要程度合并,且利用概率分布值表示重要程度的一種模型。該模型的概率分布值可以解決譯文選擇問題,除此之外特有的對齊機制體現(xiàn)可解釋性。
圖卷積神經(jīng)網(wǎng)絡(luò)可解決語篇翻譯問題。圖卷積神經(jīng)網(wǎng)絡(luò)是基于卷積神經(jīng)網(wǎng)絡(luò)所優(yōu)化改進的具有圖結(jié)構(gòu)數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)模型,而二者在機器翻譯中文本輸入有較大區(qū)別。卷積神經(jīng)網(wǎng)絡(luò)主要有輸入層、卷積層、池化層與全連接層,輸入層以句子為單位嵌入,即以N個單詞所構(gòu)成的詞向量矩陣X嵌入(維度N×d,d為詞向量維度),卷積神經(jīng)網(wǎng)絡(luò)輸入層的結(jié)構(gòu)如圖2所示。
圖2 卷積神經(jīng)網(wǎng)絡(luò)輸入層
圖卷積神經(jīng)網(wǎng)絡(luò)包含兩個矩陣,設(shè)每個單詞代表一個節(jié)點,則X矩陣包含所有節(jié)點的特征(維度N×d,N為節(jié)點個數(shù),d為節(jié)點特征數(shù)量),A矩陣表示各個節(jié)點之間的關(guān)系(維度N×N),X與A組成模型的輸入。圖卷積神經(jīng)網(wǎng)絡(luò)輸入如圖3所示。
圖3 圖卷積神經(jīng)網(wǎng)絡(luò)輸入
兩者對比可看出圖卷積神經(jīng)網(wǎng)絡(luò)不僅僅保留各節(jié)點所具有的特征,還保留了節(jié)點與節(jié)點之間所具有的關(guān)系。除此之外,注意力機制受時間的影響,將圖卷積神經(jīng)網(wǎng)絡(luò)與注意力機制結(jié)合,削弱對段落層次結(jié)構(gòu)信息的破壞,進而改善語篇翻譯問題。
注意力引導(dǎo)圖卷積網(wǎng)絡(luò)模型(Attention-guided Graph Convolutional Network,AGGCN)基于GCN模型架構(gòu),在處理圖結(jié)構(gòu)數(shù)據(jù)時保留其優(yōu)點之外,添加了注意力機制獨有的權(quán)重參數(shù),進一步優(yōu)化神經(jīng)機器翻譯模型。
從上文可知,注意力機制模型的編碼器—解碼器(Encoder to decoder)[10]框架一般以模塊重復(fù)且為單層的RNN為基礎(chǔ),它的優(yōu)點在于按照時間序列所受到的影響,模擬出人工翻譯順序,encoder中RNN結(jié)構(gòu)如圖4表示。
圖4 標(biāo)準(zhǔn)循環(huán)神經(jīng)網(wǎng)絡(luò)
在上述圖中體現(xiàn)出RNN的特點,但同時暴露出無法有效利用歷史信息的缺陷,而長短記憶神經(jīng)網(wǎng)絡(luò)(Long-Short Term Memory RNN,LSTM)[11]是一種特殊的RNN,如圖5所示。
圖5 長短記憶神經(jīng)網(wǎng)絡(luò)
標(biāo)準(zhǔn)encoder to decoder模型的語義編碼C是LSTM最后一個時刻的隱層狀態(tài)cn。利用語義編碼和已生成序列y1,y2,y3…yt-1可預(yù)測下一個輸出單詞yt,即把目標(biāo)語句y={y1,y2,y3…yt-1}的聯(lián)合概率分解成基于時間序列的條件概率:
而每一個條件概率又可以寫成:
其中Ht是輸出RNN中的隱藏層,yt-1表示上個時刻的輸出。
注意力機制模型中encoder框架需要額外計算出每個單詞概率的分布值,第t時刻第i向量的權(quán)重可以表示為
hi為RNN模型中輸入隱藏層第i節(jié)點狀態(tài)值,Ht為t時刻輸出隱藏層狀態(tài)值。將第t時刻所有向量加權(quán)求和:
得到t時刻語義編碼Ct,利用Ht-1、yt-1和Ct最終求得t時刻目標(biāo)語句狀態(tài)值:
則decoder框架隨著Ct變化成:
最終通過計算得到目標(biāo)語句。
近些年注意力機制模型被廣泛應(yīng)用于機器翻譯,Cheng等提出使用聯(lián)合訓(xùn)練獲取注意力信息的雙向注意力模型[12];Tu等基于Coverage方法的注意力機制模型來解決機器翻譯中多翻譯和漏譯的問題[13];Vaswani等提出完全使用注意力機制實現(xiàn)機器翻譯[14]。但隨著對機器翻譯需求的提升,注意力機制并不能完全解決當(dāng)代翻譯所遇到的新挑戰(zhàn),而GCN主要消除輸入層對句序列的依賴,有效利用詞元素特征信息以及段落層次結(jié)構(gòu)信息進行翻譯。
從上述可得出,注意力機制和GCN各能解決部分神經(jīng)網(wǎng)絡(luò)機器翻譯未來所遇到的問題,那么將兩者融合是否可得到性能更優(yōu)越的模型。簡單地說,是否對句進行注意力機制處理擴展到對段落進行注意力機制處理,這就是AGGCN的提出。
AGGCN模型由多個相同的塊組成,而這些相同的塊包含三種類型的層:注意引導(dǎo)層、密集連接層和線性組合層,這三個層都是以GCN為架構(gòu)進行改進[15]。
注意引導(dǎo)層與多頭注意力機制密不可分,而多頭注意力機制是由多個自注意力連接所產(chǎn)生的。與注意力相比較,Q、K、V先進過線性變換,多次變換后再進行拼接,其中Q=Ht-1,K=V=hi,每一次線性變換重新算一次頭部且參數(shù)不共享,多頭注意力機制可以被注意力機制表示為
A?在GCN中代表各個節(jié)點之間關(guān)系與自身特征的矩陣,在注意力引導(dǎo)層中則由多頭注意力重新構(gòu)建,即:
密集連接層對應(yīng)GCN中層與層的傳播方式,引入注意力機制使模型受時間序列影響之外,任何一層引入直接連接到其前面的所有層。將h每一層特征處理得到:
每個層改為
而AGGCN模型只有一個線性組合層,以整合多個不同的密集連接層。
注意力引導(dǎo)圖卷積網(wǎng)絡(luò)模型保留了GCN與注意力機制優(yōu)點,從理論上改善基于神經(jīng)網(wǎng)絡(luò)的翻譯所遇到的譯文選擇、可解釋性、引入知識與語篇翻譯等問題。
由于RNN在文本處理上具有高精確性,使大部分神經(jīng)網(wǎng)絡(luò)機器翻譯的Encoder to decoder模型由此構(gòu)成,并成為最廣泛應(yīng)用于語言翻譯的技術(shù)。而CNN多用于圖像處理上,這是因為在處理信息中,RNN嚴(yán)格遵守序列順序。這雖符合人工翻譯流程,但一次只能處理一個單詞,因此在捕捉數(shù)據(jù)中的復(fù)雜關(guān)系時相對較弱,與CNN相比無法以分層的方式處理信息。若改進NMT需在Encoder to decoder編碼部分引入CNN進行優(yōu)化處理。
在前文中提及GCN是CNN的優(yōu)化模型,優(yōu)化點在于輸出層從以句中單詞所構(gòu)成的詞向量矩陣嵌入轉(zhuǎn)化為以所有節(jié)點的特征矩陣與各個節(jié)點間關(guān)系矩陣的輸入,加強了段落信息之間的聯(lián)系。而AGGCN在GCN基礎(chǔ)上添加多頭注意力機制,因此在該模型中,將傳統(tǒng)encoder的輸入層和隱藏層以注意引導(dǎo)層、密集連接層和線性組合層替換,從而達到模型的優(yōu)化。如圖6所示。
圖6 注意力引導(dǎo)圖卷積網(wǎng)絡(luò)模型概述圖
本文使用機器翻譯領(lǐng)域WMT21開源語料作為數(shù)據(jù)集,該數(shù)據(jù)集為刪除無效數(shù)據(jù)后進行數(shù)據(jù)擴增的新聞翻譯任務(wù)news-commentary-v16的中英平行語料。在對數(shù)據(jù)集的預(yù)處理中,由于中文語料的特殊性需進行分詞處理,利用三折交叉驗證最終得到訓(xùn)練集與驗證集NCV1&2&3。
該預(yù)處理與常規(guī)標(biāo)準(zhǔn)化處理方式相同,具體處理如表1所示。
表1 數(shù)據(jù)集與預(yù)處理
該實驗的硬件環(huán)境為Ubuntu20.04子系統(tǒng),以PyTorch框架上進行開發(fā)。具體超參數(shù)設(shè)置如表2所示,其中學(xué)習(xí)效率影響訓(xùn)練速度和損失;迭代次數(shù)與批量大小和每次迭代更新的網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)與所使用樣本量有關(guān);損失參數(shù)可改善泛化性;dropout率預(yù)防過擬合,該超參數(shù)設(shè)置可使翻譯效果達到較好狀態(tài)。
表2 超參數(shù)設(shè)置
BLEU(Bilingual Evaluation Understudy)[16]為常用機器翻譯效果的評估方法,主要用于測量目標(biāo)語句的精確度,數(shù)值越大代表效果優(yōu)越。該計算公式為
s是候選目標(biāo)語句的平均長度,r是最短目標(biāo)語句參考的長度。而Wm和log Pm中m指N-gram的n,N-gram模型是一種語言模型(Language Model,LM),即為基于概率的判別模型。當(dāng)源語句以序列輸入,輸出為源語句概率,那么這些單詞的聯(lián)合概率就可以得出,N-gram中的概率可以通過條件概率計算出。
通常N-gram模型中n=4,所以需分別對1-gram、2-gram、3-gram和4-gram進行計算,Wm則是針對不同N-gram的權(quán)重。而Pm是指任意每個候選詞出現(xiàn)頻數(shù)的最小值之和,除以候選譯文中每個詞出現(xiàn)頻數(shù)相加的值。
本文采用multi-bleu腳本評判AGGCN模型在機器翻譯上的效果進行驗證,結(jié)果如圖7與表2所示,基準(zhǔn)模型為decoder加入Attention機制的CNN模型。
圖7 注意力引導(dǎo)圖卷積網(wǎng)絡(luò)模型下BLEU值
由表3中AGGCN與CNN的BLEU值可以 看出,不同模型下中英雙料機器翻譯所對應(yīng)的BLEU值不盡相同。而在實際機器翻譯過程中,不同模型下目標(biāo)語句的精確度需實例分析。在表4對比中,CNN模型下的目標(biāo)語句基本實現(xiàn)了中英詞與詞之間正確選擇,避免漏譯與譯文選擇錯誤問題,同時也體現(xiàn)可解釋性。但AGGCN在此之外將句與句的連接性進行處理,可直觀體現(xiàn)出AGGCN模型的優(yōu)越。
表3 不同層數(shù)下AGGCN與CNN的BLEU值
表4 AGGCN與CNN的實例分析
本文所提出利用注意力引導(dǎo)圖卷積網(wǎng)絡(luò)的機器翻譯優(yōu)化模型,通過改進傳統(tǒng)編碼方式,結(jié)合圖卷積網(wǎng)絡(luò)與注意力機制優(yōu)點,從而提高神經(jīng)網(wǎng)絡(luò)機器翻譯的準(zhǔn)確度。
實驗證明,利用基于注意力引導(dǎo)圖卷積網(wǎng)絡(luò)模型不僅僅降維減少參數(shù),利用局部特征整合保留出整體特征之外,還利用賦值保留局部特征之間原有的強弱關(guān)聯(lián)。通過本文所提出利用注意力引導(dǎo)圖卷積網(wǎng)絡(luò)的機器翻譯優(yōu)化模型,在數(shù)據(jù)集上進行大量實驗,各指標(biāo)均達到較好的效果。即該算法在數(shù)據(jù)集上取得理想結(jié)果,優(yōu)于其他傳統(tǒng)算法。