亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        SPDR:基于片段預(yù)測的多輪對話改寫

        2022-11-07 10:12:26陳建文
        中文信息學(xué)報(bào) 2022年9期
        關(guān)鍵詞:指代編碼器單詞

        朱 帥,陳建文,朱 明

        (華中科技大學(xué) 電子信息與通信學(xué)院,湖北 武漢 430074)

        0 引言

        對話系統(tǒng)近年來受到越來越廣泛的關(guān)注和研究,在工業(yè)界主要存在兩種應(yīng)用形態(tài),即客服機(jī)器人(如阿里小蜜[1]、支付寶助理等)和聊天機(jī)器人(如天貓精靈、小愛同學(xué)、微軟小冰[2]等)。當(dāng)前的對話系統(tǒng)在處理單輪對話問題時(shí)效果顯著,而在處理與上文相關(guān)的用戶問題時(shí)則表現(xiàn)比較一般,主要原因在于人們的日常對話中每個(gè)輪次之間并非孤立的,每一輪對話都可能會(huì)存在指代(pronoun)或者省略(ellipsis)的情況,這時(shí)如果只基于用戶當(dāng)前輪的輸入進(jìn)行回復(fù),則會(huì)忽略掉上文的一些重要信息,導(dǎo)致回復(fù)結(jié)果不符合上下文語境。文獻(xiàn)[3]對2 000條日常對話數(shù)據(jù)進(jìn)行過統(tǒng)計(jì),發(fā)現(xiàn)其中存在33.5%的指代和52.4%的省略現(xiàn)象,指代和省略是導(dǎo)致多輪對話場景下回復(fù)質(zhì)量較差的主要原因。

        近來,多輪對話改寫任務(wù)得到越來越多的研究,這個(gè)任務(wù)的目的是根據(jù)用戶的歷史輸入對當(dāng)前輸入進(jìn)行改寫,確保改寫之后的句子能夠表達(dá)更完整的語義信息,將對話系統(tǒng)中的多輪問題轉(zhuǎn)化為單輪問題。多輪對話改寫實(shí)際上主要想要解決兩個(gè)問題,即指代消解和省略補(bǔ)全。表1展示了兩個(gè)常見的多輪對話場景。場景一是一個(gè)典型的任務(wù)型對話場景,最后一輪用戶咨詢穿衣建議,但是省略了問題的背景,通過補(bǔ)全后就可以知道用戶咨詢的地點(diǎn)是“杭州”,依據(jù)是“今天天氣”這兩個(gè)重要信息。場景二是一個(gè)常規(guī)的閑聊對話,通過對最后一輪進(jìn)行補(bǔ)全就可以知道“他”指代的對象是“周杰倫”,用戶表達(dá)的情感是“喜歡”。由此可見,通過上文對用戶當(dāng)前輸入進(jìn)行改寫,使用一句較簡短的話就可以表達(dá)完整的語義信息,便于機(jī)器人理解并給出合適的回復(fù)。

        表1 多輪對話場景改寫示例

        多輪對話改寫任務(wù)提出以來,由于和指代消解任務(wù)的相關(guān)性,多采用指代消解的方法來解決。最近有研究[3-5]相繼提出采用指針生成網(wǎng)絡(luò)的方法來解決多輪對話改寫問題,開辟了一種新的思路。指針生成網(wǎng)絡(luò)首先通過編碼器編碼,然后使用解碼器采用束搜索(beam search)的方法逐字生成,本質(zhì)上是一個(gè)串行的過程,效率問題比較明顯。

        受到BERT[6]模型解決閱讀理解任務(wù)方法的啟發(fā),本文提出采用基于片段預(yù)測的模型SPDR 來解決多輪對話改寫問題。一方面,避免了編碼器-解碼器(encoder-decoder)網(wǎng)絡(luò)耗時(shí)較長的問題;另一方面,可以更方便地使用目前主流的預(yù)訓(xùn)練模型,只需要少量的數(shù)據(jù)就可以得到比較好的效果表現(xiàn)。該模型使用BERT 作為編碼器,將對話歷史信息和用戶當(dāng)前輪的輸入進(jìn)行拼接,作為模型輸入,預(yù)測當(dāng)前輪輸入中指代或者省略的內(nèi)容在對話歷史信息中對應(yīng)的起始位置和結(jié)束位置,最后通過后處理對用戶當(dāng)前輸入進(jìn)行補(bǔ)全。實(shí)驗(yàn)表明,該模型在Restoration-200K 數(shù)據(jù)集以及客服場景下的業(yè)務(wù)數(shù)據(jù)上都得到了更優(yōu)的結(jié)果,同時(shí)大大提高了推理速度。

        此外,受到文獻(xiàn)[7-8]工作的啟發(fā),本文提出了兩種新的預(yù)訓(xùn)練任務(wù),即分類任務(wù)(判斷當(dāng)前輸入語義是否完整)和檢測任務(wù)(判斷當(dāng)前輸入哪個(gè)位置缺少內(nèi)容),來提升SPDR 模型的表現(xiàn),實(shí)驗(yàn)表明,在經(jīng)過兩種任務(wù)預(yù)訓(xùn)練后的模型上微調(diào),效果提升明顯。最后,本文根據(jù)改寫任務(wù)數(shù)據(jù)的特點(diǎn),提出了一種新的評價(jià)指標(biāo)sEMr來評價(jià)對話改寫模型的效果。

        本文組織結(jié)構(gòu)如下:第1節(jié)介紹對話改寫任務(wù)的相關(guān)研究及預(yù)訓(xùn)練模型的研究進(jìn)展;第2節(jié)介紹基于BERT和指針網(wǎng)絡(luò)的SPDR模型的細(xì)節(jié)和結(jié)構(gòu);第3節(jié)介紹模型新的評價(jià)指標(biāo)、實(shí)驗(yàn)設(shè)計(jì)及實(shí)驗(yàn)結(jié)果;第4節(jié)總結(jié)本文的工作,并對未來工作進(jìn)行展望。

        1 相關(guān)工作

        對話改寫任務(wù)主要有兩種方法,即基于流水線的方法和基于端到端的方法,本節(jié)將介紹兩種方法的代表工作。

        1.1 基于流水線的方法

        基于流水線的對話改寫方法將改寫任務(wù)分成兩個(gè)子任務(wù),即檢測任務(wù)(指代和省略位置檢測)和消解任務(wù)(指代消解和省略補(bǔ)全)。

        檢測任務(wù)目的是找到當(dāng)前輪語句中指代和省略的位置。傳統(tǒng)的方法是基于規(guī)則的方式,通過匹配找到代詞的位置,以及采用規(guī)則模板找到省略的位置,這種方法簡單直接,但是泛化能力較弱。文獻(xiàn)[9]中提到采用序列標(biāo)注的方法來解決指代和省略定位問題,具體來說定義了3種標(biāo)簽:“0”表示常規(guī)詞,“1”表示指代或者省略的邊界詞,“2”表示指代。通過對語句中每個(gè)字進(jìn)行序列標(biāo)注,即可找到指代和省略的位置。

        通過檢測任務(wù)找到指代和省略的位置之后,需要從歷史對話中找到合適的詞填充或者替換到這個(gè)位置。文獻(xiàn)[10]提出采用文本匹配的方式,首先對檢測到的位置進(jìn)行雙向編碼,然后對對話歷史中的候選詞進(jìn)行局部編碼和全局編碼,將待消解位置的編碼和候選詞的兩個(gè)編碼拼接,再拼接一些人工特征,經(jīng)過線性層分類。類似地,文獻(xiàn)[11]在匹配過程中引入了注意力機(jī)制(attention mechanism),文獻(xiàn)[12-13]又分別將強(qiáng)化學(xué)習(xí)(reinforcement learning)和先驗(yàn)知識(prior knowledge)融合到匹配過程中。文獻(xiàn)[14]提出基于完形填空的消解方法,直接將待消解位置映射到詞表中的一個(gè)單詞上,根據(jù)預(yù)測的答案詞遍歷上文中候選片段,如果答案詞是某個(gè)候選片段的首詞,那么該片段即為預(yù)測結(jié)果。

        1.2 基于端到端的方法

        雖然基于流水線的方法流程清晰,但是存在誤差累積的問題,檢測模型的性能決定了消解模型的上限,而端到端的方法則避免了這個(gè)問題,因此端到端的方法成為目前業(yè)界探索的主要方向。端到端的方法主要分為:基于聯(lián)合訓(xùn)練的方法、基于序列標(biāo)注的方法及基于指針生成網(wǎng)絡(luò)的方法。

        文獻(xiàn)[9]提出基于聯(lián)合訓(xùn)練的方法,將檢測任務(wù)和消解任務(wù)融合到一個(gè)模型中,并將兩個(gè)損失函數(shù)相加,共同訓(xùn)練。文獻(xiàn)[14]提出基于序列標(biāo)注的方法,主要目的是解決摘要類型的問題,定義了類似保留(KEEP)、刪除(DELETE)、增加(ADD)等類型的標(biāo)簽,將歷史對話和當(dāng)前輪輸入拼接,預(yù)測每一個(gè)單詞的標(biāo)簽,再經(jīng)過后處理得到改寫后的語句。文獻(xiàn)[3]提出采用指針網(wǎng)絡(luò)(Pointer Network)來解決對話改寫的問題,首先將歷史對話和當(dāng)前輪輸入拼接后送入編碼器,然后使用解碼器逐步解碼,解碼時(shí)并非從全量詞表中選詞,而是限制只能從歷史對話或者當(dāng)前輪對話輸入中選擇。文獻(xiàn)[4-5]分別提出一種兩階段的模型,將預(yù)訓(xùn)練模型應(yīng)用到了多輪對話改寫的任務(wù)中。

        2 模型

        本節(jié)主要描述模型SPDR(Span Prediction for Dialogue Rewrite)的結(jié)構(gòu)和原理。多輪對話改寫問題可以定義為:基于對話歷史信息H和用戶當(dāng)前輪輸入U(xiǎn)t,根據(jù)對話歷史信息將當(dāng)前輪用戶輸入改寫成U*t,即(H,Ut→U*t),目標(biāo)是模型改寫的結(jié)果U*t和標(biāo)注結(jié)果R盡可能一致。SPDR 采用基于片段預(yù)測的方式來對當(dāng)前輪用戶輸入U(xiǎn)t進(jìn)行補(bǔ)全,具體來說:對話歷史信息H={h1,h2,…,hm},其中{hj}mj=1表示單詞序列,m表示對話歷史信息中單詞的數(shù)量,不同輪次之間使用[SEP]分隔。用戶當(dāng)前輪輸入U(xiǎn)t={u1,u2,…,un},其中n表示用戶當(dāng)前輪輸入中的單詞數(shù)。對于每一個(gè){ui}ni=1,SPDR預(yù)測其要填充的片段在對話歷史信息H中的起始位置和結(jié)束位置。模型結(jié)構(gòu)如圖1所示。

        圖1 模型結(jié)構(gòu)圖

        2.1 標(biāo)簽構(gòu)造

        當(dāng)前數(shù)據(jù)集中的標(biāo)簽為人工標(biāo)注的改寫之后的句子R,為了得到Ut中每一個(gè)單詞{ui}ni=1對應(yīng)的起始標(biāo)簽和結(jié)束標(biāo)簽,同時(shí)找到每個(gè)位置要填充的內(nèi)容。本文為SPDR 設(shè)計(jì)一種標(biāo)簽構(gòu)造算法,具體流程為:①采用計(jì)算最長公共子序列的方法,在標(biāo)注結(jié)果R中找到用戶當(dāng)前輪輸入U(xiǎn)t中每一個(gè)單詞出現(xiàn)的位置,沒出現(xiàn)則用“-1”表示;②根據(jù)上一步計(jì)算的位置找到Ut中需要消解的位置,并在R中找到每一個(gè)待消解位置填充的內(nèi)容;③根據(jù)找到的填充內(nèi)容在對話歷史信息H中的位置,從最近輪次向前找到填充內(nèi)容出現(xiàn)的起始位置和結(jié)束位置。具體的算法流程如算法1所示,起始位置和結(jié)束標(biāo)簽示例如表2所示??紤]到Ut中大部分單詞前面都是不需要填充內(nèi)容的,此時(shí)對應(yīng)的起始位置和結(jié)束標(biāo)簽都為0,即指向H中[CLS]。

        算法1:計(jì)算{ui}ni=1起始位置和結(jié)束標(biāo)簽輸入:歷史對話信息H當(dāng)前對話信息Ut標(biāo)注改寫結(jié)果R輸出:Ut 的起始標(biāo)簽向量s Ut 的結(jié)束標(biāo)簽向量e 1 m[i]=-1,s[i]=0,e[i]=0,?i=1,2,…,n 2 k=0 3 計(jì)算Ut 和R 的最長公共子序列,找到每一個(gè)ui 在R 中出現(xiàn)的位置pos;4 while k<n 5 if(pos[k]is pronoun or ellipsis)6 m[k]=1 7 end if 8 for k∈[0,n)9 if m[k]==1 10 span=find_span_in_R(m,R,pos)11 s,e=label_in_H(m,span,R,H)12 s[k]=s 13 e[k]=e 14 end if 15 return s,e

        表2 起始標(biāo)簽和結(jié)束標(biāo)簽示例

        2.2 編碼器

        2017年文獻(xiàn)[15]提出了Transformer的編碼器-解碼器結(jié)構(gòu),采用多頭注意力機(jī)制(multi-head attention)來捕捉句子中單詞之間的關(guān)聯(lián)。之后,文獻(xiàn)[6]采用Transformer編碼器模塊作為基本結(jié)構(gòu),定義了掩碼語言模型(Masked Language Model,MLM)和下句預(yù)測(Next Sentence Prediction,NSP)兩個(gè)預(yù)訓(xùn)練任務(wù)進(jìn)行預(yù)訓(xùn)練,刷新了多項(xiàng)NLP任務(wù)的最佳效果。本文使用文獻(xiàn)[6]提出的BERT 模型作為句子的編碼器。

        首先,將歷史對話信息H和用戶當(dāng)前輪輸入U(xiǎn)t拼接成Input= {h1,…,hm,u1,…,un}這樣的輸入序列,經(jīng)過嵌入矩陣得到每一個(gè)單詞對應(yīng)的嵌入表征,本文在嵌入層定義了4個(gè)不同的嵌入矩陣:

        ?單詞嵌入:從單詞索引到嵌入表征的哈希映射矩陣,使用BERT 預(yù)訓(xùn)練的參數(shù)將每一個(gè)單詞映射成高維表征。

        ?位置嵌入:輸入序列每個(gè)位置對應(yīng)一個(gè)位置索引,將每一個(gè)位置索引映射成表征不同位置的嵌入表征,維度和單詞嵌入相同。

        ?序列嵌入:用“0”表示歷史對話信息H,用“1”表示用戶當(dāng)前輪輸入U(xiǎn)t,然后嵌入到高維表征,維度和單詞嵌入相同。

        ?輪次嵌入:考慮到歷史對話中可能包含多個(gè)輪次,所以每個(gè)單詞都有對應(yīng)的輪次索引{0,…,t-1},當(dāng)前輪輸入對應(yīng)輪次為t,通過映射之后得到輪次的嵌入表征。

        因此,對于輸入對話語句中的每一個(gè)單詞w∈{h1,…,hm,u1,…,un},將上面4種嵌入相加,得到輸入的嵌入表征,如式(1)所示。

        其中,WE 表示單詞嵌入,PE 表示位置嵌入,SE 表示序列嵌入,TE 表示輪次嵌入。將4個(gè)嵌入相加之后得到了預(yù)訓(xùn)練模型BERT 的輸入,經(jīng)過BERT之后得到所有輸入單詞的上下文表征如式(2)所示。

        最終得到單詞序列的上下文表征E(out)并分成兩個(gè)部分,即歷史對話信息表征及用戶當(dāng)前輪輸入的表征

        2.3 輸出概率分布

        文獻(xiàn)[6]中提到通過預(yù)測問題在篇章中對應(yīng)的起始位置和結(jié)束位置來完成閱讀理解任務(wù),本文采用了類似的思路?;诘玫降纳舷挛谋碚骱?預(yù)測Ut中每一個(gè)單詞{ui}ni=1前面要填充的內(nèi)容,在對話歷史信息H中對應(yīng)的起始位置和結(jié)束位置。文獻(xiàn)[3]中提出通過指針網(wǎng)絡(luò)[16]的方法,解碼器解碼時(shí)只計(jì)算當(dāng)前時(shí)間步在對話歷史信息H和用戶當(dāng)前輸入U(xiǎn)t上的概率分布,即每一個(gè)時(shí)間步的單詞只能來自H或者Ut??紤]到在計(jì)算每一個(gè){ui}ni=1填充內(nèi)容在歷史對話H中的起始位置和結(jié)束位置時(shí),H中所有單詞概率分布存在相關(guān)性,本文采用指針網(wǎng)絡(luò)的方法來計(jì)算每一個(gè){ui}ni=1填充內(nèi)容對應(yīng)的起始位置和結(jié)束位置概率分布,即:

        本文采用帶有參數(shù)的注意力方法——雙線性注意力機(jī)制(Bi-linear Attention Mechanism)來計(jì)算起始位置和結(jié)束位置的概率分布。對于起始位置和結(jié)束位置的注意力模塊,W1和W2表示計(jì)算注意力分布的參數(shù)矩陣,基于上下文表征和計(jì)算用戶當(dāng)前輸入U(xiǎn)t中的每一個(gè)單詞在對話歷史信息H上的概率分布:

        最后,采用負(fù)對數(shù)似然概率計(jì)算起始位置的損失和結(jié)束位置的損失,將兩者相加得到最終的損失,即:

        2.4 預(yù)訓(xùn)練任務(wù)

        文獻(xiàn)[8]通過在情感分析任務(wù)中定義情感詞預(yù)測、單詞情感極性預(yù)測及屬性-情感對預(yù)測三個(gè)預(yù)訓(xùn)練任務(wù),來增強(qiáng)預(yù)訓(xùn)練模型對情感的感知能力,表明特定場景的預(yù)訓(xùn)練任務(wù)對于核心任務(wù)會(huì)帶來一定的效果提升。文獻(xiàn)[7]在多個(gè)不同領(lǐng)域的數(shù)據(jù)上進(jìn)行實(shí)驗(yàn),發(fā)現(xiàn)在特定領(lǐng)域上使用領(lǐng)域數(shù)據(jù)繼續(xù)使用MLM 任務(wù)預(yù)訓(xùn)練,大部分情況下也會(huì)帶來一定的效果提升。因此,本文提出了兩個(gè)預(yù)訓(xùn)練任務(wù),使用對話改寫任務(wù)的數(shù)據(jù)集先預(yù)訓(xùn)練再對改寫任務(wù)進(jìn)行微調(diào),這兩個(gè)預(yù)訓(xùn)練任務(wù)分別是分類任務(wù)和檢測任務(wù)。

        (1)分類任務(wù)(ClassifyTask):將對話歷史信息H和當(dāng)前輸入U(xiǎn)t拼接之后輸入預(yù)訓(xùn)練模型BERT,然后使用[CLS]對應(yīng)的上下文表征進(jìn)行二分類,判斷當(dāng)前輸入U(xiǎn)t是否需要補(bǔ)全。

        (2)檢測任務(wù)(DetectionTask):將對話歷史信息H和當(dāng)前輸入U(xiǎn)t拼接之后輸入預(yù)訓(xùn)練模型BERT,得到當(dāng)前輸入U(xiǎn)t的上下文表征=,對于其中的每一個(gè)進(jìn)行二分類,判斷其前面是否需要填充內(nèi)容。

        3 實(shí)驗(yàn)

        本節(jié)主要介紹實(shí)驗(yàn)采用的數(shù)據(jù)集、評價(jià)指標(biāo)、對比模型及實(shí)驗(yàn)結(jié)果,并對實(shí)驗(yàn)結(jié)果進(jìn)行分析。

        3.1 數(shù)據(jù)集

        本文主要基于兩個(gè)數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),分別是Restoration-200K[4]和客服場景下業(yè)務(wù)數(shù)據(jù)集,前者是開放域閑聊場景下的數(shù)據(jù)集,后者是特定領(lǐng)域下的對話數(shù)據(jù),兩組數(shù)據(jù)集的統(tǒng)計(jì)信息如表3和表4所示。為了保證樣本比例的均衡,在這兩組數(shù)據(jù)集中,無論是訓(xùn)練集、驗(yàn)證集還是測試集,需要改寫的樣本和不需要改寫的樣本各占比50%。這種方式有效避免了樣本不均衡問題對不同模型潛在的影響。

        表3 Restoration-200K 數(shù)據(jù)集統(tǒng)計(jì)信息

        表4 業(yè)務(wù)數(shù)據(jù)集統(tǒng)計(jì)信息

        3.2 實(shí)驗(yàn)設(shè)置

        本文代碼基于Pytorch、Allen NLP及Hugging-Face的Transformers庫實(shí)現(xiàn)。實(shí)驗(yàn)采用了3種不同的預(yù)訓(xùn)練模型來初始化編碼器,對比不同預(yù)訓(xùn)練模型的效果以及推理時(shí)間。這3個(gè)預(yù)訓(xùn)練模型分別是RoBERTa-wwm[17]、RBT3[17]以及ALBERT-tiny[18],不同模型的參數(shù)設(shè)置如表5所示。主要區(qū)別在于RoBERTa采用的是12 層的Transformer結(jié)構(gòu),而RBT-3是3層,ALBERT-tiny則是4層的結(jié)構(gòu)。本文中實(shí)驗(yàn)的硬件配置如下:CPU 采用英特爾E5-2682 v4,GPU 為Tesla P100-PCIE 16GB。

        表5 預(yù)訓(xùn)練模型訓(xùn)練參數(shù)設(shè)置

        3.3 評價(jià)指標(biāo)

        與文獻(xiàn)[4-5]類似,本文在Restoration-200K 數(shù)據(jù)集上采用BLEU、ROUGE 以及Restoration分?jǐn)?shù)作為評價(jià)指標(biāo)。其中Restoration分?jǐn)?shù)這個(gè)指標(biāo)[4]主要關(guān)注那些至少包含一個(gè)待還原的單詞的N-grams,而排除其他N-grams,對應(yīng)的還原之后的N-gram 的準(zhǔn)確率(Precision,P)、召回率(Recall,R)以及F值的計(jì)算如式(9)、式(11)所示。

        其中ResN-grams表示改寫之后的文本包含待還原單詞的N-grams,RefN-grams表示參考文本中包含待還原單詞的N-grams;∩表示計(jì)算兩個(gè)N-grams集合的交集,|·|表示計(jì)算集合中元素的數(shù)量。

        考慮到數(shù)據(jù)集中標(biāo)注改寫結(jié)果R中大部分單詞都來自于用戶當(dāng)前輪的輸入U(xiǎn)t,即改寫的目的是在不損失當(dāng)前輪信息的前提下增加有用的信息,因此本文提出一種新的評價(jià)指標(biāo)sEMr(soft Exact Match Rate)。對于模型改寫的結(jié)果U*t,如果標(biāo)注結(jié)果R中的所有單詞都在U*t中出現(xiàn)并且出現(xiàn)的順序和R中一致,即認(rèn)為是sEM(soft Exact Match)。在sEM 的前提下,U*t的長度越接近于R,說明其中的無效信息越少,于是sEMr的表達(dá)式如式(12)所示。

        其中,Ref表示標(biāo)注改寫結(jié)果R,restored表示模型改寫的結(jié)果U*t,len()表示計(jì)算字符串的長度。

        3.4 對比模型

        本文對比了SPDR 模型和以下4種模型在各指標(biāo)上的表現(xiàn)。

        ?PAC[4]:該模型采用兩階段的方式,首先將對話歷史信息H和用戶當(dāng)前輪輸入U(xiǎn)t拼接,經(jīng)過預(yù)訓(xùn)練模型對H中每個(gè)單詞進(jìn)行序列標(biāo)注,表示是否是省略的單詞;然后將標(biāo)注的結(jié)果拼接到(H,Ut)后面,經(jīng)過指針生成網(wǎng)絡(luò)得到補(bǔ)全后的結(jié)果。

        ?T-Ptr-λ[3]:該模型采用編碼器-解碼器的思想,基于指針生成網(wǎng)絡(luò)逐個(gè)時(shí)間步生成單詞,每次生成的時(shí)候只能從對話歷史信息H和用戶當(dāng)前輪輸入U(xiǎn)t中選詞。該模型采用 了6 層Transformer 編 碼 器 和6 層Transformer解碼器,在解碼階段,為了區(qū)分H和Ut,采用了雙流注意力的方法。

        ?UniLM[19]:UniLM 提出了既適合自編碼任務(wù),又適合自回歸任務(wù)的預(yù)訓(xùn)練模型,其核心方法是使用不同的掩碼矩陣來控制任務(wù)的類型。

        ?SARG[5]:該模型將文獻(xiàn)[3]和文獻(xiàn)[14]的方法進(jìn)行了結(jié)合。首先將對話歷史信息H和用戶當(dāng)前輪輸入U(xiǎn)t拼接,然后預(yù)測Ut中每一個(gè)單詞的標(biāo)簽;接著,對于那些標(biāo)簽為CHANGE 的單詞,采用指針生成網(wǎng)絡(luò)的方法預(yù)測其后面需要添加的內(nèi)容。

        3.5 實(shí)驗(yàn)結(jié)果

        在Restoration-200K數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果如表6所示,在客服場景下業(yè)務(wù)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果如表7所示。

        表6 Restoration-200K 數(shù)據(jù)集上各模型指標(biāo)對比

        表7 客服場景下業(yè)務(wù)數(shù)據(jù)集上主要模型指標(biāo)對比

        從表6中各個(gè)模型在Restoration-200K 數(shù)據(jù)集上的表現(xiàn),可以看出:

        (1)SPDR 模型在7個(gè)評價(jià)指標(biāo)中有5個(gè)超過了之前最好的SARG 模型。其中restoration分?jǐn)?shù)中F1、F2及ROUGE 指標(biāo)都有1%左右的提升;BLEU 指標(biāo)相較于SARG 模型有1%左右的下降,主要原因是:SPDR 模型通過預(yù)測片段的方式來對當(dāng)前輪輸入進(jìn)行改寫,容易引入一些標(biāo)注結(jié)果中不存在的單詞;而SARG 等生成類型的模型是逐詞生成的,所以避免了這種情況;而BLEU 指標(biāo)主要關(guān)注改寫結(jié)果中n-grams的精確率,所以會(huì)有一定的下降。相反,ROUGE 指標(biāo)更關(guān)注n-grams的召回率,所以SPDR 模型在該指標(biāo)上表現(xiàn)更好。

        (2)SPDR 模型在驗(yàn)證集上的推理速度明顯快于其他模型。之前以UniLM 為代表的改寫模型采用的都是逐詞生成的方式,這種串行的預(yù)測方式導(dǎo)致其推理時(shí)效率比較低;SARG 模型相較于純粹的生成模型,引入了部分生成的思想,在一定程度上緩解了推理階段的效率問題。SPDR 模型則采用完全并行預(yù)測的方式,默認(rèn)保留用戶當(dāng)前輸入的所有內(nèi)容,同時(shí)預(yù)測每個(gè)位置前面需要添加的內(nèi)容,解決了串行預(yù)測方法的效率問題,大大提升了推理階段的速度,便于在低時(shí)延限制的系統(tǒng)中使用。

        Restoration-200K 數(shù)據(jù)集中訓(xùn)練集的數(shù)據(jù)量比較大,而實(shí)際場景中對話改寫數(shù)據(jù)標(biāo)注比較困難,所以在少量訓(xùn)練集情況下模型的表現(xiàn)同樣值得關(guān)注。表7展示了主要模型在客服場景下業(yè)務(wù)數(shù)據(jù)上的各項(xiàng)指標(biāo),從中可以看出:

        (1)SPDR 模型在訓(xùn)練數(shù)據(jù)較少的情況下表現(xiàn)仍然出色,在除F3之外的其他6個(gè)指標(biāo)上均明顯優(yōu)于T-Ptr-λ模型,其中sEMr指標(biāo)提升了6.7%。和SARG 相比,sEMr也有1.7%的提升。而F3指標(biāo)表現(xiàn)略遜色的主要原因是:驗(yàn)證集中人稱代詞和指示代詞的樣例比較多,而SPDR 模型并不會(huì)去除這些代詞,因?yàn)檫@些代詞并不是完全沒用的,相反在下游自然語言理解任務(wù)中,人稱代詞能夠提供一些正向信息(比如人物的性別);而由于代詞比較多,并且大部分補(bǔ)全的內(nèi)容比較短(表4),所以在N-gram較長的指標(biāo)上表現(xiàn)就會(huì)稍微遜色。

        (2)SPDR 模型推理一個(gè)樣例速度明顯提升,使用12層的BERT 模型推理速度相較于生成模型提升了接近100%??紤]一些生產(chǎn)環(huán)境對時(shí)延嚴(yán)格限制的情況,還可以使用輕量級的預(yù)訓(xùn)練模型作為編碼器,推理速度會(huì)進(jìn)一步改進(jìn),當(dāng)前相應(yīng)的指標(biāo)也會(huì)略有下降。但是,即便在使用輕量級編碼器的情況下,SPDR 模型在sEMr指標(biāo)上仍然明顯優(yōu)于T-Ptr-λ模型,略遜色于SARG 模型。

        綜上所述,SPDR 模型無論是在訓(xùn)練集數(shù)據(jù)量充足的情況下,還是在訓(xùn)練集數(shù)據(jù)比較少的情況下,均能取得比較優(yōu)異的效果,大部分指標(biāo)都明顯優(yōu)于之前的模型,同時(shí)SPDR 模型沒有使用編碼器-解碼器的結(jié)構(gòu),大大提升了模型在推理時(shí)的速度,便于在生產(chǎn)環(huán)境中使用。

        3.6 消融實(shí)驗(yàn)

        在2.4節(jié)中本文提出了兩個(gè)預(yù)訓(xùn)練任務(wù),用于提升SPDR 模型的表現(xiàn)。本節(jié)主要對預(yù)訓(xùn)練任務(wù)進(jìn)行消融實(shí)驗(yàn),研究不同預(yù)訓(xùn)練任務(wù)對于模型表現(xiàn)的影響。除此之外,針對業(yè)務(wù)數(shù)據(jù)集訓(xùn)練數(shù)據(jù)較少的問題,本文還提出了一種簡單的自動(dòng)化數(shù)據(jù)擴(kuò)充方法,具體來說:在歷史對話信息H中,有的輪次的語句并沒有單詞出現(xiàn)在補(bǔ)全結(jié)果中,刪除這些輪次的語句便得到了一個(gè)新的樣本。本節(jié)也會(huì)考察自動(dòng)化數(shù)據(jù)擴(kuò)充的方法對于模型最終效果的影響。

        在消融實(shí)驗(yàn)中,本文使用的是客服場景下的業(yè)務(wù)數(shù)據(jù)集,編碼器使用輕量級的ALBERT-tiny 模型。最終,消融實(shí)驗(yàn)結(jié)果如表8所示。

        表8 消融實(shí)驗(yàn)結(jié)果

        通過消融實(shí)驗(yàn)可以發(fā)現(xiàn),分別使用分類任務(wù)和檢測任務(wù)對模型進(jìn)行進(jìn)一步預(yù)訓(xùn)練,相較于不經(jīng)過預(yù)訓(xùn)練的結(jié)果,提升并不明顯,說明只使用其中某一個(gè)預(yù)訓(xùn)練任務(wù)可能會(huì)引入一些無效的先驗(yàn)信息,反而給模型帶來了負(fù)面影響。而同時(shí)使用分類任務(wù)和檢測任務(wù)兩個(gè)任務(wù)預(yù)訓(xùn)練,則效果提升明顯,主要原因可能是分類任務(wù)能夠捕捉歷史對話信息和當(dāng)前輪輸入P句子間的關(guān)系,而檢測任務(wù)能夠捕捉當(dāng)前輪輸入各個(gè)單詞之間的關(guān)系,兩個(gè)任務(wù)具有一定的互補(bǔ)性,提供了有效的先驗(yàn)信息。從最后一行可以看出,在數(shù)據(jù)較少的場景下,本文提出的數(shù)據(jù)擴(kuò)充方法能夠明顯提升模型最終的表現(xiàn)。

        3.7 樣例分析

        本節(jié)主要展示不同模型在測試集上的預(yù)測結(jié)果,并選擇其中幾個(gè)有代表性的樣例進(jìn)行分析,具體如表9所示。

        表9 對話補(bǔ)全測試集樣例

        續(xù)表

        在樣例1中,T-Ptr-λ模型漏掉了原始輸入中重要的極性詞,直接導(dǎo)致語義發(fā)生了改變,改寫之后的結(jié)果反而不如原始輸入的語句,另外兩個(gè)模型也或多或少丟失了用戶當(dāng)前輸入的部分信息。而SPDR模型默認(rèn)保留原始輸入中的所有單詞,避免了丟失信息的情況,同時(shí)還原了關(guān)鍵詞“etc”。

        在樣例2中,T-Ptr-λ丟失了原始語句A3中的信息,并且補(bǔ)充的信息也不完整;UniLM 補(bǔ)全之后語句比較連貫,但是補(bǔ)充的信息和正確結(jié)果有一定差距;SARG 采用部分生成的方式,預(yù)測對了需要補(bǔ)全的位置,但是補(bǔ)充的內(nèi)容不連貫。SPDR 模型采用的是片段預(yù)測的方式,預(yù)測的填充內(nèi)容不僅可以是單詞,也可以是短語,表達(dá)的信息更完整,表明了其建模片段語義的能力。

        3.8 人工評估

        自動(dòng)化評估指標(biāo)能夠從不同角度體現(xiàn)對話改寫的效果,但是無法反映改寫結(jié)果語義的完整性和流暢性。在人工評估階段,本文從Restoration-200k測試集中隨機(jī)采樣了200個(gè)樣本,并請3名有經(jīng)驗(yàn)的標(biāo)注人員對不同模型的改寫結(jié)果進(jìn)行打分。打分的維度主要有兩個(gè),語義完整性(Integrity)及語句的流暢性(Fluency),打分可選值為[0,1,2]。0分表示效果很差,無法接受;1分表示效果一般,可部分接受;2分表示效果很好,完全可以接受。

        人工評估結(jié)果如表10所示,從中可以看出,在語義完整性指標(biāo)上,SPDR 模型得分優(yōu)于其他模型,主要因?yàn)镾PDR模型采用片段預(yù)測的方式能夠有效保證信息召回率,這對于下游任務(wù)非常重要,這也與自動(dòng)化評估結(jié)果一致。而在語句流暢性指標(biāo)上,SPDR 模型則略遜色于SARG 模型,主要是因?yàn)镾PDR 沒有去除人稱代詞和指示代詞,同時(shí)某些位置片段預(yù)測錯(cuò)誤也會(huì)導(dǎo)致語句不太流暢。

        表10 人工評估結(jié)果

        4 總結(jié)與展望

        本文提出了采用片段預(yù)測的方法進(jìn)行多輪對話改寫,摒棄了傳統(tǒng)的編碼器-解碼器結(jié)構(gòu),大大提升了推理階段的速度。同時(shí),本文提出的SPDR 模型,無論是對于訓(xùn)練數(shù)據(jù)充足的Restoration-200K數(shù)據(jù)集,還是數(shù)據(jù)量較少的客服場景下的業(yè)務(wù)數(shù)據(jù),在一些主要指標(biāo)上,相較于之前的最好結(jié)果,均有明顯的提升。本文還提出了一種新的多輪對話改寫結(jié)果的評價(jià)指標(biāo)sEMr,用于對比不同模型多輪對話改寫的效果。最后,SPDR 模型可以采用不同大小的編碼器,滿足不同時(shí)延限制場景的需求。

        當(dāng)然,本文還存在一些不足,比如改寫結(jié)果中沒有去掉代詞,同時(shí)補(bǔ)充的內(nèi)容必須在上文中出現(xiàn)過,這可能導(dǎo)致某些改寫結(jié)果在流暢性上表現(xiàn)一般,這也是該模型之后改進(jìn)的方向。此外,本文對改寫結(jié)果和數(shù)據(jù)進(jìn)一步分析發(fā)現(xiàn),特定領(lǐng)域場景下,大部分填充的詞都是領(lǐng)域內(nèi)的實(shí)體詞,因此將領(lǐng)域的知識信息融入改寫過程也是未來將會(huì)繼續(xù)探索的方向。

        猜你喜歡
        指代編碼器單詞
        Let’s Save Food To Fight Hunger
        奧卡姆和布列丹對指代劃分的比較
        單詞連一連
        基于FPGA的同步機(jī)軸角編碼器
        看圖填單詞
        看完這些單詞的翻譯,整個(gè)人都不好了
        基于PRBS檢測的8B/IOB編碼器設(shè)計(jì)
        JESD204B接口協(xié)議中的8B10B編碼器設(shè)計(jì)
        電子器件(2015年5期)2015-12-29 08:42:24
        “不一而足”話討論
        多總線式光電編碼器的設(shè)計(jì)與應(yīng)用
        国产女主播一区二区三区在线观看| 亚洲精品在线免费视频| 一本色道久久88加勒比综合| 午夜天堂一区人妻| 中文字幕v亚洲日本| 国产女人18一级毛片视频| 久久精品国产亚洲一级二级| 日本熟女精品一区二区三区| 欧美熟妇性xxx交潮喷| 91麻豆国产香蕉久久精品| 极品美女尤物嫩模啪啪| 国产亚洲精品在线视频| 网禁拗女稀缺资源在线观看| 欧美一片二片午夜福利在线快| 久久亚洲一级av一片| 日韩人妻中文字幕专区| 亚洲熟妇av日韩熟妇在线 | 亚洲24小时在线免费视频网站| 手机在线观看av资源| 日韩aⅴ人妻无码一区二区| 久久国产A√无码专区亚洲| 五月婷婷激情六月开心| 亚洲av日韩一区二区| 亚洲精品suv精品一区二区| 国产精品高潮无码毛片| 国产粉嫩嫩00在线正在播放| 护士人妻hd中文字幕| 秘书边打电话边被躁bd视频| 99在线播放视频| 日韩人妻免费一区二区三区| 国产乱码人妻一区二区三区| 无遮无挡爽爽免费视频| 91久久综合精品国产丝袜长腿| 久久蜜桃一区二区三区| 99re6在线视频精品免费| 日本乱人伦在线观看| 亚洲AV秘 片一区二区三区| 亚洲综合在线观看一区二区三区 | 69精品国产乱码久久久| 天天噜日日噜狠狠噜免费| 97久久精品人人妻人人|