999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

編碼器中自注意力機制的替代方案

2019-09-10 07:22:44周祥生林震亞郭斌
現代信息科技 2019年19期

周祥生 林震亞 郭斌

摘? 要:本文針對Transformer中編碼器進行改進,嘗試了包括RNN(recurrent neural network)、CNN(convolu-tional neural network)、動態路由等多種結構,對比其特征提取能力及對解碼器的影響。實驗表明,在編碼器中引入RNN、IndRNN結構可以在一定程度上增加編碼器對源語言的特征提取能力,而采用CNN替代編碼器中的自注意力機制(self-attention)可以在不明顯影響結果的情況下顯著降低參數量,提升模型性能。由于考慮參數量和執行時間,動態路由在該任務下效果不好,這也說明了動態路由結構雖然是很強的特征提取器,但并不適合進行堆疊。

關鍵詞:自注意力機制;CNN;RNN;動態路由;編碼器

中圖分類號:TN914;TP18? ? ? 文獻標識碼:A 文章編號:2096-4706(2019)19-0064-05

Abstract:In this paper,we try to improve the encoder in Transformer,including RNN(recurrent neural network),CNN(convolutional neural network),dynamic routing and other architectures,and compare their feature extraction capabilities and the impact on decoder. Experiments show that the introduction of RNN and IndRNN architecture in the encoder can increase the feature extraction ability of the source language to a certain extent,while the use of CNN instead of self-attention in the encoder can significantly reduce the number of parameters and improve the performance of the model without obvious impact on the results. Considering the parameters and execution time,dynamic routing does not work well in this task. This also shows that dynamic routing architecture is a strong feature extractor,but it is not suitable for stacking.

Keywords:self-attention;CNN;RNN;dynamic routing;encoder

0? 引? 言

神經機器翻譯(NMT)的目的是利用神經網絡解決機器翻譯(MT)問題,近年來已顯示出不錯的成果。在機器翻譯中,序列到序列結構已經被證明在很大程度上優于傳統的基于短語的模型[1]。一個主要的挑戰是如何將可變長度的文本序列編碼成一個固定大小的張量,且這個張量能夠完全捕獲文本的語義。文本編碼方法通常包含三個關鍵步驟:(1)將文本序列中的每個單詞轉換為嵌入(Embedding)特征;(2)將單詞嵌入序列作為輸入,并使用神經網絡進行特征抽取與轉換;(3)通過聚合(Aggregation)將句子含義總結為固定大小的張量,然后通過監督或無監督的方式組合下游任務。如今,針對模型結構,已經有大量研究,例如RNN[2,3]、CNN[4,5]和Self-attention Network[6-8]。一些研究人員發現,不同的層能夠捕獲不同類型的語法和語義信息[9-11],例如本地和全局的源語言句法都是由NMT編碼器學習的,且在不同的層捕獲的語法信息不同。

近年來,許多研究者將重點放在了聚合步驟上,有幾項工作在重復或卷積編碼層之上采用了自我關注機制[12,13],以取代簡單的池化和全連接。最近的一些研究表明,同時公開所有層表示優于僅利用頂層進行自然語言處理任務的方法[10,14-16]。然而,它們的方法主要集中在靜態聚合上,因為聚合機制在序列的不同位置上是相同的。隨后,Dou等人[17]受迭代路由文獻[18]、[19]的思想啟發,將其思想應用于層聚合,從而提取多層表征所共享的最活躍特征。

然而,之前的結構過于獨立,并沒有設計成可重復堆疊的模型單元。本文基于前人思想,將CNN、RNN、動態路由等結構分別巧妙應用于Transformer結構[6]的Encoder單元中,在保證其并行能力、運行效率的同時在機器翻譯領域的公開數據集UNv1.0中英測試集上取得了超越傳統Transformer的效果,并為模型蒸餾[20]學生模型的設計提供了新思路。此外,本文還針對傳統訓練語料的不足,提供了新的訓練語料,該語料是從各處搜集的五千多萬語料中整理出的六百萬條高質量語料,實測采用該語料訓練充分的模型可媲美全量語料充分訓練后的結果。

1? 編碼器中自注意力機制替代方案的背景知識

1.1? NMT結構

通過兩個獨立的網絡將源序列映射到目標序列,編碼器網絡計算源序列的表示,解碼器網絡根據編碼器輸出自動回歸生成目標序列。下文中,表示第i步第l層的隱狀態,Exi表示xi的嵌入,epos,i表示位置i的位置表征。

1.2? 基于RNN的NMT

