国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

任務型對話系統(tǒng)中的自然語言生成研究進展綜述

2022-03-10 01:25:30覃立波黎州揚婁杰銘禹棋贏車萬翔
中文信息學報 2022年1期
關鍵詞:單詞模板領域

覃立波,黎州揚,婁杰銘,禹棋贏,車萬翔

(哈爾濱工業(yè)大學 計算學部,黑龍江 哈爾濱 150001)

0 引言

任務型對話系統(tǒng)能夠幫助用戶完成特定任務,所以近年來受到學術界和工業(yè)界的廣泛關注。傳統(tǒng)的模塊化任務型對話系統(tǒng)[1]主要包括四個模塊: 自然語言理解模塊[2-4];對話狀態(tài)跟蹤模塊[5-7];策略學習模塊[8-10]和自然語言生成模塊(NLG)[11-13]。本文主要關注任務型對話系統(tǒng)中的NLG模塊(ToDNLG),其是模塊化任務型對話系統(tǒng)中最重要的模塊之一,用于將系統(tǒng)生成的對話動作轉(zhuǎn)化為用戶可以理解的自然語言回復。如表1所示,輸入包含對話動作inform和槽值對(name=Blue Spice,priceRange=low,familyFriendly=yes),ToDNLG的作用是將輸入轉(zhuǎn)換為對應的自然語言回復: “The Blue Spice is a low cost venue. It is a family friendly location.”

表1 樣例示例

近年來,隨著深度神經(jīng)網(wǎng)絡和預訓練語言模型的發(fā)展,ToDNLG的研究已取得了重大突破。但目前仍缺乏對ToDNLG現(xiàn)有方法和最新趨勢的全面調(diào)研。為了回顧現(xiàn)有進展,并幫助研究人員在未來開展新的工作,本文首次對ToDNLG近10年來的發(fā)展進行了全面的調(diào)研和總結(jié)。而且,盡管目前ToDNLG模型在標準數(shù)據(jù)集上取得了顯著效果, 但在實際應用中仍有許多問題需要解決。例如,現(xiàn)有神經(jīng)模型無法對生成的回復進行解釋,也無法在低資源場景下獲得滿意的效果。因此,本文對ToDNLG的前沿和挑戰(zhàn)進行了詳細總結(jié),也為ToDNLG后續(xù)研究帶來了新的理解和思考。最后,目前ToDNLG研究領域中沒有一個開源的資源庫來幫助研究人員快速了解進展,故本文也構(gòu)建了ToDNLG模塊的相關研究資源庫。我們希望該資源庫能夠促進該領域的發(fā)展。

綜上所述,本文貢獻可以總結(jié)為以下幾點:

(1) 整體總結(jié): 據(jù)我們所知,本文的工作第一次對ToDNLG方向近10年的發(fā)展進行詳細總結(jié),包括非深度學習年代的ToDNLG模型和基于深度學習的ToDNLG模型。

(2) 前沿和挑戰(zhàn): 本文討論并分析了現(xiàn)有ToDNLG的局限性,并且探討了一些新的前沿領域和面臨的挑戰(zhàn)。供研究人員了解ToDNLG領域的最新進展、前沿和挑戰(zhàn)。

(3) 豐富的資源: 我們收集了關于ToDNLG的豐富資源,包括開源實現(xiàn)、數(shù)據(jù)集和論文清單(1)https://github.com/yizhen20133868/Awesome-TOD -NLG-Survey。據(jù)我們所知,這是首個ToDNLG社區(qū)的開源資源庫。。

本文組織結(jié)構(gòu)如下: 第1節(jié)概述ToDNLG的背景;第2節(jié)介紹ToDNLG現(xiàn)有工作的全面調(diào)研成果;第3節(jié)討論新的前沿領域及其挑戰(zhàn);第4節(jié)對全文進行總結(jié)。

1 背景

1.1 任務定義

M={D,(s1,v1),…,(sn,vn)}

(1)

ToDNLG的輸出是將輸入的MR經(jīng)過一系列變化,轉(zhuǎn)換成句法正確、語義準確、語句流暢的自然語言回復y=[y1,…,yT],其中,yi是回復y中的第i個詞,T是生成回復的長度。綜上所述,ToDNLG任務的形式化定義如式(2)所示。

