非自迴歸生成研究最新綜述,近200篇文獻揭示挑戰和未來方向

語言: CN / TW / HK

(本文閱讀時間:10分鐘)

編者按:近年來,由於並行的快速推理能力,非自迴歸生成在自然語言處理、語音處理等領域展示出了其特有的優勢,並日益成為生成模型的研究熱點。為了促進非自迴歸生成模型的發展,微軟亞洲研究院與蘇州大學的研究員們共同撰寫了綜述論文“A Survey on Non-Autoregressive Generation for Neural Machine Translation and Beyond”,回顧了非自迴歸生成在神經機器翻譯以及其他任務中的發展,並對非自迴歸生成的未來提出了展望。

在如機器翻譯、對話生成、語音合成等自然語言、語音等生成任務中, 自迴歸(auto-regressive,AR)生成 是一種最常採用的生成方法。簡單來說, AR 生成指的是用迭代迴圈的方式來依次生成一句語音或文字 。比如,為了生成一句長度為5的句子,AR 生成首先會生成第一個詞語,然後基於第一個詞語生成第二個詞語,再基於前二個詞語生成第三個詞語,以此類推。由於每次新的詞語生成都依賴於之前生成的詞語,因此自迴歸的生成方式能夠保證生成的準確度。

但顯然,這樣迴圈的生成方式效率非常低,尤其是對生成長句子來說則更為明顯。為了加速生成過程, 非自迴歸(non-autoregressive,NAR)生成被提出,通過一次性並行地生成句子中所有詞語的方式,NAR 生成方法極大地提升了生成效率 。然而,NAR 生成的準確率並沒有得到保證,其效能與自迴歸生成相比仍有一定差距。因此,如何平衡好 AR 生成與 NAR 生成的優劣,是當下生成任務的研究重點。

綜述概覽

NAR 生成在神經機器翻譯 (neural machine translation,NMT) 中首次被提出,此後 NAR 生成便引起了機器學習和自然語言處理領域的廣泛關注。如前文所述,雖然 NAR 生成可以顯著提升機器翻譯的推理生成速度,但與 AR 生成相比,其加速是在犧牲翻譯準確性的代價上實現的。近年來,為了彌補 NAR 生成和 AR 生成之間的準確性差距,許多新的模型和演算法陸續被提出。

為了促進 NAR 生成模型的發展,微軟亞洲研究院與蘇州大學的研究員們共同撰寫了綜述論文“A Survey on Non-Autoregressive Generation for Neural Machine Translation and Beyond”(點選閱讀原文,檢視論文詳情 )。

在文章中,研究員們給出了一個系統、全面的綜述。首先,研究員們從不同方面比較和討論了各種非自迴歸翻譯(non-autoregressive translation,NAT)模型,具體來說就是對 NAT 的工作進行了幾組不同的分類,包括資料操作(data manipulation)、建模方法(modeling methods)、訓練準則(training criteria)、解碼演算法(decoding ways)以及利用預訓練模型(benefit from pre-training)。此外,研究員們還簡要總結回顧了 NAR 生成在機器翻譯之外的其他應用,例如對話生成、文字摘要、語法糾錯、語義解析、語音合成和自動語音識別等等。最後,研究員們討論了 NAR 未來值得繼續探索的潛在方向,包括減少對知識蒸餾(knowledge distillation,KD)的依賴性、動態解碼長度預測、NAR 生成的預訓練,以及更廣泛的應用。圖1展示了本篇綜述論文的整體結構。

研究員們希望該綜述文章可以幫助研究人員更好地瞭解 NAR 生成的最新進展,啟發更先進的 NAR 模型和演算法的設計,使行業從業者能夠根據其所在領域選擇合適的解決方案。

圖1:非自迴歸(NAR)生成研究綜述概覽架構圖

NAT 模型面臨的主要挑戰與解決方案

傳統的自迴歸機器翻譯(autoregressive translation,AT)模型由編碼器和解碼器構成,編碼器對源語句進行編碼後輸至解碼器,然後解碼器根據源語句和上一步預測的目標端語言單詞來預測下一個單詞,這種逐字的生成方式限制了 AT 模型的解碼速度。而為了實現在訓練和推理時並行的解碼方式, NAT 僅僅依賴源語句資訊來生成所有目標單詞,摒棄了目標端單詞之間的條件依賴。這種方式極大地加速了模型的解碼,但也增加了 NAR 模型的訓練難度,造成模型 “難以建模目標語言單詞之間的條件資訊”

針對該挑戰,現有的工作提出了多種解決方案。綜述文章對現有工作進行了分類,從 資料、模型、損失函式、解碼演算法、利用預訓練模型 五個角度對相關方法進行了介紹和比較。其中,資料、模型和損失函式是自迴歸文字生成模型的三個基本組成部分,這方面的工作旨在研究上述三個方面的傳統方法在 NAR 模型上的不足,並進行相應的改進;解碼演算法和利用預訓練模型則是非自迴歸文字生成模型中區別於 AR 生成的特殊模組,包括目標語句長度預測、非自迴歸預訓練等,這方面的工作旨在設計合理、有效的演算法來最大化地提升 NAR 生成模型的效果。這幾方面的聯絡如圖2所示。