RNN是一種狀態網絡,當新的輸入被輸入時,它會發生變化,并且每個狀態都只與以前的狀態有直接的連接。因此,RNN中距離為n的任意兩個單元的路徑長度正好是n。圖1是RNN的示意圖。

在深度結構中,兩個相鄰層通常通過殘差操作進行連接。在第l層編碼層中,由式(1)生成,其中frnn是RNN(包括GRU、LSTM等)函數。在第一層中,。此外,編碼器和解碼器之間可通過注意力機制連接,解碼器初始狀態通常由編碼器最后一個隱狀態或者其均值得到。

1.3? 基于CNN的NMT

CNN是層次化網絡結構,卷積層用于捕獲局部相關性。本地上下文大小取決于內核的大小和層數。為了使輸出與輸入保持相同的長度,CNN模型在輸入序列中添加了Padding符號。對于內核大小為k的l層CNN,最大的上下文關聯長度是l(k-1)。

傳統CNN結構如圖2所示,Multi-head attention[6]中的切頭操作說明執行全連接后詞向量是可分的,因此文本處理中也可在全連接后采用傳統CNN結構。

在該結構下,內核大小為3的2層CNN可以“看到”5個詞的有效本地上下文。卷積核寬度越大,可關聯的上下文信息越多;卷積核長度越大,單次操作可捕捉的詞向量信息就更全。由于CNN無法推斷元素在序列中的位置,因此需要引入位置嵌入。

式(2)中所示的隱藏狀態與同一卷積中的隱藏狀態以及上一層中的隱藏狀態有關,k表示CNN的核大小,fcnn是非線性的函數,W l稱為卷積濾波器。在輸入層中, 。

1.4? 基于Transformer的NMT

Transformer嚴重依賴于Self-attention。每個標記都通過Self-attention直接連接到同一句話中的任何其他標記。此外,Transformer還采用了多頭注意力機制。與傳統的單頭注意機制相比,多頭注意機制更加精細。圖3說明了任意兩個單元是直接連接的:第一個(x1)和第五個(x5)單元之間的路徑長度是1。與CNN類似,位置信息也需要保存在位置嵌入中,或者記錄詞與詞之間的相對位置關系[21]。

Transformer編碼器中的隱藏狀態是根據前一層的所有隱藏狀態計算出來的。自注意網絡中隱藏狀態的計算如式(3)所示。

其中f表示一個前饋網絡,在輸入層中,,與編碼器不同,解碼器在Self-attention基礎上還有融合編碼器與解碼器內容的多頭注意力機制計算。

1.5? 動態路由

動態路由將膠囊分組形成父膠囊,并計算膠囊的輸出。對于一個膠囊來說,輸入ui和輸出vj都是向量。首先,將變換矩陣Wij與前一層膠囊的輸出ui相乘,將ui轉換為uj|i,然后根據權重cij計算加權和sj,如圖4所示。

cij為耦合系數,通過迭代的動態路由過程計算得到。從概念上講,cij衡量膠囊i有多大可能激活膠囊j。對于激活函數,這里采用Squashing而不是ReLU,所以膠囊的最終輸出向量vj的長度在0到1之間,該函數將小向量壓縮為零,大向量壓縮為單位向量。

動態路由并不能完全替代反向傳播。轉換矩陣W仍然使用成本函數通過反向傳播訓練。我們只是使用動態路由來計算膠囊的輸出。通過計算cij來量化膠囊與其父膠囊之間的連接。這個值很重要,但生命周期很短暫。對于每一個數據點,在進行動態路由計算之前,我們都將它重新初始化為0。在計算膠囊輸出時,無論是訓練或測試,都需要重新做動態路由計算。

2? 編碼器中自注意力機制的替代方案模型的改進

2.1? 結構改進

在Transformer結構中,Decoder部分設計精妙,通過合理的Mask操作,從而讓一輪反向傳播計算學習了目標語句每個位置上的信息。本文涉及的所有模型不改變Decoder部分流程,目的是觀察如何設計Encoder結構可以讓Decoder部分更好地使用源語句信息。

從根本上來說,Self-attention結構的目的是采用所有原始向量的加權和對新的向量進行表征,其中權重通過注意力計算得到,而RNN結構更關注每個位置與上一個位置的依賴關系。基于此,我們優先想到的是如何將RNN思想用于改進Self-attention結構,具體見式(9):

其中l表示層數,Wl與Ul都是參數矩陣,bl是參數向量, 是? 經過Self-attention計算后的結果。受IndRNN[22]啟發迭代式子可變更為式(10),從前一個單元至后一單元的傳遞過程中,由哈達瑪積運算替代傳統矩陣乘法。