y=NLG(M)

(2)

1.2 數(shù)據(jù)集描述

目前深度學習方法中常用到的數(shù)據(jù)集有Hotel[11],Restaurant[11], Laptop[12], Television[12]和E2E[14], 具體描述如下:

Hotel和Restaurant數(shù)據(jù)集的背景為在舊金山市的酒店、餐廳預訂; Laptop和Television數(shù)據(jù)集的背景為購買筆記本電腦、電視產(chǎn)品;E2E數(shù)據(jù)集的背景為餐廳預訂。

以上數(shù)據(jù)集詳細統(tǒng)計如表2所示。

表2 數(shù)據(jù)集統(tǒng)計

1.3 常用指標

ToDNLG任務的常用指標為BLEU[15]和Slot Error Rate(ERR)。

? BLEU: BLEU指標是N-gram相似度的指標,用來衡量生成句子的流暢度。

? Slot Error Rate (ERR): 用來衡量生成句子與輸入的slot-pairs的匹配程度,如式(3)所示。

(3)

其中,N是MR中所含槽值對的數(shù)量,p和q分別是生成回復中缺少和多余的槽位數(shù)量。

2 方法分類

任務型對話中的自然語言生成方法可以劃分為傳統(tǒng)方法和深度學習方法兩大類。其中傳統(tǒng)方法包括: (1)基于模板的方法; (2)基于句子規(guī)劃的方法; (3)基于類的方法; (4)基于短語的方法。深度學習方法包括: (1)基于解碼器的方法; (2)基于序列到序列的方法; (3)基于Transformer的方法。

2.1 傳統(tǒng)方法

2.1.1 基于模板的方法

基于模板的方法(Template-based)是一種根據(jù)人工設計的模板直接生成自然語言的方法。每個模板分為兩部分: (1)固定的自然語言模板; (2)需要根據(jù)對話動作中的槽值進行填充的槽位。此方法生成語言的步驟如下: 通過輸入的對話動作選擇合適的模板,再根據(jù)對話動作中的信息填充槽位。

基于模板的方法是最樸素的ToDNLG方法,在早期的對話系統(tǒng)中比較常見。Reiter[16]首次在論文中提出了基于模板的概念。Axelrod等人[17]在IBM公司的航班信息系統(tǒng)中加入基于模板的對話系統(tǒng)。Baptist等人[18]在開發(fā)對話系統(tǒng)GENESIS-Ⅱ時使用基于模板的方法提高外語和非傳統(tǒng)語言的生成質(zhì)量。Becker等人[19]將詞匯化擴展到整個短語,并提出了基于模板的部分派生方法。

該方法的優(yōu)缺點總結(jié)如下:

優(yōu)點:簡單、高效,產(chǎn)生的回復精準、易控制且質(zhì)量較高(依賴于模板集的質(zhì)量)。

缺點:可移植性差,不同的領域需要編寫不同的模板,人工編寫和維護的工作量較大。

2.1.2 基于句子規(guī)劃的方法

基于句子規(guī)劃的方法(Plan-based)通過引入句法樹的結(jié)構(gòu),自動加入語言結(jié)構(gòu)的信息,使得生成的句子更加流暢?;诰渥右?guī)劃的方法包括三個模塊: (1)句子規(guī)劃生成模塊; (2)句子規(guī)劃排序模塊; (3)表層實現(xiàn)器模塊。

句子規(guī)劃生成模塊:句子規(guī)劃生成模塊包含一系列人工設置的語句合并操作規(guī)則,這些合并操作可以將一系列較低層的謂詞變元表示逐層地組合成更高層的深層句法結(jié)構(gòu)。句子規(guī)劃通常以句子規(guī)劃樹的形式呈現(xiàn)。句子規(guī)劃樹是二叉樹,內(nèi)部結(jié)點表示語句合成操作。句子規(guī)劃生成模塊會先將MR進行一些可能的排序,而后將其作為句子規(guī)劃樹的葉子節(jié)點,并轉(zhuǎn)化為基本短句。最后再層級地加入作為非葉子節(jié)點的語句合成操作,從而生成不同的句子規(guī)劃樹。