圖2:非自迴歸機器翻譯模型的主要框架。其中涉及資料處理、模型改進、訓練準則、解碼方式、預訓練模型的利用等。

具體來說,上述五個方面的改進如下:

1. 資料層面進行的改進 ,包括利用知識蒸餾來生成資料、設計資料學習演算法等。利用預訓練 NAR 模型,基於知識蒸餾的方法將訓練集中的源語句進行翻譯,並將源語句和翻譯結果作為 NAR 模型的訓練集。這種方式可以減少訓練資料的多樣性,減輕 NAR 模型的訓練難度。請注意資料層面的方法是通用的方法,例如,基於知識蒸餾的方法被廣泛應用在文中介紹的大部分 NAR 生成模型中。

2. 模型層面進行的改進 ,包括設計迭代式模型、基於隱變數的模型以及增強解碼器模型結構等。其中,迭代式模型將原始一次解碼的 NAR 模型擴充套件成為多次迭代解碼的模型,這樣在進行每輪迭代時,上一輪迭代的結果可以作為目標語言端的依賴資訊,將一次解碼的難度分攤到多次迭代中,從而提升 NAR 模型的效果。與一次解碼的 NAR 模型相比,迭代式的模型翻譯效果更好,但也犧牲了一部分翻譯速度,是屬於 AR 模型和 NAR 模型的中間態。

3. 損失函式層面進行的改進 ,主要針對傳統交叉熵損失函式的問題,提出一系列改進方法,包括基於 CTC、n-gram、以及引入順序資訊的損失函式。其中,由於 n-gram 的方法針對傳統的交叉熵損失函式只能提供單詞級別的監督資訊而無法提供全域性資訊,研究員們提出了優化預測和目標之間 Bag of N-gram 差異的損失函式,以補充交叉熵損失函式中缺失的全域性資訊,以更好地對 NAR 模型進行優化。

4. 解碼演算法層面進行的改進 ,包括對 NAR 模型的長度預測模組進行改進,以及對傳統解碼演算法的改進。由於 NAR 模型無法像 AR 模型一樣隱式地在解碼過程中決定目標語句的長度,因此需要在解碼過程開始前就對目標語句的長度進行顯式預測。這個步驟十分重要,因為目標語句的長度是否匹配直接影響模型最終的翻譯效果。因此,類似自迴歸解碼中的 Beam Search,有模型提出了提升長度預測準確率的方法,如多個長度並行解碼等。這些方法也被廣泛應用在 NAR 模型中。

5. 利用預訓練模型的方法 ,包括利用自迴歸教師翻譯模型的方法,和利用單語大規模預訓練語言模型的方法。其中,由於 NAR 模型和 AR 模型結構相似,並且 AR 模型的翻譯準確度更高,因此很多方法提出利用預訓練的 AR 模型來額外監督 NAR 模型的訓練,包括在隱變數層面引入額外監督資訊,和基於課程學習的遷移學習方法等。

研究員們將文中討論的相關論文按照類別列在了表1中,供大家查閱。

表1:針對 NAT 模型5個方面的研究總結以及具體的相關工作

關於探索 NAR 的開放性問題和未來方向

NAR 除了在 NMT 中的應用之外,還在其它許多的任務中也得到了擴充套件應用,其中包括文字生成任務,如文字補全、摘要生成、語法糾正、對話、風格變化,語義解析任務,文字語音轉化任務,語音翻譯任務等等。研究員們在綜述文章中給出了一些具體例項的介紹,同時也給出了這些相關工作的實現與資源列表。

為了促進未來 NAR 的發展,研究員們對當前 NAR 產生的問題進行了總結,並對未來可能的方向進行了展望,具體包括:(1)如何能夠擺脫當下 NAR 嚴重依賴 AR 進行知識蒸餾的技術方案;(2)如何能夠降低迭代式 NAR 模型的計算複雜度以更好地關注純 NAR 模型;(3)動態的預測目標端文字的生成長度值得深入探索;(4)如何像 AR 模型一般將 NAR 模型擴充套件到多語言多工的環境中是需要進一步關注的;(5)如何對 NAR 模型進行更好的預訓練。以上這些都是具有研究前景的研究問題。

希望通過本篇綜述,在不同領域進行生成任務研究的學者們能夠對 NAR 生成有更全面的認識,並且激發創造更加先進的 NAR 模型,以促進 NAR 未來的發展,影響更廣闊的生成場景。

相關連結:

論文:

http://arxiv.org/pdf/2204.09269.pdf

GitHub:

http://github.com/LitterBrother-Xiao/Overview-of-Non-autoregressive-Applications

你也許還想看