除了引入RNN結構,本文還嘗試采用卷積網絡更好地捕捉文本局部特征。

文中采用的CNN結構如圖5所示,可以看到與傳統CNN的唯一區別在于不采用兩邊等長的卷積核。對于文本來說,長度更大的卷積核可以捕捉更長距離的上下文信息,寬度更大的卷積核可以更充分的捕捉詞語信息。本文分別在計算和不計算Self-attention的情況下加入卷積結構,并詳細對比了不同參數下的結果。

除了引入RNN和CNN結構,本文還在Self-attention的基礎上加入動態路由。由于本文程序中采用動態詞長,所以動態路由沒有設計成用一句話中所有詞的加權和來表征每一個詞,即ui為某句話的第i個詞,vj為動態路由計算后這句話的第j個詞;而是把每個詞通過不同的參數矩陣變換為新詞,再由這些新詞的組合來表征原始詞,即ui為某個詞的第i個表征,vj為動態路由計算后這個詞的第j個表征。然后再將v通過拼頭的操作合并(同Self-attention中的多頭還原操作),并通過全連接計算進行維度還原。

2.2? 流程改進

為了更好地翻譯特殊字符,本文采用特殊字符保留操作。具體操作如下:

(1)找到源語言與目標語言中相同的詞,并且采用&SEPX的形式進行標記。

如源語句:中國在2001年加入WTO的時候承諾加入GPA。

目標語句:China has the commitment to join the GPA when she accessed to the WTO in 2001.

則將源語句標記為:中國在&SEP1年加入&SEP2的時候承諾加入&SEP3。

目標語句標記為:China has the commitment to join the &SEP3 when she accessed to the &SEP2 in &SEP1.

(2)將處理后的語句加入原始數據集,即若源語句與目標語句中出現相同的詞,則新增處理后的該句,原始句保留。

(3)將新語料用于訓練,得到最終模型。

可以預見這類標記大多為實體和數字,經此訓練后的模型可在一定程度上掌握特殊實體對齊能力。使用時,可以選擇性的將需要保留的數字或者關鍵詞用特殊符號代替,再在翻譯結果中將詞填入對應的位置中。對于一些訓練集中的低頻詞或者經Subword后左右熵較大的詞,也可以選擇性的將其標記,再通過查字典的方式得到更為準確的結果。

3? 編碼器中自注意力機制的替代方案模型的結果分析

本文采用的數據集根據公司內部語料整理得到,共有六百萬條,句長期望22.25詞,在保證源語句與目標語句長度接近的情況下,盡可能的遍歷各種句長,從而保證訓練后的模型對長短句均有不錯的翻譯效果。實驗證明基于該語料充分訓練后的模型,翻譯效果與五千萬條語料訓練得到的模型差距不大(Transformer-base模型下BLEU值約差1.5)。驗證集和測試集均采用UNv1.0。本文模型采用動態Batch和動態句長,使用4塊M40卡訓練,激活函數均采用GELU[23],學習率及Adam優化器超參數均按照Transformer[6]中的方法設置。為了加快實驗速度及突出Encoder部分特征的重要性,Decoder層數均設為4層(在實際解碼過程中,Encoder只需要計算一次得到隱藏狀態,而Decoder需要計算多次,直到出現截止符號,故而在實際使用中,Decoder部分的復雜度直接影響翻譯系統的性能)。RNNsearch[24]采用文獻中的參數,其它模型隱藏層、全連接層維度均與Transformer-base一致。各個實驗結果對比如表1所示。

表1為各項實驗結果,共訓練100萬個Batch,結果均取驗證集上表現最好的模型。可見在該測試集上,采用Transformer解碼器的模型明顯優于傳統的RNNsearch結構。Inception-resnet[25]結構是測試模型中效果最好的CNN特征提取器,但參數量也最大,為了減少參數,在進入Inception-resnet前進行降維至64維,出模型后恢復至512維,即使在這種情況下,依舊取得了不錯的結果。對于CNN結構,第一個參數表示卷積核長度,第二個參數表示卷積核寬度,第三個參數表示Filter數量,可見增加卷積核長度起到的效果略好于增加卷積寬度,用太大的卷積核并不能像預想中那樣提取更多上下文及詞表征信息,反而會降低模型效果,如果不知道怎么設計卷積核大小,3*3的卷積核依舊是不錯的選擇。增大Filter數量可以在一定程度上提升特征提取質量,同時能增加模型訓練時的穩定性,使其在訓練中后期(30萬步后)波動減小。此外,CNN結構比Self-attention結構具備更慢的訓練收斂速度,這也可能是沒針對其進行超參數調優導致,如要解決這個問題,可在Self-attention的計算結果上加入CNN結構,該操作也會在一定程度上提升模型效果。