句子規(guī)劃排序模塊: 此模塊的任務是對句子規(guī)劃生成模塊生成的一系列句子進行排序,并將得分最高的句子送給最后的表層實現(xiàn)模塊進行自然語言生成。排序器的具體實現(xiàn)通常使用RankBoost算法[20],這種方法可以進行自動訓練和排序,將最好的句子規(guī)劃輸入下一個模塊。

表層實現(xiàn)器模塊: 此模塊是將接收到的上一模塊輸出的句子規(guī)劃轉(zhuǎn)換成自然語言形式的最終回復。轉(zhuǎn)換過程是基于各個語句合并操作的規(guī)則,在句子規(guī)劃樹上,自底向上、逐層地將所有子節(jié)點合并成父節(jié)點,最終生成自然語言回復。

在基于句子規(guī)劃的方法中,Reed等人[21]首次提出了句子規(guī)劃概念,構(gòu)造了簡單的分層規(guī)劃框架;Reed[22]總結(jié)了基于句子規(guī)劃方法顯著性的含義和實現(xiàn)。Walker等人[20]提出了SPoT結(jié)構(gòu),將基于規(guī)劃的方法分為了隨機句子規(guī)劃生成器和排序器,并提出了基于反饋自動訓練的方法,提升了方法的效果。Stent等人[23]基于SPoT為對話系統(tǒng)構(gòu)建句子規(guī)劃器時,引入了更多的修辭關系組合,以建模句子內(nèi)部的復雜信息。Fran?ois等人[24]在處理對話系統(tǒng)時,將基于句子規(guī)劃和基于模板的方法結(jié)合起來,并使訓練過程可訓練,因而模型能自動適應特定的領域。

該方法的優(yōu)缺點總結(jié)如下:

優(yōu)點:基于句子規(guī)劃的方法使用了句法樹,可以建模和生成復雜的語言結(jié)構(gòu)。

缺點:同樣需要大量的領域知識,可移植性和可拓展性差,對于新領域需要大量的人工工作,且效果并不一定優(yōu)于基于模板的方法。

2.1.3 基于類的方法 (Class-based)

基于類的方法(Class-based)是一種統(tǒng)計方法,使用語言模型進行自然語言生成。此方法先構(gòu)建話語類(Utterance Class)和單詞類(Word Class)的集合,并為語料庫中的語料標注話語類和單詞類,然后將處理好的語料庫依次輸入兩個模塊: (1)內(nèi)容規(guī)劃模塊,(2)表層生成模塊。

內(nèi)容規(guī)劃模塊:此模塊的輸入是系統(tǒng)回復的話語類別,輸出是系統(tǒng)回復中應包含的單詞類數(shù)量及應包含的單詞類。該模塊使用一個雙階段的語言模型來決定回復中應該包含哪些單詞類。

在第一個階段中,模型根據(jù)給定的話語類別統(tǒng)計出單詞類的概率分布P(n|c),其中,c是待生成的系統(tǒng)回復的話語類別,n是系統(tǒng)回復應該包含的單詞類的數(shù)量,再通過概率分布預測本句應該包含的單詞類的數(shù)量。在第二個階段中,使用bi-gram語言模型,單詞類集合的概率分布為P(Sn|Sn-1),其中,Sn-1是前一條語句的單詞類集合,Sn是待預測的當前語句的單詞類集合。根據(jù)前一條語句中的單詞類集合的概率分布預測系統(tǒng)回復中應該包含的單詞類,參數(shù)估計一般使用最大似然法。為了減少待估計的參數(shù)數(shù)量,通常會做一些獨立性假設,將估計單詞類集合轉(zhuǎn)化為估計P(si|sk),其中,si、sk是單個單詞類別;i,k分別是預測單詞類集合和前一條語句中單詞類集合的下標。

表層生成模塊: 此模塊的任務是使用語言模型隨機生成回復。訓練階段,先對語料進行去詞匯化(將單詞替換成相應的單詞類),再對每一個話語類別,使用去詞匯化后的語料建立N-gram語言模型。針對某一個話語類別生成回復的時候,使用相應類別的語言模型,用集束搜索的策略生成多個回復,再結(jié)合內(nèi)容規(guī)劃模塊的結(jié)果,設計一些啟發(fā)式的標準,對語言模型生成的多個回復進行打分,選擇最高分的回復。最后用真實的值來填充其中的單詞類,得到最終的自然語言回復。

