AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

AIBigbull2050發表於2020-01-11
2020-01-07 10:15:01
AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

作者 | 孫澤維

本文來自 公眾號 南大NLP

當下的神經機器翻譯(Neural Machine Translation, NMT)已經擁有很強的翻譯效能,在諸多模型之中,Transformer模型取得了最好的效果。其區別於傳統模型之處在兩個方面:自注意力機制(Self-Attention)以及多頭注意力機制(Multi-Head Attention)。

本文 主要針對後者,傳統的單頭注意力機制已經有了比較多的研究,廣泛的結論是注意力代表了詞對齊。但多頭注意力機制代表了什麼還缺乏研究。本文基於一項對Transformer多頭注意力的觀察展開:解碼器(Decoder)的最後一層對於編碼器(Encoder)的多頭注意力機制,代表了多重詞對齊。並利用該現象,生成多樣化翻譯。更進一步,利用多樣化翻譯,輔助利用逆向翻譯技術(back translation),增強翻譯模型效能。最後一項有關問答任務的實驗也證明了效能的提升。

現象分析

首先,為了驗證我們的猜想:解碼器(Decoder)的最後一層對於編碼器(Encoder)的多頭注意力機制,代表了多重詞對齊,即解碼器最後一層注意力對應的源端的詞,是接下來極有可能會生成的詞,我們做了三個驗證實驗:

1、我們將解碼器每個頭對應最大注意力值的源端詞選取出來,利用翻譯的基線模型翻譯生成目標端單詞,看這些生成的目標端語言單詞,在下一步目標端生成的softmax機率表中排名第幾,如圖1所示,非常尖銳的分佈,大部分對應的詞都在排名前列。

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

圖1:被注意力頭選中的詞都排名非常靠前

2、與 上面相似,我們檢視了這些詞的負對數似然(Negative Log-Likelihood, NLL),並計算了所有情況下排名第R的詞的平均NLL(例如K=1,就是所有排名第1的詞的NLL),進行對比,如表1所示,被選中的詞的NLL非常小。

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

表1:所有情況中排名第R的詞的NLL,每個頭的NLL都非常小

3、更進一步,我們發現可以透過控制不同的注意力頭,來控制下一步的生成。具體見下面的例子,源端句子是“他說, 去年九月以來, 出口下降導致印度經濟惡化。”模型已經翻譯出“he said”,正在等待下一步翻譯。我們摘取了此時各個頭的注意力情況,如圖2所示。接下來,我們挑選第4、5、6個頭,分別對應到“以來”、“下降” 、“出口”三個詞,每次都用某個頭的注意力數值覆蓋其他頭,觀察到對應的頭的詞都被即刻生成出來了,如表2所示。

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

圖2:不同的頭對應不同的源端的詞

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

表2:選擇不同的頭(對應不同的源端詞),就能控制下一步的生成

方法應用

我們利用該現象,提出了利用該多頭注意力機制增強翻譯多樣性的演算法。

具體來說就是在每一次生成的時刻,隨機取樣某個頭,用其注意力數值覆蓋其他頭。但如果在生成的每個步驟都進行取樣,雖然能顯著增加多樣性,卻也會降低翻譯質量。因此,我們提出了一個針對性演算法:若多個頭都對應到不同的源端詞,意味著此時有多個合理的候選,此時我們就進行取樣。

具體來說分如下幾步:

1、令每個時刻的注意力數值為att(i,t,h),代表目標端生成第t個時刻,第h個頭,對源端第i個詞的注意力,我們取第h個頭注意力最強的源端詞candidate(t,h) = argmax(att(i,t,h), i)。

2、令[n_0, ..., n_i, ..., n_(T-1)]表示源端詞被選為candidate的數量,T為源端長度。明顯地,sum(n) = H,H代表頭的總數。

3、若max(n) <= K,則進行取樣,K為超參。這一步可以理解為,注意力很分散,可以有不同的候選。

具體演算法如演算法1所示。

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