在Self-attention結構上加入RNN和IndRNN結構均可在一定程度上提升模型效果,但也會略微增加參數量和收斂時間,說明Self-attention雖然在原理上可以學習到任意位置間的交互關系,但沒有特別捕捉與前一層的交互作用,額外引入每一層和前一層之間的關聯性也是有必要的。動態路由采用8維膠囊,輸出的膠囊也為8維,循環次數為6次,最后通過“拼接頭部+全連接”的方式還原維度。雖然參數量不多,但是按照上述方法加入到每次Self-attention計算后執行過程很復雜,有大量中間結果,故而隱層設為512維時顯存不夠,這里將隱層設為256維。在該情況下,參數量大幅減少,但是無論是效果還是解碼時間都不盡如人意,在之后的論文中,會重點探討文獻[18]、[19]中路由結構在翻譯模型中的合理使用方法。

4? 結? 論

本文針對Transformer中編碼器進行改進,嘗試了包括RNN、IndRNN、CNN、動態路由等多種結構,對比其特征提取能力及對解碼器的影響。實驗表明,在編碼器中引入RNN、IndRNN結構可以在一定程度上增加編碼器對源語言的特征提取能力,而采用CNN替代編碼器中的Self-attention可以在不明顯影響結果的情況下顯著降低參數量,提升模型性能,為模型蒸餾任務中學生模型的設計提供了新思路。由于考慮參數量和執行時間,動態路由在該任務下效果不好,這也說明了動態路由結構雖然是很強的特征提取器,但并不適合進行堆疊。此外,本文通過特殊字符替換方式解決了特殊字符或是非常用詞翻譯問題,還針對傳統訓練語料的不足提供了新的訓練語料,為商用翻譯系統設計提供了幫助。

參考文獻:

[1] Sennrich R,Haddow B,Birch A .Edinburgh Neural Machine Translation Systems for WMT 16 [C]//Proceedings of the First Conference on Machine Translation,2016:371-376.

[2] Jie Z,Ying C,Xuguang W,et al. Deep Recurrent Models with Fast-Forward Connections for Neural Machine Translation [J].Transactions of the Association for Computational Linguistics,2016,4:371-383.

[3] Wu Y,Schuster M,Chen Z,et al. Google’s neural machine translation system:Bridging the gap between human and machine translation [J].arXiv preprint arXiv:1609.08144,2016.

[4] Gehring J,Auli M,Grangier D,et al. Convolutional sequence to sequence learning [C]//Proceedings of the 34th International Conference on Machine Learning-Volume 70. JMLR. org,2017:1243-1252.

[5] Bradbury J,Merity S,Xiong C,et al. Quasi-recurrent neural networks [C]//Published as a conference paper at ICLR 2017.

[6] Vaswani A,Shazeer N,Parmar N,et al. Attention is all you need [C]//Advances in neural information processing systems(NIPS 2017).

[7] Chen M X,Firat O,Bapna A,et al. The best of both worlds:Combining recent advances in neural machine translation [J].arXiv:1804.09849v2,2018.

[8] Dehghani M,Gouws S,Vinyals O,et al. Universal transformers [J].arXiv preprint arXiv:1807.03819,2018.

[9] Shi X,Padhi I,Knight K. Does string-based neural MT learn source syntax? [C]//Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing,2016:1526-1534.

[10] Peters M E,Neumann M,Iyyer M,et al. Deep contextualized word representations [J].arXiv preprint arXiv:1802.05365,2018.

[11] Anastasopoulos A,Chiang D. Tied multitask learning for neural speech translation [J].arXiv:1703.03130,2017.

[12] Lin Z,Feng M,Santos C N,et al. A structured self-attentive sentence embedding [J].arXiv preprint arXiv:1703.03130,2017.

[13] Yang Z,Yang D,Dyer C,et al. Hierarchical attention networks for document classification [C]//Proceedings of the 2016 Conference of the North American Chapter of the Association for Computational Linguistics:Human Language Technologies,2016:1480-1489.

[14] Shen Y,Tan X,He D,et al. Dense information flow for neural machine translation [C]//Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics:Human Language Technologies,2018(3):1294-1303.

[15] Gong J,Qiu X,Wang S,et al. Information aggregation via dynamic routing for sequence encoding [J].arXiv preprint arXiv:1806.01501,2018.