基于類的方法由Oh等人[25]首次提出,他們在表層生成中使用了語言模型,減少了標記工作,增加了生成語言的速度。Barzilay等人[26]受到生物信息學的啟發(fā),將多序列對齊技術應用于映射字典獲取問題,提高結(jié)果字典的準確性和表達能力,而且多種語言表達的存在有助于系統(tǒng)學習多種表達概念的方式。Belz[27]使用基于類的自然語言生成模型,半自動地創(chuàng)建了五個不同版本的天氣預報生成器,且最好的生成器性能超過了專家預測。

該方法的優(yōu)缺點總結(jié)如下:

優(yōu)點:相比于之前的方法,基于類的方法使用了語言模型,在生成結(jié)果的流暢度、多樣性上都有明顯提升。

缺點:每個領域都需要手工創(chuàng)建類別集合,可移植性和可拓展性差。此外,語言模型的計算效率低,稀疏問題未能得到很好的解決,且該方法的獨立性假設過強。

2.1.4 基于短語的方法

基于短語的方法 (Phrase-based)是一種基于統(tǒng)計的數(shù)據(jù)驅(qū)動型方法,將人工工作從模板的設計和維護轉(zhuǎn)移到數(shù)據(jù)標注上。該方法在訓練前需要對訓練集中的句子以短語為單位進行對齊標注;訓練時,將標注的結(jié)果,即一系列無序的強制語義堆(Mandatory Semantic Stack)送給語言生成模塊生成自然語言回復?;趯R標注數(shù)據(jù)進行語言生成比較簡單,比較通用的方法是使用動態(tài)貝葉斯網(wǎng)絡[28]生成回復。主要包括數(shù)據(jù)對齊標注和語言生成模塊。

數(shù)據(jù)對齊標注:基于短語的方法需要對齊標注的數(shù)據(jù),即用一個基于堆的語義表達去約束語義概念序列。每一個句子會被自動映射到一個短語層次的語義堆(Phrase-Level Semantic Stacks)。

語言生成模塊:此模塊的任務是輸入一個含有多個強制語義堆的集合,生成最可能的回復序列。

基于短語的方法由Fran?ois等人[28]首次提出,他們構(gòu)造了一個統(tǒng)計語言生成器BAGEL,并使用貝葉斯網(wǎng)絡進行學習,在小部分數(shù)據(jù)訓練中和人類評估的效果接近。Du?ek等人[29]提出的基于句法的方法是對基于短語方法的改進,它可以使模型利用大規(guī)模來對齊的標注數(shù)據(jù)。Lampouras等人[30]加入了模仿學習的方法進行結(jié)構(gòu)性預測,并調(diào)整了局部最優(yōu)學習搜索框架,在三個數(shù)據(jù)集上都達到了與最優(yōu)方法相近的結(jié)果。

該方法的優(yōu)缺點總結(jié)如下:

優(yōu)點:該方法是數(shù)據(jù)驅(qū)動的方法,不依賴手工寫成的生成器,可以用較少的參數(shù)建模長距離的依賴關系和特定領域的慣用短語。

缺點:需要大量的語義對齊處理,難以移植和拓展。標注數(shù)據(jù)的方法對結(jié)果影響很大,需要進行大量標注方式的嘗試。

2.2 深度學習方法

隨著深度學習技術的迅速發(fā)展,ToDNLG模塊的研究趨勢也從需要大量特征工程的傳統(tǒng)方法中轉(zhuǎn)移到基于深度學習的方法上來。

深度學習方法主要包括: (1)基于解碼器(Decoder-based)的方法; (2)基于序列到序列(Seq2Seq-based)的方法; (3)基于Transformer的方法。其中基于解碼器的方法首次開啟了ToDNLG深度學習時代,基于序列到序列的方法首次借鑒了機器翻譯領域的相關技術來提高性能,而基于Transformer的方法很好地解決了之前自回歸方法因無法并行而效率低下的問題,以及模型上界不高的缺點。

接下來我們將詳細描述這三種方法及其優(yōu)缺點。

2.2.1 基于解碼器的方法

如圖1(a)所示,基于解碼器的方法使用簡單的編碼方式(如One-hot向量)來表示輸入,不需要通過編碼器將輸入進一步變化。而是直接使用RNN構(gòu)造的解碼器[31]來生成回復。此類方法通常分為語言生成模塊和重排序模塊。

