宋愷濤,陸建峰
(南京理工大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,江蘇 南京 210094)
得益于序列化模型的快速發(fā)展,神經(jīng)機(jī)器翻譯(Neural Machine Translation, NMT)[1-3]在近年來(lái)見(jiàn)證了飛速的發(fā)展。循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)[4]最早被應(yīng)用于構(gòu)建神經(jīng)機(jī)器翻譯模型并取得顯著效果。然而循環(huán)神經(jīng)網(wǎng)絡(luò)必須依賴先前的隱狀態(tài),這樣的時(shí)序結(jié)構(gòu)導(dǎo)致循環(huán)神經(jīng)網(wǎng)絡(luò)不能夠支持序列并行計(jì)算。為了解決這類問(wèn)題,科學(xué)家們開(kāi)始研究神經(jīng)機(jī)器翻譯中的并行化結(jié)構(gòu)。這其中,一些工作嘗試應(yīng)用卷積神經(jīng)網(wǎng)絡(luò)[5](Convolutional Neural Network, CNN)到神經(jīng)機(jī)器翻譯中,并取得了不錯(cuò)的效果。
注意力機(jī)制是神經(jīng)機(jī)器翻譯中一個(gè)重要的組件。早期的注意力機(jī)制被用來(lái)構(gòu)建源語(yǔ)言端和目標(biāo)語(yǔ)言端的對(duì)齊模塊,用于指導(dǎo)目標(biāo)端的單詞應(yīng)當(dāng)被對(duì)齊到源語(yǔ)言端的哪個(gè)單詞。得益于注意力機(jī)制的成功,深度自注意力網(wǎng)絡(luò)(Transformer)[6]被提出用于解決機(jī)器翻譯問(wèn)題。深度自注意力網(wǎng)絡(luò)是由自注意力網(wǎng)絡(luò)(Self-Attention Network)完全構(gòu)成的編碼器-解碼器結(jié)構(gòu),其在編碼器端或者解碼器端采用一種多頭注意力機(jī)制來(lái)提取語(yǔ)義特征。除此之外,自注意力也能夠支持并行化計(jì)算,而且相比于循環(huán)神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò),由于自注意力網(wǎng)絡(luò)能夠捕獲到任意兩個(gè)單詞的關(guān)系,因此也具備了對(duì)長(zhǎng)依賴語(yǔ)義的建模能力。
然而,這種自注意力機(jī)制依然存在一些瓶頸。通常而言,注意力機(jī)制以加權(quán)的方式來(lái)計(jì)算每個(gè)位置之間的關(guān)系。這就導(dǎo)致了自注意力機(jī)制網(wǎng)絡(luò)缺少對(duì)時(shí)序信息的建模,而這個(gè)信息在序列建模中則非常重要。如圖1所示,單詞 “值” 在句子 “兩支筆值五元” 和 “五支筆值兩元” 中能夠收集到相同的信息,但是其收集的上下文語(yǔ)義卻并不相同。而卷積神經(jīng)網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò)通過(guò)線性變化建模則可以避免這個(gè)問(wèn)題,因此這也是深度自注意力網(wǎng)絡(luò)必須依賴位置編碼的原因。由此可見(jiàn),自注意力機(jī)制對(duì)位置編碼相當(dāng)敏感,而如何讓模型本身能夠直接具備感知位置的能力也成為大家關(guān)注的一個(gè)重點(diǎn)。在過(guò)去的工作中,Peter等人針對(duì)注意力機(jī)制中的絕對(duì)編碼表達(dá)位置能力不足的問(wèn)題[7],提出了相對(duì)位置編碼的方案,但依然不能增強(qiáng)注意力模塊自身對(duì)位置的編碼。Shen等人針對(duì)語(yǔ)言理解的任務(wù)設(shè)計(jì)了雙向注意力[8],但其每個(gè)分支都采用獨(dú)立參數(shù),使得模型過(guò)大,而且也不能獲取局部語(yǔ)義。
圖1 注意力機(jī)制在不同順序下的依賴捕獲
基于目前的研究現(xiàn)狀,本文希望自注意力機(jī)制能夠像卷積神經(jīng)網(wǎng)絡(luò)那樣捕獲局部語(yǔ)義信息或者像循環(huán)神經(jīng)網(wǎng)絡(luò)那樣捕獲前后向語(yǔ)義信息。例如,在圖1中,“兩”和“五”分別是“筆”和“元”的修飾符,但標(biāo)準(zhǔn)的自注意力網(wǎng)絡(luò)卻不能夠捕獲這種相對(duì)關(guān)系。因此,本文認(rèn)為,如果自注意力網(wǎng)絡(luò)能夠在提取出全局語(yǔ)義之外,還能夠提取和融合局部語(yǔ)義或者前后向語(yǔ)義,那么模型的性能也能夠得到提升。而且這種多層次的語(yǔ)義信息也能夠提供給模型一種多維度的理解。
為了解決上述問(wèn)題,本文提出了一種新型的自注意力結(jié)構(gòu)。該結(jié)構(gòu)能夠同時(shí)提取全局語(yǔ)義、局部語(yǔ)義以及前后向語(yǔ)義。每個(gè)語(yǔ)義信息,僅僅需要在自注意力機(jī)制的點(diǎn)積操作之后添加額外分支,并通過(guò)設(shè)計(jì)不同的注意力掩碼即可實(shí)現(xiàn),而我們也設(shè)計(jì)了一種壓縮門機(jī)制來(lái)融合不同的語(yǔ)義信息,并且不需要添加太多額外參數(shù)。該方法被命名為基于混合自注意力機(jī)制網(wǎng)絡(luò)(Hybrid Self-Attention Network)。上述方法在三個(gè)最常用的機(jī)器翻譯數(shù)據(jù)集上進(jìn)行了驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,我們的方法相對(duì)于經(jīng)典的Transformer模型能夠獲得顯著的性能提升。綜上所述,本文貢獻(xiàn)總結(jié)如下:
(1) 提出了一種新型的自注意力網(wǎng)絡(luò),能夠同時(shí)提取全局語(yǔ)義、局部語(yǔ)義和前后向語(yǔ)義信息;
(2) 通過(guò)詳細(xì)的消融實(shí)驗(yàn)分析各個(gè)模塊對(duì)位置信息建模的重要度;
(3) 實(shí)驗(yàn)結(jié)果表明,本文提出的模型能夠取得比多個(gè)基準(zhǔn)模型更好的翻譯性能,并且具有更好的感知位置的能力。
本節(jié)介紹本文所需要的相關(guān)知識(shí)。主要包括: ①基于編碼器-解碼器的神經(jīng)機(jī)器翻譯; ②深度自注意力網(wǎng)絡(luò)。
給定源語(yǔ)言端的輸入序列x={x1,…,xn},以及目標(biāo)語(yǔ)言端的輸入序列y={y1,…,ym},其中,xi和yj分別表示源語(yǔ)言端的第i個(gè)單詞和目標(biāo)語(yǔ)言端的第j個(gè)單詞,n和m分別表示序列x和y的長(zhǎng)度。神經(jīng)機(jī)器翻譯模型的主要目標(biāo)是最大化最大似然估計(jì)函數(shù)P(y|x)。其中,P(y|x)計(jì)算如式(1)所示。
(1)
其中,θ表示模型參數(shù),而生成下一個(gè)單詞yt的概率如式(2)所示。
P(yt|yt,x;θ)=exp{f(y (2) 其中,ct表示用于生成第t個(gè)單詞的特征向量,f(·)是解碼器的模型函數(shù)。在本文的方法中,f(·)指自注意力網(wǎng)絡(luò)。 注意力機(jī)制通常被用于計(jì)算源語(yǔ)言單詞和目標(biāo)端單詞的相似度。通常情況下,計(jì)算注意力機(jī)制的對(duì)齊系數(shù)有多個(gè)選擇,如點(diǎn)積、拼接等方式[9]?;谏疃茸宰⒁饬W(wǎng)絡(luò)的經(jīng)驗(yàn),本文也采用了點(diǎn)積的方式,其形式采用了查詢-鍵值(Query-Key-Value)的方式: Attention(q,k,v)=softmax(qkT)v (3) 其中,Attention(·,·,·)對(duì)應(yīng)注意力機(jī)制的函數(shù),q、k、v分別表示輸入的查詢、鍵、值。 深度自注意力網(wǎng)絡(luò)(Transformer)由自注意力網(wǎng)絡(luò)層搭建而成。其中,每一層由一個(gè)多頭注意力子網(wǎng)絡(luò)和一個(gè)前向反饋?zhàn)泳W(wǎng)絡(luò)組成。同時(shí),為了能夠支持深層網(wǎng)絡(luò),深度自注意力網(wǎng)絡(luò)同時(shí)還在每個(gè)子網(wǎng)絡(luò)后增加了層歸一化(Layer Normalization)[10]和殘差連接[11]。而為了能夠讓網(wǎng)絡(luò)具備識(shí)別位置信息的能力,深度自注意力網(wǎng)絡(luò)又在詞嵌入上添加了位置嵌入P={p1,…,pn} 。多頭注意力子網(wǎng)絡(luò)則構(gòu)建在尺度點(diǎn)積注意力機(jī)制上。每個(gè)多頭注意力由h個(gè)注意力頭構(gòu)成,且每個(gè)注意力頭都會(huì)接收一個(gè)對(duì)應(yīng)的查詢-鍵值輸入,并用式(3)來(lái)計(jì)算特征。最終,每個(gè)注意力頭輸出的特征會(huì)拼接起來(lái)作為下一層網(wǎng)絡(luò)的輸入,并用一個(gè)全連接層來(lái)融合特征。這樣的結(jié)構(gòu)能夠允許模型從不同的注意力頭中捕獲單獨(dú)的關(guān)系。除此之外,在解碼器端,還會(huì)添加前向掩碼來(lái)確保前面的單詞不會(huì)捕獲到后面單詞的語(yǔ)義信息。 而與多頭注意力子網(wǎng)絡(luò)相連的是前向反饋?zhàn)泳W(wǎng)絡(luò)。每個(gè)位置的特征都會(huì)經(jīng)過(guò)該子網(wǎng)絡(luò)來(lái)進(jìn)一步增強(qiáng)語(yǔ)義。該網(wǎng)絡(luò)由兩個(gè)全連接層構(gòu)成,中間用一個(gè)ReLU激活層[4]連接。其形式如式(4)所示。 FFN(x)=max(0,xW1+b1)W2+b2 (4) 其中,W1和W2是權(quán)重參數(shù),b1和b2是偏置參數(shù)。 自注意力網(wǎng)絡(luò)是一種可以從全局內(nèi)容中學(xué)習(xí)語(yǔ)義的模型結(jié)構(gòu)。在本文中,我們針對(duì)注意力網(wǎng)絡(luò)設(shè)計(jì)了兩種特別的注意力掩碼。每個(gè)注意力掩碼,都通過(guò)一個(gè)額外的分支來(lái)分別計(jì)算不同級(jí)別的語(yǔ)義特征,我們將這些分支網(wǎng)絡(luò)分別稱為“雙向自注意力”和“局部自注意力”,并采用了一種壓縮門機(jī)制來(lái)混合不同的分支網(wǎng)絡(luò)以構(gòu)成混合自注意力。圖2顯示了模型的結(jié)構(gòu),我們將每個(gè)分支的特征送入融合函數(shù)中做線性變化。多頭查詢、多頭鍵、多頭值分別表示多頭注意力機(jī)制的查詢、鍵、值。 圖2 多頭混合注意力機(jī)制網(wǎng)絡(luò)的結(jié)構(gòu) 雙向自注意力是一種用于捕獲方向信息和時(shí)序信息的掩碼注意力模塊。標(biāo)準(zhǔn)的自注意力網(wǎng)絡(luò)以點(diǎn)積的形式能夠?qū)W習(xí)到一個(gè)單詞到所有單詞的依賴。其中,點(diǎn)積計(jì)算出來(lái)的對(duì)齊系數(shù)是注意力機(jī)制中最為關(guān)鍵的部分,因?yàn)檫@個(gè)系數(shù)包含了任意兩個(gè)位置的關(guān)系。而我們注意到自注意力機(jī)制中的對(duì)齊矩陣是一個(gè)標(biāo)準(zhǔn)方陣,即行數(shù)和列數(shù)相等。因此,本文設(shè)計(jì)了一個(gè)掩碼矩陣來(lái)捕獲方向性依賴,如式(5)所示。 DiSAN(q,k,v)=Softmax(qkT+M)v (5) 其中,M在這里指前向掩碼Mfw或者后向掩碼Mbw,并采用DiSAN(·,·,·)來(lái)表示雙向自注意力的模型函數(shù)。其中前向掩碼Mfw定義如式(6)所示。 (6) 其中,-∞表示負(fù)無(wú)窮大。當(dāng)兩個(gè)位置之間的對(duì)齊系數(shù)等于負(fù)無(wú)窮大時(shí),就等價(jià)于沒(méi)有關(guān)聯(lián)。對(duì)于前向掩碼,我們?cè)试S位置i只能看到在其之前的位置j。而后向掩碼Mbw定義如式(7)所示。 (7) 后向掩碼用于控制單詞只能看到后面的位置,也就是位置i只能看到其后面的位置j。得益于這樣的設(shè)計(jì),雙向自注意力就能夠在不依賴位置編碼的情況下捕獲到時(shí)序的語(yǔ)義和更加深層的內(nèi)容特征。我們的雙向自注意力僅僅適用于編碼器端,因?yàn)榻獯a器本身已被限制為前向信息。 標(biāo)準(zhǔn)的自注意力通常著重于捕獲全局語(yǔ)義,而忽略了局部語(yǔ)義。在上節(jié)提到過(guò),注意力機(jī)制的對(duì)齊矩陣是一個(gè)標(biāo)準(zhǔn)的n×n關(guān)系矩陣。相比較于自注意力機(jī)制,卷積神經(jīng)網(wǎng)絡(luò)通常在一個(gè)局部窗口內(nèi)提取語(yǔ)義。受啟發(fā)于卷積神經(jīng)網(wǎng)絡(luò)的特性,我們?yōu)樽宰⒁饬C(jī)制設(shè)計(jì)了一個(gè)對(duì)稱矩陣來(lái)捕獲局部語(yǔ)義,其中k定義為局部自注意力的窗口半徑。與卷積神經(jīng)網(wǎng)絡(luò)相似,我們的局部自注意力機(jī)制也能通過(guò)一個(gè)窗口看到2k+1個(gè)元素。局部自注意力的具體定義如式(8)所示。 LSAN(q,k,v)=Softmax(qkT+M)v (8) 其中,掩碼M也分為針對(duì)編碼器的掩碼Me和解碼器的掩碼Md。其中用于編碼器的掩碼Me是: (9) 而解碼器端的掩碼Md是 (10) 其中,對(duì)于位置i的單詞,局部自注意力允許其在編碼器端可以看到兩邊距離不超過(guò)k的單詞。而在解碼器端只允許看到在位置i之前且距離不超過(guò)k的單詞。通過(guò)這樣的設(shè)計(jì),注意力機(jī)制也能捕獲到局部語(yǔ)義。在實(shí)驗(yàn)中,我們能夠從{1,2,5}中選出k的值進(jìn)行對(duì)比。 基于本文所設(shè)計(jì)的混合自注意力機(jī)制網(wǎng)絡(luò),我們可以得到全局語(yǔ)義、前向語(yǔ)義、后向語(yǔ)義以及局部語(yǔ)義等分支。為了能夠?qū)⑻崛〉奶卣饔糜谧詈蟮念A(yù)測(cè),還需要將各個(gè)分支的語(yǔ)義特征進(jìn)行融合。本文采用的融合方式如式(11)所示。 (11) 我們用Mi來(lái)表示不同分支網(wǎng)絡(luò)的掩碼矩陣,l表示分支數(shù)量,f(·)表示融合函數(shù)。為了能夠探索融合信息的方式,我們選擇了三種方式進(jìn)行研究,分別是相加、拼接以及門控相加。其數(shù)學(xué)表達(dá)如式(12)所示。 (12) 其中,H(·)是一個(gè)全連接層用于降維,SG(·)是一個(gè)壓縮門函數(shù)。壓縮門包括一個(gè)壓縮模塊和一個(gè)門控模塊,從而確保其輸出值的范圍在0到1之間。壓縮模塊由兩個(gè)全連接層組成,中間是一個(gè)ReLU函數(shù)。第一個(gè)全連接層用來(lái)降低維度,而第二個(gè)全連接層用來(lái)確保維度一致。而門控模塊則是一個(gè)sigmoid激活函數(shù)。因此,壓縮門可以表示如式(13)所示。 SG(x)=σ(f2(ReLU(f1(x))) (13) 圖3闡述了壓縮門的設(shè)計(jì)思路,而這樣的設(shè)計(jì)與直接的相加或者拼接相比,擁有以下兩個(gè)優(yōu)點(diǎn): ①節(jié)省參數(shù); ②增強(qiáng)非線性。 圖3 用于融合各個(gè)注意力分支的壓縮門 本節(jié)詳細(xì)介紹實(shí)驗(yàn)使用的數(shù)據(jù)集、實(shí)驗(yàn)設(shè)置、實(shí)驗(yàn)結(jié)果和分析實(shí)驗(yàn)。 我們選用了一個(gè)小規(guī)模數(shù)據(jù)集以及兩個(gè)大規(guī)模數(shù)據(jù)集來(lái)驗(yàn)證模型性能,分別是IWSLT14德英、WMT14 英德和WMT17 中英。表1中給出每個(gè)數(shù)據(jù)集的統(tǒng)計(jì)量,其中各個(gè)數(shù)據(jù)集的處理細(xì)節(jié)如下。 表1 數(shù)據(jù)集規(guī)模統(tǒng)計(jì) (1) IWSLT14 德英數(shù)據(jù)集是從TED以及TEDx中篩選出來(lái)的。經(jīng)過(guò)清洗后,我們保留160k的句子作為訓(xùn)練集以及7k的句子作為驗(yàn)證集。我們合并了dev2010、tst2010、tst2011、tst2012作為測(cè)試集。為了能夠避免語(yǔ)料處理后的詞典過(guò)大,我們將整個(gè)語(yǔ)料以子詞的形式進(jìn)行處理,最終的詞典大小為32 000。 (2) WMT14 英德數(shù)據(jù)集由三個(gè)公開(kāi)數(shù)據(jù)集組成。語(yǔ)料的訓(xùn)練集包含4. 5M的句子對(duì),其中newtest2013和newtest2014分別選為驗(yàn)證集和測(cè)試集。我們同樣將語(yǔ)料處理成子詞的形式,處理之后的詞典大小為32 000。 (3) WMT17中英數(shù)據(jù)集由三個(gè)公開(kāi)數(shù)據(jù)集組成。處理之后的語(yǔ)料包含18M個(gè)句子對(duì),newsdev2017和newstest2017分別被選為驗(yàn)證集和測(cè)試集。由于中文和英文相差較大,因此每個(gè)語(yǔ)料分別采用子詞進(jìn)行處理,處理之后每個(gè)語(yǔ)種的詞典大小為40 000。 對(duì)于IWSLT14 德英數(shù)據(jù)集,我們使用一個(gè)小型(Small)模型來(lái)驗(yàn)證性能;對(duì)于WMT14 英德數(shù)據(jù)集,我們選用一個(gè)中等模型(Base)和一個(gè)大型模型(Large)來(lái)驗(yàn)證;對(duì)于WMT17 中英數(shù)據(jù)集,則選用大型模型來(lái)驗(yàn)證。表2詳細(xì)介紹每種模型的參數(shù)設(shè)置。 表2 模型參數(shù)設(shè)置 所有的實(shí)驗(yàn)結(jié)果都采用BLEU[12]作為評(píng)估指標(biāo)。我們首先分析了本文方法與其他基準(zhǔn)模型的對(duì)比。表3和表4分別列舉本文方法在WMT14英德和WMT17中英數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果。我們還列舉了多個(gè)其他類型的系統(tǒng)用于對(duì)比,包括基于循環(huán)神經(jīng)網(wǎng)絡(luò)以及卷積神經(jīng)網(wǎng)絡(luò)的基準(zhǔn)模型。出于公平比較,本文還與標(biāo)準(zhǔn)的Transformer網(wǎng)絡(luò)進(jìn)行了對(duì)比。從表3和表4可以看出,Transformer已經(jīng)取得比其他架構(gòu)網(wǎng)絡(luò)更好的性能。而在此基礎(chǔ)上,我們的中等模型和大型模型在WMT14英德上依然能夠分別取得0.6和0.4個(gè)百分點(diǎn)的提升。在WMT17中英數(shù)據(jù)集上,也可以看到明顯的性能提升。這一系列的提升也表明,本文方法能夠在多個(gè)不同尺度的模型上都能夠取得更好的性能,而模型參數(shù)僅增加不超過(guò)1%。另外,我們還對(duì)比了利用顯式的相對(duì)位置編碼[7]來(lái)增強(qiáng)位置語(yǔ)義的方法,然而依然能夠取得可比的實(shí)驗(yàn)結(jié)果。需要注意的是,本文方法是在模型層面來(lái)隱式增強(qiáng)位置語(yǔ)義,因而可以與相對(duì)位置編碼完美兼容。 表3 WMT14 英德數(shù)據(jù)集 表4 WMT17 中英數(shù)據(jù)集 為了進(jìn)一步分析不同注意力分支對(duì)模型的影響,我們?cè)贗WSLT14德英數(shù)據(jù)集上進(jìn)行了一系列的消融實(shí)驗(yàn)。除此之外,為了能夠驗(yàn)證本文方法具備更優(yōu)越的提取時(shí)序信息的能力,我們還做了一組不包含位置編碼輸入的實(shí)驗(yàn)。表5包含了所有的實(shí)驗(yàn)結(jié)果分析,其中,Lk表示窗口為k的局部注意力,“base”表示基準(zhǔn)模型,“Δ”表示相對(duì)于基準(zhǔn)模型的提升,“NoP”表示禁用位置編碼。出于公平對(duì)比,每組實(shí)驗(yàn)都采用了門控和的特征融合方式。從表5可以發(fā)現(xiàn): (1) 相比較于基準(zhǔn)模型,實(shí)驗(yàn)組1~3和4~7可以取得最多0.65的BLEU提升。其中實(shí)驗(yàn)組1~3主要研究雙向自注意力,實(shí)驗(yàn)組4~7主要研究局部自注意力。這些提升說(shuō)明雙向自注意力和局部自注意力能夠幫助編碼器獲得收益。當(dāng)對(duì)比基準(zhǔn)模型以及實(shí)驗(yàn)組13~15,我們發(fā)現(xiàn)局部自注意力機(jī)制在解碼器端只能夠取得最多0.16的分?jǐn)?shù)提升。因此,疊加過(guò)多的局部自注意力并不能給解碼器端帶來(lái)太多收益。 (2) 相比于基準(zhǔn)模型,我們發(fā)現(xiàn)實(shí)驗(yàn)17和實(shí)驗(yàn)18幾乎沒(méi)有差異。兩組實(shí)驗(yàn)都能夠獲得接近1個(gè)百分點(diǎn)左右的提升,這也說(shuō)明在編碼器端和解碼器端疊加多個(gè)局部自注意力分支并不能帶來(lái)更多的收益。 (3) 為了進(jìn)一步說(shuō)明本文方法能夠有效建模位置信息,我們還做了不包含位置信息的對(duì)比實(shí)驗(yàn)組。可以發(fā)現(xiàn),在不包含位置信息的實(shí)驗(yàn)中,通過(guò)添加額外的雙向注意力或者局部注意力分支,我們的模型能夠獲得超過(guò)15個(gè)百分點(diǎn)以上的提升。這種現(xiàn)象也說(shuō)明了位置信息對(duì)于Transformer的重要性。而通過(guò)將對(duì)比實(shí)驗(yàn)組1~3、4~7以及8~12和實(shí)驗(yàn)組13~16,我們發(fā)現(xiàn)編碼器對(duì)位置信息更加敏感。這些現(xiàn)象也說(shuō)明了位置信息對(duì)編碼器學(xué)習(xí)更加重要。而解碼器端受位置信息影響較弱,我們認(rèn)為這是因?yàn)槠涞葍r(jià)于前向自注意力而具備一定的時(shí)序建模能力。而不包含位置信息的實(shí)驗(yàn)結(jié)果,也表明了本文的方法可以為模型隱式地對(duì)位置信息進(jìn)行建模,并且位置信息也能夠?yàn)槟P蛶?lái)收益,尤其在編碼器端。 為了能夠理解各種分支融合方式對(duì)模型性能的影響,我們還進(jìn)行了多組實(shí)驗(yàn)來(lái)驗(yàn)證各種融合方式的影響,實(shí)驗(yàn)結(jié)果匯總在表6中,其中“Transformer”是基準(zhǔn)模型,“+ (number)”表示相對(duì)于基準(zhǔn)模型增加的參數(shù)量。為了能夠體現(xiàn)每個(gè)分支在不同模型尺度下的魯棒性,我們?cè)诟鞣N模型設(shè)置上都做了實(shí)驗(yàn)。依據(jù)表6可以得出以下結(jié)論: 表6 多分支特征融合方法的實(shí)驗(yàn)結(jié)果 (1) 直接相加的方法不增加任何參數(shù)。但是由于缺少線性變化,使得模型對(duì)于相加之后的特征具有不適應(yīng)性。因此,我們看到相加的方式在小型模型上提升0.8個(gè)百分點(diǎn),在中型模型和大型模型上幾乎不提升。 (2) 拼接等價(jià)于密集連接。因此,它通常需要一個(gè)全連接層來(lái)確保輸出維度一致。更重要的是,拼接方式能夠比相加的方式提供更好的適應(yīng)性和可塑性,但拼接的方式卻需要提供接近10%的額外參數(shù)。 (3) 門控和是本文推薦的一種連接方法。相比于其他方法,門控和具有更好的適應(yīng)性,且取得了更好的成績(jī)。而且,相比拼接的連接方式,門控和還擁有參數(shù)上的優(yōu)勢(shì),只需要增加不到1%的參數(shù)。因此,本文選用了這種機(jī)制來(lái)做特征融合。 在這篇文章中,我們針對(duì)神經(jīng)機(jī)器翻譯提出了一個(gè)自注意力機(jī)制網(wǎng)絡(luò)的變體——基于混合自注意力機(jī)制的網(wǎng)絡(luò)。為了解決自注意力機(jī)制不能有效提取時(shí)序語(yǔ)義以及局部語(yǔ)義的問(wèn)題,我們?cè)O(shè)計(jì)了多個(gè)不同注意力分支以提取不同層次的語(yǔ)義信息。本文的方法在僅僅增加少量參數(shù)的情況下,能夠取得更加優(yōu)異的性能。除此之外,設(shè)計(jì)了一個(gè)壓縮門網(wǎng)絡(luò)來(lái)融合各個(gè)分支的相關(guān)性。在多個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,本文方法能夠取得更好的結(jié)果。在下個(gè)階段,我們將繼續(xù)研究自注意力的結(jié)構(gòu)和可解釋性,并將該模型擴(kuò)展到更多應(yīng)用上。1.2 深度自注意力網(wǎng)絡(luò)
2 方法
2.1 雙向自注意力
2.2 局部自注意力
2.3 融合
3 實(shí)驗(yàn)
3.1 數(shù)據(jù)集
3.2 模型設(shè)置
3.3 實(shí)驗(yàn)結(jié)果
3.4 消融實(shí)驗(yàn)
3.5 特征融合分析
4 總結(jié)