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