圖1 深度學習方法結(jié)構(gòu)圖

語言生成模塊的輸入為語義表示,輸出是多個可能的去詞化(delexicalisation)的語句。該模塊輸入MR表示的編碼,應用RNN及其衍生的神經(jīng)網(wǎng)絡結(jié)構(gòu),如LSTM、GRU[31-33]等,使用隨機生成或集束搜索的方式輸出多個可能的句子。而重排序模塊的任務是將生成的多個去詞化語句進行打分并排序,選出最好的語句并輸出語句。一般使用CNN或者Backward RNN進行重排序。

Wen等人[34]首次將基于解碼器的方法應用到ToDNLG任務中,提出了Recurrent Generation Model,如圖2所示。Wen等人使用one-hot編碼分別將對話動作DA和slot type進行編碼,然后再將所有生成的one-hot向量拼接在一起,作為輸入的MRs表示。為了能讓模型在生成時能考慮到輸入的MR語義信息,他們對RNN cell進行了修改,使其能夠接受MR表示中的信息。在每個生成的時刻,生成的詞表示是基于去詞化后總詞表的one-hot向量,并使用一個門控向量來控制每個時刻接收多少MR信息。生成多個可能的句子后,使用CNN或者Backward RNN進行重排序。當使用CNN時,一般的做法是經(jīng)過卷積層、池化層和全連接層,生成表示候選句所含MR表示的multi-one-hot向量。這個multi-one-hot向量以模型輸入的MR表示作為參考進行評分。而Backward RNN的方法會將輸入的去詞化語句逆序輸入到RNN模塊,通過計算后向RNNLM的對數(shù)似然進行重排序。Wen等人[11]基于Recurrent Generation Model,進一步對LSTM cell進行了改進,提出了SC-LSTM模型。SC-LSTM cell引入了語義控制模塊。對于每個時刻輸入的語義信息,使用GloVe詞向量[35]編碼,然后根據(jù)當前輸入的單詞和上一時刻的隱層來得到門控值,通過門控的方式傳遞,更新當前的語義控制向量。而語義控制向量則會參與到LSTM cell的當前狀態(tài)計算中,從而達到語義信息控制的目的。

該方法的優(yōu)缺點總結(jié)如下:

優(yōu)點:開創(chuàng)了在ToDNLG使用神經(jīng)網(wǎng)絡方法的先河,同時使用了語言模型和神經(jīng)網(wǎng)絡方法,生成的語句具有多樣性,且減少了人工特征干預。

缺點:使用語義控制的one-hot編碼含有的信息較少,設計較為簡單;生成語句的標準太簡單,搜索空間小,有時無法得到較好的結(jié)果。此外,模型無法應對二值化的或者無法去詞化的slot情況。

2.2.2 基于序列到序列(Seq2Seq)的方法

隨著Seq2Seq類的模型在機器翻譯等領域取得了較好的效果[36-38],近年來有一些工作開始探索Seq2Seq在任務型對話自然語言生成中的應用,如圖1(b)所示。

該類方法在編碼器端,對于輸入的MR,DA使用one-hot向量表示,而對于每個槽值對,對它的槽位和槽值分開進行編碼操作,然后將它們的表示相加得到這個槽值對的表示。在解碼時,采用自回歸的方式,引入注意力機制,生成回復。