演算法1:取樣策略

實驗結果

我們在NIST 中英資料集,WMT14 英德資料集,和WMT16 英羅資料集上進行了實驗。評價指標 主要針對兩個方面,翻譯質量和翻譯多樣性,翻譯質量仍然採用傳統的BLEU,即與參考譯文的比較(Reference-BLEU,rfb),越高質量越好,翻譯多樣性採用多次生成結果之間的BLEU(Pair-Wise BLEU,pwb),越低多樣性越好。

最後,我們還提出一個綜合的指標:每單位質量的多樣性提升(Diversity Enhancement per Quality,DEQ),表示相較於baseline,提升的多樣性BLEU與降低的翻譯質量的BLEU的比值,越大越好,說明能以同樣的質量代價實現更高的多樣性。

實驗結果如表3,4,5所示,比起之前的工作,我們在維持了比較高的翻譯質量的前提下,實現了多樣性的提升。

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

表3:中英實驗

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

表4:英德實驗

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

表5:英羅實驗

我們將之前的工作、噪音組(為了去除噪音帶來多樣性的可能性)的結果繪在圖3中,橫軸是rfb,縱軸是pwb, 右下角是最優點,結果顯示,我們的方法都在 右下角。

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

圖3:Pair-Wise BLEU對Reference BLEU

右下角越優,我們的方法都處在 右下角。

表6是一個例子:

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

表6:多樣性翻譯例子

我們還看了不同長度的實驗結果,如圖4所示。理論上來說,隨著長度增長,翻譯的多樣性應該增加,因為 搜尋空間更大了,但beam search由於其先天的缺陷,長度越長,多樣性越差。我們的方法就實現了,隨著長度增加,多樣性增加的效果。

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

圖4:隨著句子長度增加多樣性的變化

我們利用這些多樣性的翻譯來做逆向翻譯(Back-Translation),在中英和英中實驗上都有提升,如表7,8

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

表7:中英逆向翻譯實驗

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

表8:英中逆向翻譯實驗

最後還有一項對話的實驗,也驗證了我們的結論,如表9。評價指標詳見論文。

AAAI 2020 | 南京大學:利用多頭注意力機制生成多樣性翻譯

表9:對話實驗

總結

在本文中,我們發現了Transformer模型的一個內在結構特性,並利用它提出了一個多樣性翻譯生成的演算法,比起以往的工作,在同等質量的前提下取得了更高的多樣性。收益於我們的方法的逆向翻譯演算法、對話策略也取得了比以往更好的效果。

南大NLP研究組介紹

南京大學自然語言處理研究組從事自然語言處理領域的研究工作始於20世紀80年代。曾先後承擔過該領域的18項 國家科技攻關專案、863專案、 國家自然科學基金和江蘇省自然科學基金以及多項對外合作專案的研製。其中,承擔的 國家七五科技攻關專案“日漢機譯系統研究”獲七五 國家科技攻關重大成果獎、教委科技進步二等獎以及江蘇省科技進步三等獎。

分析理解人類語言是人工智慧的重要問題之一,本研究組在自然語言處理的多個方向上做了大量、深入的工作。近年來集中 關注文字分析、機器翻譯、社交媒體分析推薦、知識問答等多個熱點問題, 結合統計方法和深度學習方法進行問題建模和求解,取得了豐富的成果。本研究組在自然語言處理頂級國際 會議ACL上連續三年發表多篇論文,也在人工智慧頂級國際 會議IJCAI和AAAI上發表論文多篇,相關係統在機器翻譯、中文分詞、命名實體識別、情感計算等多個國際國內評測中名列前茅。

本實驗室立志於研究和解決在傳統文字和網際網路資源的分析處理中面臨的各項問題和挑戰,並積極探索自然語言處理的各種應用。如果你也和我們有共同興趣或目標,歡迎加入我們!





來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946223/viewspace-2672992/,如需轉載,請註明出處,否則將追究法律責任。

相關文章