騰訊AI Lab提出翻譯改進模型Transformer的3個優化方法

論文地址:ai.tencent.com/ailab/nl

假設大家都知道 transformer 長什麼樣了。

動機:由於 transformer 只利用編碼器和解碼器的頂層,這就錯過 了利用嵌入在其他層中的有用信息的機會。前人的工作已經證明,在計算機視覺、自然語言處理中,對層進行聚合,能夠更好地融合語義和空間信息。

騰訊 AI Lab 提出幾種優化方式:Layer Aggregation、 Multi-Layer Attention。


一、Layer Aggregation

圖 1

主要包括圖 1 的 b、c、d 三種模型

1,Dense Connection

對當前層的前面所有層的輸出進行相加。

這種方式有兩個好處:一個保持輸出的矩陣的大小不變,另一個是這樣相加的計算量比相連接(前人的工作)計算量要小。

2,Linear Combination

他們這裡是對所有層的輸出進行一個加權求和,但是這個權重是可以訓練的。

我們之前做過類似的工作,只是我們是做加權平均;並且這個權重是固定的。但是結果低了0.2個bleu左右。這個可訓練的權重,感覺並不太好做……

3,Iterative Aggregation

這種迭代聚合的方式有大佬做過,有0.3個bleu的提升,在小牛的語料庫上。

注意到公式(7)裡面的FNN[x;y]是相連接的兩個矩陣即可。這個可能是我最近想做的工作。

4,Hierarchical Aggregation

上圖中的b模型,公式如下

去改改代碼也並不複雜……

二、Multi-Layer Attention

emmm這裡還沒仔細看,感覺有點複雜。並且這種修改方式,會導致更大的計算量。

等修改完前面幾種方式,再試一下這種。

三、總結

對比提出的兩種方法,其中層聚合模型將不同網路層同一位置的表示融合起來,而多層注意力模型則允許融合不同層不同位置的表示,但代價是計算複雜度更高。

四、其他

根據論文去修改模型,每次可能需要半天左右,訓練模型,再進行測試,需要一天多。


推薦閱讀:
相關文章