Du?ek等人[39]探索了用Seq2Seq方法生成句子規(guī)劃樹和直接生成自然語言回復這兩種方式的優(yōu)劣性,如圖3所示。其工作首先對輸入的MR進行處理,對于每個槽值對,都將對話動作表示加入其中,形成DA-slot type-slot value三元組,然后將這些三元組拼接形成輸入序列。編碼器使用LSTM編碼,解碼器使用LSTM結(jié)構(gòu)和注意力(attention)機制進行解碼,使用句子級別的注意力分數(shù)與每個詞的加權和,生成自然語言。實驗結(jié)果表明,使用Seq2Seq方法比直接生成自然語言回復的方式更好。Wen等人[40]參考內(nèi)容選取領域的研究,提出了適應于ToDNLG的一種基于注意力機制的Encoder-Decoder架構(gòu),取得了比基于解碼器的方法更好的效果。Du?ek等人[41]從他們的上一個模型出發(fā),引入了語言模型的信息。他們在保持模型總體框架不變的情況下,對輸入進行了改進,將用戶的話語拼接在輸入的MR三元組前面,作為前置的上文;且新增加了一個上文編碼器,單獨對用戶話語進行編碼。然后將兩個編碼器的結(jié)果進行拼接得到解碼器的輸入。Tran等人[42]對Wen等人[40]的工作的了進一步的修改,他們在Encoder與Decoder之間增加了一個聚合模塊Aggregator。Aggregator的目標是更好地利用語義信息對當前時刻輸入的詞進行處理。Agarwal等人[43]提出了Char2Char的生成模型,將MR轉(zhuǎn)為字母級別的輸入,從而免去了去詞化步驟,輸出時也采用了字母級別的生成。Juraska等人[44]提出了Slug2Slug模型,認為槽位與回復語句中片段的語義對齊十分重要,他們將這個對齊引入到數(shù)據(jù)預處理和重排序模塊中,在E2E數(shù)據(jù)集上取得了當時的最佳效果。

圖3 Du?ek等人文中的模型結(jié)構(gòu)圖及示例

該方法的優(yōu)缺點總結(jié)如下:

優(yōu)點:相較于Decoder-based模型,Seq2Seq模型通過注意力機制的encoder-decoder架構(gòu),能夠更好地編碼MR輸入,并且將輸入中包含的語義信息加入到解碼階段中,獲得了較好的效果。

缺點:對于MR輸入,只將其視為一個序列進行編碼,而忽略了其中的結(jié)構(gòu)化信息。Encoder-decoder采用的自回歸建模范式無法并行化處理,導致模型訓練的時間較長。

2.2.3 基于Transformer的方法

隨著Transformer結(jié)構(gòu)的提出和發(fā)展,其在ToDNLG生成領域的各種變體也受到了廣泛關注,如圖1(c)所示。

圖4 Chen等人文中的模型結(jié)構(gòu)圖及示例

Chen等人[45]提出了SC-HDSA,如圖4所示。之前關于MR的利用中,大部分工作忽略了MR之間的關系,將MR視為序列輸入。而Chen等人關注MR的結(jié)構(gòu)信息,使用了一個圖式的結(jié)構(gòu)來掌握語義信息,將MR分為領域—對話動作—槽位三層結(jié)構(gòu)。在解碼時,聯(lián)合帶有多抽頭注意力的分層Transformer語言生成結(jié)構(gòu)。標準的Transformer結(jié)構(gòu)將不同的多抽頭輸出拼接成一個輸出向量。SC-HDSA模型則是在每一層根據(jù)輸入的分層MR結(jié)構(gòu),激活特定的多抽頭,從而更好地控制信息傳遞的方向,獲得了較好的效果。Peng等人[46]提出SC-GPT模型,將MR平鋪輸入到GPT預訓練模型中,使用序列到序列的方法直接獲得結(jié)果。Kale等人[47]認為預訓練模型在預訓練階段使用的語料和微調(diào)時語料中的MR結(jié)構(gòu)化輸入有所區(qū)別,他們嘗試使用了基于模板的轉(zhuǎn)化方式。使用Text-to-Text Transfer Transformer(T5)構(gòu)造的encoder-decoder模型進行訓練,獲得了比SC-GPT模型更好的效果。

該方法的優(yōu)缺點總結(jié)如下:

優(yōu)點:Transformer-based的模型可以通過預訓練機制提高模型建模語言的能力,跨時序的注意力機制能夠?qū)Y(jié)構(gòu)化的MR輸入進行更好的處理,達到了目前最好的效果。

缺點:基于Transformer-based的模型需要更多的數(shù)據(jù)進行訓練,并且基于預訓練Transformer-based的模型需要更多的計算資源。

基于深度學習方法的ToDNLG實驗結(jié)果總結(jié)如表3所示。

表3 基于深度學習方法的ToDNLG實驗結(jié)果總結(jié)

3 前沿及挑戰(zhàn)

3.1 跨領域ToDNLG