[16] Dou Z Y,Tu Z,Wang X,et al. Exploiting deep representations for neural machine translation [J].arXiv preprint arXiv:1810.10181,2018.

[17] Dou Z Y,Tu Z,Wang X,et al. Dynamic Layer Aggregation for Neural Machine Translation with Routing-by-Agreement [J].arXiv preprint arXiv:1902.05770,2019.

[18] Sabour S,Frosst N,Hinton G E. Dynamic routing between capsules [C]// 31st Conference on Neural Information Processing Systems (NIPS 2017),2017:3856-3866.

[19] Sabour S,Frosst N,Hinton G. Matrix capsules with EM routing [C]//Published as a conference paper at ICLR 2018.

[20] Hinton G,Vinyals O,Dean J. Distilling the knowledge in a neural network [J].arXiv preprint arXiv:1503.02531,2015.

[21] Shaw P,Uszkoreit J,Vaswani A,. Self-attention with relative position representations [J].arXiv preprint arXiv:1803.02155,2018.

[22] Li S,Li W,Cook C,et al. Independently recurrent neural network (indrnn):Building a longer and deeper rnn [C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018:5457-5466.

[23] Hendrycks D,Gimpel K. Bridging nonlinearities and stochastic regularizers with gaussian error linear units [J].arxiv:1606.08415,2016.

[24] Bahdanau D,Cho K,Bengio Y. Neural machine translation by jointly learning to align and translate [J].arXiv preprint arXiv:1409.0473,2014.

[25] Szegedy C,Ioffe S,Vanhoucke V,et al. Inception-v4,inception-resnet and the impact of residual connections on learning [J].arxiv:1602.07261,2016.

作者簡介:周祥生(1980-),男,漢族,江蘇漣水人,資深研發經理,碩士,研究方向:自然語言處理。

主站蜘蛛池模板: 91久久性奴调教国产免费| 妇女自拍偷自拍亚洲精品| 欧美日韩久久综合| 思思99思思久久最新精品| 亚洲首页国产精品丝袜| 国产一级在线观看www色 | 91av成人日本不卡三区| 久久这里只精品国产99热8| 午夜不卡视频| 亚洲国产欧洲精品路线久久| 色天天综合| 久久99热这里只有精品免费看| аⅴ资源中文在线天堂| 麻豆国产在线不卡一区二区| 草草影院国产第一页| 一本久道热中字伊人| 毛片免费在线视频| 专干老肥熟女视频网站| 91视频区| 久久久久88色偷偷| 最新日本中文字幕| 一级做a爰片久久毛片毛片| 在线中文字幕网| 视频国产精品丝袜第一页| 亚洲中久无码永久在线观看软件| 91偷拍一区| 国产一区在线观看无码| 亚洲成综合人影院在院播放| 亚洲日韩精品伊甸| 欧美激情视频在线观看一区| 日韩视频精品在线| 99在线视频网站| 日韩美一区二区| 国产不卡国语在线| 国产精品美女免费视频大全| 色首页AV在线| a毛片免费看| 免费一级大毛片a一观看不卡| 五月婷婷导航| www.youjizz.com久久| 午夜不卡视频| 国产成人精品在线| 亚洲综合色婷婷| 日韩高清成人| 亚洲黄色成人| 91外围女在线观看| 日韩一区精品视频一区二区| 亚洲一级毛片在线播放| 无码区日韩专区免费系列| 亚洲自偷自拍另类小说| 日韩欧美视频第一区在线观看| 久久这里只有精品66| 午夜免费小视频| 九九九精品视频| 亚洲国产成人综合精品2020 | 最新国产网站| 欧美日韩一区二区在线播放| 久久99国产精品成人欧美| a毛片在线播放| 日韩天堂在线观看| 国产黄网永久免费| 国产69囗曝护士吞精在线视频| 欧美区一区二区三| 色亚洲成人| 在线播放精品一区二区啪视频| 亚洲精品爱草草视频在线| 国产第一页亚洲| 日本道综合一本久久久88| 欧美亚洲另类在线观看| 亚洲综合色婷婷| 国产精品三区四区| 国产香蕉国产精品偷在线观看| 91成人免费观看在线观看| 国产高潮流白浆视频| jizz在线观看| 制服丝袜在线视频香蕉| 成人综合久久综合| 激情六月丁香婷婷四房播| 国产真实乱人视频| 久久久久夜色精品波多野结衣| 中文字幕中文字字幕码一二区| 久久人人妻人人爽人人卡片av|