由于深度學習和預訓練模型的發(fā)展,現(xiàn)有ToDNLG已經(jīng)取得了很好的性能。但現(xiàn)有的ToDNLG模型依賴于大量的標注數(shù)據(jù)進行訓練,限制了它們擴展領域的靈活性。且在真實應用場景中,為每個新領域收集豐富的標注數(shù)據(jù)集是不可取的。因此跨領域ToDNLG研究越來越受到關注。跨領域ToDNLG旨在利用多個源領域下的訓練語料來幫助學習一個或多個目標領域的自然語言生成。

Wen等人[40]首次進行多領域ToDNLG的探索,他們提出首先將模型在合成的跨領域數(shù)據(jù)集上進行訓練,然后在領域內(nèi)數(shù)據(jù)集上進行微調(diào)的做法。這個方法在一定程度上能夠?qū)崿F(xiàn)多領域之間的知識遷移。Tran等人[48]提出了一個對抗式訓練方法,加入多個適應步驟,并構(gòu)建了相似度評價標準產(chǎn)生域不變特征,幫助生成器從源域到目標域進行有效的學習。Tseng等人[49]利用條件變分自動編碼器架構(gòu),在生成過程中用句子層面的全局隱變量信息來改進基于解碼器的模型。當測試在遷移領域內(nèi)傳達所需信息的能力時,模型顯示出很好的效果。

跨領域的ToDNLG主要面臨的挑戰(zhàn)如下:

領域數(shù)量龐大: 在應用場景中,領域數(shù)量會迅速擴增,如何在巨大的領域之中遷移有利的領域知識,而避免有害的負遷移是一個值得探索的問題。

Zero-shot跨領域遷移: 當目標領域沒有任何標注語料,如何建模源領域和目標領域的相關性進行有效的遷移是一個挑戰(zhàn)。

3.2 可解釋ToDNLG

如今,端到端神經(jīng)網(wǎng)絡已經(jīng)在ToDNLG中取得了很好的表現(xiàn)。然而,現(xiàn)有的模型都采用神經(jīng)網(wǎng)絡,往往被視為一個黑盒結(jié)構(gòu)。基于神經(jīng)網(wǎng)絡的ToDNLG模型無法對每個單詞的生成產(chǎn)生合理可信的解釋,不具備良好的可解釋性。

為了解決這個問題,Li等人[50]提出了一個新的框架——異構(gòu)渲染機(HRM)。HRM由一個渲染器集和一個模式切換器組成。在每一個生成步驟均顯式地判斷每個生成單詞的類型。通過這個過程,模型可以清楚地解釋每一個單詞的來源和生成過程。該工作邁出了可解釋性ToDNLG的第一步,非常具有啟發(fā)意義。

可解釋性ToDNLG主要面臨的挑戰(zhàn)如下:

性能損失: HRM盡管在一定程度上提高了模型的可解釋性,但是也降低了準確率,如何在提高可解釋性的同時又不降低模型的性能是一個有意義的課題。

端到端訓練: 現(xiàn)有可解釋性模型為了顯式地解釋每一步生成,無法進行端到端的訓練。如何進行整體端到端的訓練是一個值得被探索的研究方向。

3.3 多任務學習

多任務學習指的是通過聯(lián)合學習多個相關的任務來提高各個任務的學習方法,已經(jīng)在自然語言處理領域取得了很好的效果。近些年來,在ToDNLG領域,也有一些研究人員利用多任務學習去學習其他任務的知識,并將其遷移到ToDNLG上來提高ToDNLG的性能。

Zhu等人[51]提出NLG-LM架構(gòu),同時訓練ToDNLG和語言模型(LM),借助同時訓練語言模型來保證生成流暢的句子。Su等人[52]提出使用對偶監(jiān)督學習來同時建模NLU和ToDNLG任務,利用ToDNLG的對偶任務NLU的知識來提升NLG的性能。

多任務學習ToDNLG主要面臨的挑戰(zhàn)如下:

有效遷移:如何找到合適相關的其他任務來完成多任務學習,從而進行有效遷移,是一個挑戰(zhàn)。

高效率:多任務學習往往通過犧牲時間效率來提高性能。如何利用多任務學習的優(yōu)勢,又保證單任務學習的時間效率值得被關注。

3.4 低資源ToDNLG

目前基于神經(jīng)網(wǎng)絡的ToDNLG模型都依賴于大量的標注數(shù)據(jù)進行訓練,但是在真實應用中,很難對每一個新的場景去標注充足的數(shù)據(jù)。因此,如何在少量訓練數(shù)據(jù)下進行ToDNLG模型的訓練,也能取得不錯的效果是目前的一個研究趨勢。

Peng等人[46]提出SC-GPT,直接利用預訓練模型GPT來進行小樣本ToDNLG訓練。將MR展平為序列作為輸入來生成回復。該方法是對小樣本ToDNLG領域的首次探索。Xu等人[53]認為,盡管SC-GPT模型在小樣本ToDNLG上的應用取得了一定的效果,但模型沒有進一步提升效果的能力。因此想嘗試使用數(shù)據(jù)增廣的方式來提高小樣本ToDNLG的效果。將自訓練的神經(jīng)檢索模型與小樣本NLU結(jié)合,能夠自動地從開放域的文本中自動創(chuàng)建ToDNLG的數(shù)據(jù)。該方法與前人的方法是正交的,可以將這些新數(shù)據(jù)與前人方法結(jié)合來獲得更好的效果。

低資源ToDNLG主要面臨的挑戰(zhàn)如下:

結(jié)構(gòu)融入:低資源場景下,如何有效融入ToDNLG的結(jié)構(gòu)信息來提高性能,目前還沒有得到足夠的關注。

泛化性:低資源場景下,如何使訓練的ToDNLG模型具有良好的泛化性是一個值得關注的課題。

3.5 復雜ToDNLG

目前的ToDNLG模型均只能考慮較為簡單的場景: 即輸入單個MR,也就是包含一個對話動作和與其對應的槽值對來進行對話系統(tǒng)回復的生成。但是現(xiàn)實場景較為復雜,在生成回復時,往往可能需要考慮多個MR輸入,也就是多個對話動作和對應的槽值對,這樣能夠滿足一些真實復雜場景的需求。近些年來,也有一些研究人員在該復雜ToDNLG方向進行了探索。

Balakrishnan等人[54]首次考慮了多個MR輸入ToDNLG,提出了一個新的數(shù)據(jù)集,對多個MR進行處理,包括定義這些MR之間的關系,如約束關系、并列關系等。這篇文章是復雜ToDNLG方向的首個探索,具有推動該領域發(fā)展的意義。

復雜ToDNLG主要面臨的挑戰(zhàn)如下:

復雜建模:如何有效地建模多個MR之間的關系是一個待解決的挑戰(zhàn)。

4 總結(jié)

本文完成了任務型對話系統(tǒng)中的自然語言生成模塊(ToDNLG)全面調(diào)研?;趯ψ罱ぷ鞯南到y(tǒng)分析,本文首先對近10年的ToDNLG方法進行了總結(jié)歸納。此外,考慮到最近ToDNLG系統(tǒng)的局限性,本文分析并討論了該研究領域的發(fā)展趨勢。最后,本文提供一個開源網(wǎng)站,包括ToDNLG數(shù)據(jù)集、論文、基線項目,希望該網(wǎng)站能夠促進ToDNLG社區(qū)的發(fā)展。

猜你喜歡
單詞模板領域
鋁模板在高層建筑施工中的應用
鋁模板在高層建筑施工中的應用
單詞連一連
領域·對峙
青年生活(2019年23期)2019-09-10 12:55:43
看圖填單詞
看完這些單詞的翻譯,整個人都不好了
鋁模板在高層建筑施工中的應用
城市綜改 可推廣的模板較少
新常態(tài)下推動多層次多領域依法治理初探
肯定與質(zhì)疑:“慕課”在基礎教育領域的應用
绥德县| 隆子县| 化德县| 绥中县| 延边| 南宁市| 穆棱市| 宜川县| 霸州市| 舞阳县| 井冈山市| 喀喇| 溧水县| 肥西县| 宜昌市| 永德县| 昌平区| 孙吴县| 朝阳市| 昌图县| 高邑县| 曲松县| 武隆县| 惠州市| 长岛县| 阿鲁科尔沁旗| 安宁市| 临邑县| 万荣县| 武鸣县| 大城县| 嘉鱼县| 延庆县| 杭州市| 安陆市| 新河县| 大田县| 南阳市| 新干县| 永丰县| 扎兰屯市|