• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      面向一致性對(duì)話生成的對(duì)抗匹配網(wǎng)絡(luò)與目標(biāo)側(cè)注意力機(jī)制研究①

      2022-04-08 05:58:54蔡恒毅王成瑞宋永浩趙曉芳
      高技術(shù)通訊 2022年2期
      關(guān)鍵詞:注意力語義建模

      蔡恒毅 王成瑞 宋永浩 袁 旭 張 程 趙曉芳

      (*中國(guó)科學(xué)院計(jì)算技術(shù)研究所 北京100190)

      (**中國(guó)科學(xué)院大學(xué) 北京100049)

      0 引言

      近年來,作為人工智能領(lǐng)域中的一項(xiàng)重要課題,如何構(gòu)建一個(gè)與人類進(jìn)行自然溝通的開放域?qū)υ捪到y(tǒng)受到了眾多研究者的關(guān)注。通常此類開放域?qū)υ捪到y(tǒng)可以采用基于序列到序列(sequence-to-sequence,seq2seq)方法的模型來進(jìn)行構(gòu)建[1-8]。然而,此類模型的效果仍遠(yuǎn)未達(dá)到預(yù)期。具體而言,基于序列到序列方法的對(duì)話模型傾向于生成一些較短且無實(shí)際意義的回復(fù),如“I don’t know”,或者一些較長(zhǎng)但內(nèi)部語義矛盾的回復(fù),如“I love to cook,I’m a vegan so I don’t like cooking”[9-10]。由于這些回復(fù)往往存在上文相關(guān)性較差且句內(nèi)語義不一致的問題,盡管模型給出的回復(fù)看起來流暢且語法正確,但是基于序列到序列模型的人機(jī)對(duì)話系統(tǒng)仍缺乏實(shí)用性。

      導(dǎo)致上述問題的部分原因在于人類對(duì)話上文與其回復(fù)之間普遍存在的一對(duì)多映射關(guān)系[11]。在對(duì)話任務(wù)中,即使對(duì)于相同的上文,也可能存在多個(gè)具有不同語義和表達(dá)方式的回復(fù)與之對(duì)應(yīng)。盡管對(duì)話任務(wù)普遍采用翻譯任務(wù)中的編碼—解碼器模型,但對(duì)話任務(wù)中上文X和回復(fù)Y之間的松耦合關(guān)系使得其顯著區(qū)別于翻譯任務(wù)。在翻譯任務(wù)中,源語言和目標(biāo)語言在語義上是一致且對(duì)齊的,而對(duì)話任務(wù)中上文與回復(fù)之間則無此對(duì)齊關(guān)系,即目標(biāo)分布P(Y| X) 具有更高的條件熵,這也意味著對(duì)話任務(wù)中,僅靠編碼—解碼器模型無法充分刻畫上文與回復(fù)之間的關(guān)系。另外,序列到序列模型很容易退化為缺乏對(duì)上文關(guān)注的語言模型[12](在其他任務(wù)中也有類似發(fā)現(xiàn),例如故事生成[13])。這些現(xiàn)象表明,以最大似然估計(jì)作為其訓(xùn)練準(zhǔn)則的序列到序列模型,不足以充分捕獲對(duì)話上文和回復(fù)之間的多維語義關(guān)系,而這種上下文之間的復(fù)雜依賴關(guān)系對(duì)于建模人人對(duì)話至關(guān)重要。

      文獻(xiàn)[14]嘗試通過提升上文和回復(fù)之間的語義相似度來增強(qiáng)它們之間的關(guān)聯(lián)性。然而,對(duì)話上文與其相應(yīng)的回復(fù)并不一定要在語義上相同。用語義相似度來刻畫對(duì)話上文與其回復(fù)之間復(fù)雜的、多維度的關(guān)系是不夠的。在現(xiàn)有的對(duì)話生成研究中,仍然沒有一種有效的方法來刻畫這種隱式關(guān)系。此外,以往的模型很少考慮生成回復(fù)的內(nèi)部語義一致性,而這種句內(nèi)語義一致性的有效建模有助于避免模型產(chǎn)生語義自相矛盾的回復(fù)。

      本文面向?qū)υ捝扇蝿?wù)中的一致性問題,旨在提高對(duì)話生成中回復(fù)的上文相關(guān)性和內(nèi)部語義一致性。具體而言,對(duì)于上文相關(guān)性(外部一致性),本研究提出了一種基于多維度關(guān)系匹配的生成式對(duì)抗網(wǎng)絡(luò)(matching-based generative adversarial network,MatchGAN)。不同于其他基于生成式對(duì)抗網(wǎng)絡(luò)(generative adversarial networks,GANs)[15]的回復(fù)生成模型[16-17]中使用二分類器來作為判別器的做法,本文引入了一種用于多維度關(guān)系匹配的張量網(wǎng)絡(luò)來學(xué)習(xí)對(duì)話上文和其回復(fù)之間關(guān)系的分布式表示,并以此來判別給定的回復(fù)是否與上文匹配。這里假設(shè)來自訓(xùn)練集中人類對(duì)話的上文與回復(fù)之間存在匹配關(guān)系,而產(chǎn)生自機(jī)器的回復(fù)則與其上文構(gòu)成相應(yīng)的負(fù)樣本對(duì)。給定一條上文及模型生成的回復(fù),本文中的判別器可以輸出它們之間的匹配度分?jǐn)?shù),然后利用該匹配度來指導(dǎo)生成器生成與上文更為相關(guān)的回復(fù)。此外,本文中的判別器也能夠顯式地利用一對(duì)多的語料來更好地建模對(duì)話中的多映射關(guān)系。對(duì)于內(nèi)部語義一致性(內(nèi)部一致性),本研究將目標(biāo)側(cè)注意力機(jī)制引入到對(duì)話生成器中,使得模型在回復(fù)生成的過程中能夠更為細(xì)粒度地關(guān)注到已經(jīng)生成的前文回復(fù),從而更好地保持句內(nèi)語義的一致性。簡(jiǎn)而言之,本文中的張量匹配網(wǎng)絡(luò)用于鼓勵(lì)生成器產(chǎn)生與上文更為相關(guān)的回復(fù)(外部一致性),而目標(biāo)側(cè)注意力機(jī)制則使得模型能夠產(chǎn)生語義更為一致的回復(fù)(內(nèi)部一致性)。

      本研究在3 個(gè)大規(guī)模的對(duì)話數(shù)據(jù)集上評(píng)估了本文的方法,包括Baidu-Tieba、StackOverflow 和PERSONA-CHAT。實(shí)驗(yàn)結(jié)果表明,本文方法在量化指標(biāo)評(píng)測(cè)和人工評(píng)測(cè)下均優(yōu)于多個(gè)基線模型。本文的貢獻(xiàn)可以總結(jié)為以下3 點(diǎn):(1)本文提出了一種新的對(duì)話生成框架MatchGAN,該框架能夠顯式地建模對(duì)話上文和其相應(yīng)回復(fù)之間的多維語義關(guān)系,并基于此生成與上文更為相關(guān)的對(duì)話回復(fù);(2)本研究在對(duì)話解碼器中引入了目標(biāo)側(cè)注意力機(jī)制,以更好地建模所生成回復(fù)的內(nèi)部語義一致性;(3)本研究采用了3 組具有不同特征的對(duì)話數(shù)據(jù)集進(jìn)行了詳盡的實(shí)證研究。實(shí)驗(yàn)結(jié)果證實(shí)了本文方法的有效性。

      本文的整體組織如下,第1 節(jié)是相關(guān)研究工作,第2 節(jié)描述本文方法的整體設(shè)計(jì),第3 節(jié)給出實(shí)驗(yàn)結(jié)果及分析,最后在第4 節(jié)進(jìn)行總結(jié)。

      1 相關(guān)工作

      開放域下的對(duì)話建??梢钥醋魇且粋€(gè)序列到序列的生成問題。文獻(xiàn)[18]將對(duì)話生成建模為統(tǒng)計(jì)機(jī)器翻譯的問題,并采用數(shù)據(jù)驅(qū)動(dòng)的方式進(jìn)行模型訓(xùn)練。近年來,深度學(xué)習(xí)在機(jī)器翻譯和語言模型中的成功應(yīng)用進(jìn)一步啟發(fā)了眾多學(xué)者對(duì)于神經(jīng)對(duì)話生成的研究[1,7,19-20]。

      盡管起源自機(jī)器翻譯任務(wù)的序列到序列模型在對(duì)話建模中有著不錯(cuò)的表現(xiàn),然而,文獻(xiàn)[11]指出,對(duì)話生成任務(wù)中的回復(fù)往往具有較高的多樣性,這一特點(diǎn)使得其區(qū)別于上下文具有嚴(yán)格語義對(duì)齊關(guān)系的機(jī)器翻譯任務(wù)。這也一定程度上解釋了為何將序列到序列模型應(yīng)用于對(duì)話生成任務(wù)后,模型總是傾向于給出通用甚至無意義的回復(fù)。為了解決這一問題,文獻(xiàn)[10]使用互信息最大化這一準(zhǔn)則來訓(xùn)練對(duì)話模型,旨在減少通用回復(fù)的生成。文獻(xiàn)[21]則顯式地利用對(duì)話上文來進(jìn)行實(shí)體預(yù)測(cè),并通過使用一個(gè)外部的知識(shí)庫來挖掘相關(guān)實(shí)體以提供給模型更多的信息用作對(duì)話回復(fù)生成。文獻(xiàn)[22]則進(jìn)一步提出在解碼過程中使用基于門控的線索詞融合方法來提高生成回復(fù)的信息量。條件變分自編碼器[23]近年來也被廣泛用于對(duì)話生成模型的訓(xùn)練并表現(xiàn)出不錯(cuò)的效果。與這些工作相比,本文工作旨在更加充分地挖掘?qū)υ捝衔呐c回復(fù)之間的復(fù)雜語義關(guān)系并用以指導(dǎo)對(duì)話模型的學(xué)習(xí)。

      除了提高對(duì)話回復(fù)信息量的研究工作之外,對(duì)話生成中的一致性問題也受到了關(guān)注。文獻(xiàn)[24]使用基于注意力機(jī)制的語言模型來生成更為連貫的對(duì)話。與之不同,本文工作使用一個(gè)獨(dú)立的匹配模型用以學(xué)習(xí)上文與回復(fù)之間的連貫性。文獻(xiàn)[14]使用強(qiáng)化學(xué)習(xí)的訓(xùn)練方式以使得模型生成的回復(fù)與相應(yīng)的上文在語義上要盡可能地相似,然而,上下文的關(guān)系往往涉及多個(gè)維度的因素,如話題轉(zhuǎn)移、情感交互、下文引導(dǎo)等,語義相似度并不能充分地建模對(duì)話中復(fù)雜的上下文關(guān)系。本文引入的張量匹配網(wǎng)絡(luò)旨在從多個(gè)維度更為充分地建模上下文之間的關(guān)系。

      本文也與對(duì)話建模中的生成式對(duì)抗網(wǎng)絡(luò)[16-17]等工作相關(guān)。在這些基于GAN的回復(fù)生成模型中,其判別器以生成的回復(fù)作為輸入來完成二分類過程,忽略了對(duì)話上文與回復(fù)之間的匹配關(guān)系。本文工作則設(shè)計(jì)了一種匹配模型來顯式地建模這種匹配關(guān)系。對(duì)于目標(biāo)側(cè)注意力機(jī)制的相關(guān)工作,文獻(xiàn)[25]將其應(yīng)用于機(jī)器翻譯任務(wù)中,然而,其在對(duì)話建模中的作用尚未被充分研究。文獻(xiàn)[26]將部分回復(fù)語句與對(duì)話上文進(jìn)行合并以使得模型能夠在回復(fù)生成的過程中考慮前文信息,相比于這種數(shù)據(jù)預(yù)處理的方式,本文以一種更為自然的方式設(shè)計(jì)了回復(fù)生成中的目標(biāo)側(cè)注意力機(jī)制。

      2 本文方法

      2.1 模型概覽

      MatchGAN 遵循生成式對(duì)抗訓(xùn)練的學(xué)習(xí)范式來顯式地建模所生成的回復(fù)和其上文之間的匹配模式。該框架的整體概覽見圖1,其中包含一個(gè)基于序列到序列模型的回復(fù)生成器和一個(gè)基于神經(jīng)張量網(wǎng)絡(luò)的匹配模型來刻畫上下文之間細(xì)粒度的語義關(guān)系。對(duì)于給定的上文X=x1,x2,…,xTX,生成器網(wǎng)絡(luò)G首先聯(lián)合使用源端注意力機(jī)制和目標(biāo)端注意力機(jī)制采樣出回復(fù)Y^。匹配器網(wǎng)絡(luò)M在訓(xùn)練的過程中,將上文與生成的回復(fù)作為其負(fù)樣本,而上文與真實(shí)回復(fù)則作為其正樣本。匹配器網(wǎng)絡(luò)M所給出的匹配度分值則被用來指導(dǎo)生成器G的學(xué)習(xí)。整個(gè)框架使用對(duì)抗學(xué)習(xí)的訓(xùn)練范式來進(jìn)行優(yōu)化,并使用策略梯度方法來解決因回復(fù)采樣導(dǎo)致的不可微問題。需要說明的是,這里的生成器雖然以基于循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)單元[27]的編碼—解碼器作為示例,其他的結(jié)構(gòu)如Transformer[28]也是適用的。本文首先介紹用以保持回復(fù)語義內(nèi)部一致性的目標(biāo)側(cè)注意力機(jī)制,然后介紹基于神經(jīng)張量網(wǎng)絡(luò)的匹配式判別器,該判別器通過區(qū)分上文回復(fù)對(duì)是人人對(duì)話還是人機(jī)對(duì)話來顯式地建模生成回復(fù)的外部相關(guān)性。

      圖1 本文框架MatchGAN的模型概覽圖

      2.2 回復(fù)生成中的目標(biāo)側(cè)注意力機(jī)制

      在本文所提出的生成式對(duì)抗學(xué)習(xí)框架中,以序列到序列模型作為其中的生成器G。對(duì)于該生成器,它的輸入為長(zhǎng)度為TX的對(duì)話上文X=x1,x2,…,xTX,其中單詞xi均來自于詞表Γ。生成器G的輸出為長(zhǎng)度為TY的對(duì)話回復(fù)Y=y1,y2,…,yTY,其中單詞yi來自于詞表Λ。具體地,給定上文輸入X,采用RNN 單元實(shí)現(xiàn)的序列到序列模型按照編碼—解碼器的建模方式來生成其對(duì)應(yīng)的回復(fù)Y。首先,編碼器循環(huán)地讀入X中的單詞,并將其編碼為一個(gè)上文向量c,然后,解碼器網(wǎng)絡(luò)根據(jù)該上文向量c再逐詞逐句地生成回復(fù)Y。典型地,使用長(zhǎng)短時(shí)記憶(long short-term memory,LSTM)單元[27]構(gòu)建的序列到序列模型按照式(1)來建模條件概率P(Y| X):

      其中,h′t-1是對(duì)應(yīng)于yt-1的隱狀態(tài)。

      為了更好地建模該條件概率P(Y| X),文獻(xiàn)[29]提出了在解碼過程中使用注意力機(jī)制的方法來使得解碼器在生成每個(gè)單詞的時(shí)候能夠動(dòng)態(tài)地關(guān)注到上文序列的不同部分。具體而言,使用注意力機(jī)制的序列到序列模型按照式(2)來定義yt的條件生成概率:

      其中,hi是對(duì)應(yīng)于xi的隱藏層狀態(tài)。g(·) 是用于計(jì)算hi和h′t-1之間對(duì)齊關(guān)系的相似度函數(shù)。本文使用雙線性函數(shù)來實(shí)現(xiàn)函數(shù)g(·),即:g(h′t-1,hi)=vTtanh(Whhi+Wh′h′t-1),其中,v、Wh和Wh′是可學(xué)習(xí)的網(wǎng)絡(luò)參數(shù)。

      上述的這種源端注意力機(jī)制在翻譯任務(wù)中顯著提高了模型的表達(dá)能力,然而,對(duì)話生成任務(wù)中的上下文之間并不像翻譯任務(wù)中源語言和目標(biāo)語言之間那樣有嚴(yán)格的語義對(duì)齊關(guān)系。在對(duì)話生成過程中,為了保持所生成回復(fù)的內(nèi)部語義一致性和可讀性,模型不僅應(yīng)該關(guān)注于給定的對(duì)話上文,更應(yīng)該關(guān)注于在解碼過程中已經(jīng)生成的前綴回復(fù)部分。因此,本文提出目標(biāo)側(cè)注意力機(jī)制來增強(qiáng)現(xiàn)有的源端注意力模型,使得模型在回復(fù)生成過程中解碼每一個(gè)回復(fù)詞的時(shí)候也對(duì)所生成的前文語句執(zhí)行注意力操作。如圖1 中的左半部分所示,生成器G中的解碼器在時(shí)間步t -1 時(shí)刻接收到的輸入有:上一步預(yù)測(cè)詞yt-1,上一步隱藏層狀態(tài)h′t-1,源端的注意力表示srcAtt=Attention(h′t-1,x) 和目標(biāo)側(cè)注意力表示tgtAtt=Attention(h′t-1,y<t-1),其中,y<t-1代表時(shí)間步t -1 之前的解碼器輸入。此時(shí),回復(fù)詞yt的生成概率可以建模為

      其中,函數(shù)mergeAtt(srcAtt,tgtAtt) 用于合并源端的注意力表示和目標(biāo)側(cè)的注意力表示。本文將其實(shí)現(xiàn)為一個(gè)多層感知器模型。通過引入目標(biāo)側(cè)注意力機(jī)制,生成器G在解碼回復(fù)詞的過程中能夠顯式地考慮到已經(jīng)生成的前部分語句片段,因此能夠緩解以往回復(fù)生成中語句內(nèi)部語義沖突的問題。

      2.3 基于張量網(wǎng)絡(luò)的多維度上下文關(guān)系建模機(jī)制

      以往工作中通常使用語義相似度來表征對(duì)話上文與回復(fù)之間的關(guān)系,這樣做的問題在于,對(duì)話上文與其回復(fù)之間的關(guān)系并不具備嚴(yán)格的語義對(duì)齊等特點(diǎn),即對(duì)于某條對(duì)話上文,合適的回復(fù)并不一定要與其語義相同,此外,這種上下文的關(guān)系往往涉及多個(gè)維度的因素,如話題轉(zhuǎn)移、情感交互、下文引導(dǎo)等方面。由于這些原因,基于句子嵌入的語義相似度方法并不能充分地建模對(duì)話中復(fù)雜的上下文關(guān)系。

      為了有效建模對(duì)話上文與其回復(fù)之間復(fù)雜的語義關(guān)系,本文設(shè)計(jì)了一種基于張量網(wǎng)絡(luò)的匹配模型來對(duì)給定的上文—回復(fù)對(duì)之間的關(guān)系進(jìn)行判別。生成器G進(jìn)而使用該判別信號(hào)來進(jìn)行訓(xùn)練。如圖1 中的右半部分所示,判別器采用類似于孿生網(wǎng)絡(luò)的結(jié)構(gòu)進(jìn)行實(shí)現(xiàn),其中包括2 個(gè)對(duì)稱的RNN 用于對(duì)上文和回復(fù)進(jìn)行編碼以及一個(gè)神經(jīng)張量網(wǎng)絡(luò)用于學(xué)習(xí)對(duì)話上文和回復(fù)之間的匹配關(guān)系。具體而言,給定上文X和回復(fù)Y,本文使用各自對(duì)應(yīng)的RNN 網(wǎng)絡(luò)來對(duì)其進(jìn)行編碼,編碼得到的結(jié)果為上文的向量表示x和回復(fù)的向量表示受文獻(xiàn)[30]啟發(fā),本文使用一個(gè)由雙線性函數(shù)實(shí)現(xiàn)的神經(jīng)張量網(wǎng)絡(luò)從多個(gè)維度建模x和y之間的關(guān)系,其中,上文x和回復(fù)y之間的多維交互關(guān)系按式(5)進(jìn)行建模:

      其中,f是一個(gè)對(duì)輸入進(jìn)行逐元素非線性變換的函數(shù)是一個(gè)張量參數(shù),雙線性張量乘積xTW[1:d]y的結(jié)果是一個(gè)d維的向量h∈Rd,其中h的每一個(gè)元素hi可由張量W[1:d]的一個(gè)分片計(jì)算求得:hi=xTWiy。其他的參數(shù)為標(biāo)準(zhǔn)的神經(jīng)網(wǎng)絡(luò)參數(shù),包括

      利用上述的匹配模型,網(wǎng)絡(luò)可以對(duì)上文和回復(fù)之間的交互關(guān)系和各自的表示進(jìn)行聯(lián)合學(xué)習(xí):上文和回復(fù)的向量表示由各自的RNN 網(wǎng)絡(luò)學(xué)得,而它們之間的交互關(guān)系則由神經(jīng)張量網(wǎng)絡(luò)進(jìn)行建模。該匹配模型M的輸出則為上文與回復(fù)之間匹配關(guān)系的量化得分,記為M({X,Y})。

      為了使得生成器G產(chǎn)生與上文X更為契合的回復(fù)Y,在對(duì)抗訓(xùn)練的過程中,對(duì)于采樣于訓(xùn)練集合的<上文,回復(fù)>對(duì),系統(tǒng)要求匹配器M將其作為正樣本并給出較高的匹配度分?jǐn)?shù),對(duì)于來自模型輸出的<上文,回復(fù)>對(duì),則要求匹配器M將其作為負(fù)樣本并給出較低的匹配度分?jǐn)?shù)。對(duì)于匹配器的學(xué)習(xí),本文采用下面的損失函數(shù):

      其中,生成器G的參數(shù)為θ,匹配器M的參數(shù)為φ。Ph代表給定訓(xùn)練集的數(shù)據(jù)分布。Y~Ph表示回復(fù)Y從訓(xùn)練集中采樣,而Y~Gθ則表示回復(fù)Y從生成器所定義的分布中采樣。

      2.4 基于策略梯度方法的聯(lián)合訓(xùn)練

      由于自然語言的離散性特點(diǎn),使用判別器模型得到的學(xué)習(xí)信號(hào)來指導(dǎo)生成器訓(xùn)練的方法在應(yīng)用于對(duì)話建模的時(shí)候存在梯度無法回傳的問題。因此,本文使用策略梯度[31]的方法來解決這一問題。給定上文輸入X,本文模型通過從生成器G中進(jìn)行采樣從而得到回復(fù)Y。這里將生成器Gθ視作一個(gè)策略網(wǎng)絡(luò)。匹配模型Mφ以給定的上文X和生成的回復(fù)Y作為輸入,并輸出其對(duì)應(yīng)的匹配度分?jǐn)?shù)Mφ({X,Y})。該分?jǐn)?shù)即作為從策略網(wǎng)絡(luò)Gθ中進(jìn)行采樣所對(duì)應(yīng)的獎(jiǎng)勵(lì)值。本文框架的訓(xùn)練目標(biāo)則是訓(xùn)練該策略網(wǎng)絡(luò)Gθ以最大化所生成回復(fù)的期望獎(jiǎng)勵(lì)值,如式(7)所示:

      由于Y是從Gθ中采樣而來,使用該目標(biāo)函數(shù)無法直接對(duì)參數(shù)θ求導(dǎo),因此,本文使用式(8)來對(duì)參數(shù)θ的梯度進(jìn)行估計(jì):

      其中,Gθ(Y| X) 為給定X時(shí)回復(fù)Y的條件概率。b({X,Y}) 是為了降低訓(xùn)練方差而引入的基線值函數(shù)。給定狀態(tài)值和其對(duì)應(yīng)的獎(jiǎng)勵(lì)值,該基線值函數(shù)可以使用L1損失函數(shù)來訓(xùn)練從而預(yù)測(cè)基線獎(jiǎng)勵(lì)值。對(duì)于匹配器Mφ,它以訓(xùn)練集合中的<上文,回復(fù)>對(duì)作為正樣本,以模型輸出的<上文,回復(fù)>對(duì)作為負(fù)樣本,通過最小化式(6)中的損失函數(shù)來進(jìn)行訓(xùn)練。生成器Gθ的訓(xùn)練和匹配器Mφ的訓(xùn)練交替進(jìn)行,即訓(xùn)練其中一項(xiàng)的時(shí)候固定另外一項(xiàng)的參數(shù),以保證模型學(xué)習(xí)的穩(wěn)定性。

      采用上述的策略梯度方法進(jìn)行訓(xùn)練時(shí),由于匹配器的輸入是對(duì)話上文和整句回復(fù),因此生成器Gθ只能在整個(gè)回復(fù)都解碼完畢之后才能接收到匹配器求得的獎(jiǎng)勵(lì)信號(hào),這導(dǎo)致用于訓(xùn)練生成器Gθ的獎(jiǎng)勵(lì)信號(hào)非常稀疏,模型的學(xué)習(xí)因此也不夠有效。

      本文采用蒙特卡洛采樣[32]的方法來緩解這一問題,使得生成器Gθ對(duì)于解碼過程中的每一步都能接收到相應(yīng)的獎(jiǎng)勵(lì)信號(hào)。具體而言,對(duì)于一個(gè)長(zhǎng)度為T的序列,在解碼到第t個(gè)時(shí)間步時(shí),蒙特卡洛采樣使用一個(gè)臨時(shí)的策略G′θ來解碼出剩余的T -t個(gè)單詞,該采樣過程重復(fù)N次。如此操作之后,對(duì)于相同的上文X,便得到了N條完整且不同的回復(fù){Y1,Y2,…,YN}。然后將這N對(duì)<上文,回復(fù)>樣本送入匹配器M便可求得N個(gè)匹配度分?jǐn)?shù)。本文使用這些匹配度分?jǐn)?shù)的均值來近似估計(jì)第t個(gè)時(shí)間步時(shí)解碼單詞的獎(jiǎng)勵(lì)值。用作采樣的臨時(shí)策略網(wǎng)絡(luò)G′θ可以使用和生成器Gθ相同的參數(shù),并隨著Gθ的訓(xùn)練也相應(yīng)地更新其網(wǎng)絡(luò)參數(shù)。

      上述的蒙特卡洛采樣估計(jì)獎(jiǎng)勵(lì)值的方法存在一個(gè)顯著問題,即每一步解碼均需執(zhí)行N次采樣,計(jì)算開銷是原方法的NT倍。本文中,令N值隨時(shí)間步t逐級(jí)減小從而緩解計(jì)算開銷過大的問題,即N本文中,N0設(shè)置為10。

      使用對(duì)抗學(xué)習(xí)的方法對(duì)本文框架MatchGAN 進(jìn)行訓(xùn)練時(shí),由于匹配器Mφ相比于生成器Gθ更容易學(xué)習(xí),因此訓(xùn)練后期Gθ的學(xué)習(xí)往往存在梯度消失的問題。換句話說,由于匹配器Mφ很快收斂,因此對(duì)于生成器Gθ產(chǎn)生的回復(fù),匹配器Mφ給出的獎(jiǎng)勵(lì)值往往過小,使得生成器Gθ無法繼續(xù)訓(xùn)練。針對(duì)這一問題,本文借鑒文獻(xiàn)[33,34]中的思想,在將匹配器給出的獎(jiǎng)勵(lì)值送入生成器之前,對(duì)其進(jìn)行縮放操作。具體地,對(duì)于生成器給出的B條長(zhǎng)度為T的回復(fù),匹配器相應(yīng)地給出了B ×T個(gè)獎(jiǎng)勵(lì)值,記為ZB×T。對(duì)于獎(jiǎng)勵(lì)值矩陣中的第t列Zt中的每一個(gè)元素對(duì)其做如下的縮放操作:

      其中,rank(i) 是第i個(gè)元素在該列中按照由高到低順序的排名。δ是一個(gè)用以控制縮放強(qiáng)度的超參數(shù),本文中設(shè)置為12。σ(·) 是sigmoid 激活函數(shù)。

      3 實(shí)驗(yàn)與分析

      本節(jié)描述本文框架的實(shí)驗(yàn)仿真,包括數(shù)據(jù)集設(shè)置、對(duì)比模型與實(shí)驗(yàn)參數(shù)設(shè)置、實(shí)驗(yàn)結(jié)果和實(shí)驗(yàn)分析4 部分內(nèi)容。

      3.1 數(shù)據(jù)集設(shè)置

      實(shí)驗(yàn)在3 類人人對(duì)話數(shù)據(jù)集上進(jìn)行,其中包括中文多輪對(duì)話數(shù)據(jù)集Baidu-Tieba、英文一對(duì)多單輪對(duì)話StackOverflow 和英文多輪對(duì)話數(shù)據(jù)集PERSONA-CHAT。

      Baidu-Tieba 數(shù)據(jù)集該數(shù)據(jù)集包含了從百度貼吧抓取的百萬條多輪對(duì)話,其中,100 萬條語料用于訓(xùn)練,5000 條語料用于驗(yàn)證,10 000 條語料用于測(cè)試。該數(shù)據(jù)集中句子的長(zhǎng)度被控制在6~80 中文字符之間。經(jīng)過詞化器處理后,詞表大小為5564。

      StackOverflow 數(shù)據(jù)集該數(shù)據(jù)集是一個(gè)一對(duì)多的對(duì)話數(shù)據(jù)集,即一條對(duì)話上文有多條回復(fù)與之對(duì)應(yīng)。使用該數(shù)據(jù)集來驗(yàn)證本文模型能否有效利用人人對(duì)話中的多映射關(guān)系。本文從StackOverflow論壇上抓取了50 多萬條對(duì)話語料,其中,50 萬條語料用作訓(xùn)練集,3000 條語料用作驗(yàn)證集,5000 條語料用作測(cè)試集。語料中的句子長(zhǎng)度被控制在10~100 中文字符之間,詞表大小為24 012。每條對(duì)話上文平均對(duì)應(yīng)于2.2 條回復(fù)。

      PERSONA-CHAT 數(shù)據(jù)集該數(shù)據(jù)集共包含139 239 條使用眾包平臺(tái)Amazon mturk 收集而來的對(duì)話語料[35],其中,131 438 條數(shù)據(jù)被用作訓(xùn)練集,7801 條被用作驗(yàn)證集和測(cè)試集,詞表大小為9293。

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

      基線對(duì)比方法。將本文所提出的方法與下列模型進(jìn)行了對(duì)比,包括:(1)Seq2Seq-attn:一種基于源端注意力機(jī)制的序列到序列模型[29],該模型使用極大似然估計(jì)方法進(jìn)行訓(xùn)練。(2)Seq2Seq-tgt-attn:一種基于源端注意力機(jī)制和目標(biāo)側(cè)注意力機(jī)制的序列到序列模型,該模型用來驗(yàn)證目標(biāo)側(cè)注意力機(jī)制。(3)Adver-REGS:一種基于對(duì)抗訓(xùn)練的對(duì)話生成模型[16],其中生成器為一個(gè)序列到序列模型,判別器是一個(gè)二分類器。(4)PG-BLEU[36]:該模型使用策略梯度方法直接優(yōu)化特定任務(wù)評(píng)價(jià)指標(biāo),如BLEU[37]。(5)MMI:一種基于最大化對(duì)話上文和回復(fù)之間互信息的對(duì)話生成模型[10]。(6)RL-Cos:使用強(qiáng)化學(xué)習(xí)的訓(xùn)練方式以使得模型生成的回復(fù)與相應(yīng)的上文在語義上要盡可能地相似[14]。

      為了更好地評(píng)估本文的方法,本文設(shè)計(jì)了模型的變體MatchGAN w/o Tgt-attn,其中,MatchGAN w/o Tgt-attn 模型的生成器沒有使用目標(biāo)側(cè)注意力機(jī)制。

      實(shí)驗(yàn)參數(shù)設(shè)置。本研究使用ParlAI[38]對(duì)本文所提出的對(duì)話學(xué)習(xí)框架和相關(guān)基線模型進(jìn)行了實(shí)現(xiàn)。所有模型的訓(xùn)練均使用英偉達(dá)P40 型顯卡。模型的具體實(shí)現(xiàn)細(xì)節(jié)如下:對(duì)于數(shù)據(jù)集Baidu-Tieba,由于其詞語分布長(zhǎng)尾效應(yīng)和詞切分錯(cuò)誤等問題[39],本文使用字級(jí)別的向量嵌入來對(duì)其進(jìn)行表征學(xué)習(xí)。對(duì)于數(shù)據(jù)集StackOverflow 和PERSONA-CHAT,本文使用GloVe 預(yù)訓(xùn)練詞向量[40]來初始化模型的詞嵌入層。對(duì)于訓(xùn)練過程,本文使用了雙層的LSTM 網(wǎng)絡(luò)來構(gòu)建本文框架中的生成器和判別器中的編碼器。由于策略梯度方法的不穩(wěn)定性,首先使用極大似然估計(jì)方法來預(yù)訓(xùn)練本文框架中的生成器,而后再進(jìn)一步訓(xùn)練整個(gè)模型。為了避免過擬合,本文采用早期停止(early-stopping)策略來選擇模型終止點(diǎn)。對(duì)于模型參數(shù)設(shè)置,LSTM 網(wǎng)絡(luò)的隱藏層單元大小為256,詞向量的大小為300。本文使用Adam優(yōu)化器[41]來優(yōu)化模型參數(shù),初始學(xué)習(xí)率為0.001。Dropout的丟棄率為0.2。

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

      3.3.1 量化評(píng)估結(jié)果

      使用量化指標(biāo)來評(píng)估開放域?qū)υ捪到y(tǒng)的性能一直以來都是一個(gè)備受關(guān)注的問題。為了衡量回復(fù)的信息豐富度、語言流暢性及其與參考回復(fù)差異性,本文采用了多樣性指標(biāo)dist[10]、困惑度指標(biāo)PPL[42]和BLEU 指標(biāo)[37]。除此之外,本文也采用了對(duì)話回復(fù)評(píng)測(cè)中常用的召回率指標(biāo)RC@k[35]。該指標(biāo)的計(jì)算方式為:給定對(duì)話上文,使用待評(píng)測(cè)模型對(duì)C條候選回復(fù)進(jìn)行重排序,如果正確的回復(fù)被排到了前k名,則輸出評(píng)測(cè)結(jié)果為正確。RC@k計(jì)算了測(cè)試集中評(píng)測(cè)結(jié)果為正確的回復(fù)所占的比例。使用該指標(biāo)對(duì)模型進(jìn)行評(píng)測(cè)的潛在假設(shè)是:如果對(duì)話模型在生成任務(wù)上能夠有好的表現(xiàn),則它在排序任務(wù)中也應(yīng)該表現(xiàn)良好。本文實(shí)驗(yàn)中使用了R20@1 和R20@5 這2 個(gè)指標(biāo)。

      首先考察目標(biāo)側(cè)注意力機(jī)制的作用。如表1 所示,本文發(fā)現(xiàn),相比于模型Seq2Seq-attn,增加了目標(biāo)側(cè)注意力機(jī)制的Seq2Seq-attn-tgt 模型在3 類數(shù)據(jù)集的5 個(gè)指標(biāo)下都有效果上的提升。這說明目標(biāo)側(cè)注意力機(jī)制的確能夠提升對(duì)話生成模型的效果。相似的提升也可以在表1 所展示的MatchGAN 和Match-GAN w/o Tgt-attn 模型實(shí)驗(yàn)結(jié)果對(duì)比中看出。

      表1 在3 個(gè)數(shù)據(jù)集上的量化評(píng)估結(jié)果

      對(duì)于本文所提出的對(duì)抗匹配網(wǎng)絡(luò),從表1 所示的實(shí)驗(yàn)結(jié)果可以觀察到,移除了該對(duì)抗匹配網(wǎng)絡(luò)的Seq2Seq-tgt-attn 模型相較于MatchGAN 模型在3 類數(shù)據(jù)集上的多項(xiàng)指標(biāo)下均有明顯的性能下降。移除了對(duì)抗匹配網(wǎng)絡(luò)的Seq2Seq-attn 模型相較于Match-GAN w/o Tgt-attn 在各評(píng)測(cè)數(shù)據(jù)集上的量化指標(biāo)結(jié)果也呈現(xiàn)出類似的趨勢(shì)。這些實(shí)驗(yàn)結(jié)果說明,本文所提出的基于張量匹配的對(duì)抗學(xué)習(xí)方法確實(shí)有助于提高對(duì)話生成回復(fù)的質(zhì)量。

      對(duì)于基線模型來說,由于MMI 直接以提升多樣性作為其訓(xùn)練目標(biāo),其在dist-1 指標(biāo)上的得分較高。然而,MMI 模型在R20@1 和R20@5 指標(biāo)上的表現(xiàn)一般,這意味著該模型不能很好地從候選集中識(shí)別出目標(biāo)回復(fù)。本文的模型在dist-1 指標(biāo)上有著較高的得分,這說明多維度地建模并利用對(duì)話上文與回復(fù)之間的關(guān)系來增強(qiáng)模型的上下文感知能力有助于提高生成回復(fù)的多樣性及信息豐富度,這與本文的假設(shè)一致。

      本文所提出的MatchGAN 框架在3 類數(shù)據(jù)集上的多個(gè)指標(biāo)下幾乎都帶來了明顯的效果提升,尤其是在數(shù)據(jù)集StackOverflow 上。相比于Seq2Seq-attn模型,MatchGAN 在數(shù)據(jù)集StackOverflow 上對(duì)于R20@1 指標(biāo)有12.87%的相對(duì)提高,對(duì)于dist-1 指標(biāo)則帶來了超過200%的相對(duì)提高。這些提升的潛在原因在于,StackOverflow 數(shù)據(jù)集中的一對(duì)多關(guān)系使得本文框架中的匹配網(wǎng)絡(luò)能夠更為顯式地學(xué)習(xí)對(duì)話中的這種多映射關(guān)系,從而使得模型能夠生成更為連貫的回復(fù)。相比于模型RL-Cos,由于本文方法對(duì)上下文之間關(guān)系的建模沒有局限于語義相似這一維度,而是試圖挖掘多個(gè)方面的隱式關(guān)系,因此,本文方法在效果上也優(yōu)于RL-Cos。對(duì)于R20@1、R20@5、BLEU、dist-1 和PPL 這些指標(biāo),本文框架相比于基線模型均有明顯的效果提升,這進(jìn)一步說明了本文方法中所設(shè)計(jì)的用以學(xué)習(xí)上下文多維度關(guān)系匹配的張量網(wǎng)絡(luò)和目標(biāo)側(cè)注意力機(jī)制能夠提升生成對(duì)話的質(zhì)量。

      3.3.2 人工評(píng)測(cè)

      已有的研究工作[43]指出,僅依靠自動(dòng)指標(biāo)來評(píng)價(jià)開放域?qū)υ捪到y(tǒng)是不充分的。因此,本文進(jìn)一步使用了人工評(píng)測(cè)的方法來評(píng)估所提出方法的表現(xiàn)。具體而言,本研究從以下3 個(gè)方面對(duì)回復(fù)的質(zhì)量進(jìn)行人工評(píng)測(cè):上文連貫性(連貫性)、內(nèi)部語義一致性(一致性)以及該回復(fù)是否能讓與試人員更容易做出進(jìn)一步應(yīng)答(啟發(fā)性)。這3 個(gè)方面的量化評(píng)測(cè)采用四分制,由低到高分別為0~3 分。本文隨機(jī)抽取了200 條對(duì)話樣例,并邀請(qǐng)了3 位本專業(yè)的研究人員來對(duì)各個(gè)系統(tǒng)所產(chǎn)生的回復(fù)作出評(píng)估。在評(píng)測(cè)過程中,某條回復(fù)所來自的系統(tǒng)對(duì)于標(biāo)注人員是不可見的。給定某條對(duì)話上文,各系統(tǒng)分別生成對(duì)應(yīng)的回復(fù),然后標(biāo)注人員對(duì)這些回復(fù)進(jìn)行獨(dú)立評(píng)分。

      表2 展示了人工評(píng)測(cè)的實(shí)驗(yàn)結(jié)果。可以看到,本文方法在上文連貫性上的得分要明顯高于其他基線模型,這說明,本文提出的多維度上下文關(guān)系建模機(jī)制能夠有效學(xué)習(xí)并利用對(duì)話上文與其回復(fù)之間的匹配關(guān)系,使得生成的回復(fù)與給定的上文更為契合。另外值得注意的是,MatchGAN 在內(nèi)部語義一致性指標(biāo)上也有著較高的得分。相比于Seq2Seq-attn,Seq2Seq-tgt-attn 模型在內(nèi)部語義一致性指標(biāo)上也有明顯的提升。這些提升得益于目標(biāo)側(cè)注意力機(jī)制的引入,回復(fù)句子在解碼時(shí)可以關(guān)注到序列內(nèi)部的信息,因而緩解了回復(fù)句子內(nèi)部諸如片段重復(fù)與邏輯沖突這些問題。評(píng)測(cè)結(jié)果中的Cohen’s Kappa 分?jǐn)?shù)[44]表明了標(biāo)注人員評(píng)分的相對(duì)一致性。

      表2 實(shí)驗(yàn)數(shù)據(jù)集上的人工評(píng)測(cè)結(jié)果

      3.4 實(shí)驗(yàn)分析

      3.4.1 上文輪數(shù)的影響

      在本文所提出的方法中,模型通過顯式地建模并利用上文與回復(fù)之間多維度的語義關(guān)系來增強(qiáng)對(duì)話生成模型的上文感知能力。本節(jié)探討對(duì)話上文輪數(shù)這一因素對(duì)本文方法的影響。如圖2 所示,相比于基線模型,本文模型在BLEU 和dist-1 上的表現(xiàn)隨著上文輪數(shù)的增加而進(jìn)一步提升,而且這種提升在上文輪數(shù)超過3 時(shí)表現(xiàn)得更為明顯。這種現(xiàn)象的部分原因在于,更長(zhǎng)的上文使得匹配網(wǎng)絡(luò)能夠更為充分地建模其與回復(fù)之間的關(guān)系,進(jìn)而為對(duì)話生成模型提供更為準(zhǔn)確的反饋信息并提高其回復(fù)生成的能力。

      圖2 在數(shù)據(jù)集PERSONA-CHAT 中上文輪數(shù)對(duì)模型性能的影響分析

      3.4.2 案例分析

      本節(jié)給出實(shí)際的對(duì)話樣例來展示模型效果。表3 提供了若干條測(cè)試樣例與對(duì)應(yīng)的模型輸出??梢钥吹?(1)Seq2Seq-tgt-attn 模型相比于Seq2Seq-attn生成了信息更為豐富且語義一致的回復(fù),所生成的回復(fù)中連接詞“然而”“但是”的使用更為合適,子句之間也沒有邏輯沖突。這說明目標(biāo)側(cè)注意力機(jī)制能夠更為細(xì)粒度地捕捉回復(fù)側(cè)的語義信息并提高句子內(nèi)部的一致性。(2)相比于基線模型,MatchGAN 模型生成回復(fù)的上文相關(guān)性更強(qiáng),信息量也更為豐富。值得一提的是,本文模型所生成的回復(fù)往往包含與對(duì)應(yīng)上文內(nèi)容密切相關(guān)的線索詞,例如,Baidu-Tieba測(cè)試樣例中,球星“林佳德”對(duì)應(yīng)于上文中的球星“德佩”;PERSONA-CHAT 測(cè)試樣例中,歌星“the Beatles”對(duì)應(yīng)于歌星“Hank Williams”,這反映了有效建模對(duì)話上下文關(guān)系能夠增強(qiáng)談?wù)撛掝}的可持續(xù)性,而這種話題的延展能力對(duì)于構(gòu)建一個(gè)用戶樂于與之交互的對(duì)話模型來說非常重要。這一現(xiàn)象也符合本文的預(yù)期,即張量匹配網(wǎng)絡(luò)使得對(duì)話上下文之間的關(guān)系建模不僅局限于語義相似,而是能夠擴(kuò)展到更為隱式的上下文關(guān)聯(lián)關(guān)系。(3)本文模型所產(chǎn)生的回復(fù)在內(nèi)部語義一致性和外部上文相關(guān)性上均有明顯提升。模型 Adver-REGS 和 MMI 相比Seq2Seq-attn 能夠生成更長(zhǎng)的回復(fù),然而,這些回復(fù)要么與上文的相關(guān)性較弱,要么其內(nèi)部子句存在語義不一致的現(xiàn)象。RL-Cos 模型往往給出與上文語義相近的回復(fù),無法進(jìn)一步拓展話題。本文模型得益于目標(biāo)側(cè)注意力機(jī)制和對(duì)抗式匹配模型的引入,所生成的對(duì)話回復(fù)中子句之間語義沖突的問題及上文相關(guān)性較差的問題得到了緩解。樣例展示的回復(fù)質(zhì)量的提升并非個(gè)例,本研究在其他測(cè)試樣例上也觀察到了類似的質(zhì)量提升。綜合前文中量化指標(biāo)評(píng)測(cè)與案例分析結(jié)果,本文發(fā)現(xiàn),融合了目標(biāo)側(cè)注意力機(jī)制和張量匹配網(wǎng)絡(luò)的對(duì)抗式對(duì)話生成模型確實(shí)能夠有效提高對(duì)話生成的內(nèi)部語義一致性和外部上文相關(guān)性。

      表3 在數(shù)據(jù)集Baidu-Tieba 和PERSONA-CHAT 上各模型的生成樣例展示

      4 結(jié)論

      本文介紹了面向一致性對(duì)話生成的對(duì)抗性張量匹配網(wǎng)絡(luò)與目標(biāo)側(cè)注意力機(jī)制。為了增強(qiáng)對(duì)話回復(fù)的內(nèi)部語義一致性,本文引入了目標(biāo)側(cè)注意力機(jī)制,使得模型在自回歸解碼的過程中能夠關(guān)注到已經(jīng)生成的前文回復(fù)。為了提高對(duì)話回復(fù)的外部上文相關(guān)性,本文基于張量網(wǎng)絡(luò)設(shè)計(jì)了一種對(duì)抗式的匹配模型來顯式地建模上下文之間的交互關(guān)系并增強(qiáng)回復(fù)生成模型的上文感知能力。在3 個(gè)大規(guī)模真實(shí)對(duì)話數(shù)據(jù)集上的實(shí)驗(yàn)表明,相較于其他模型,本文方法有效地提升了對(duì)話模型所生成回復(fù)的內(nèi)部語義一致性和外部上文相關(guān)性。本文中的對(duì)抗式匹配模型并不局限于特定的生成器結(jié)構(gòu),未來工作中,本研究計(jì)劃進(jìn)一步探討其在其他生成器結(jié)構(gòu)如Transformer[28]中的作用。

      猜你喜歡
      注意力語義建模
      讓注意力“飛”回來
      聯(lián)想等效,拓展建?!浴皫щ娦∏蛟诘刃?chǎng)中做圓周運(yùn)動(dòng)”為例
      語言與語義
      基于PSS/E的風(fēng)電場(chǎng)建模與動(dòng)態(tài)分析
      電子制作(2018年17期)2018-09-28 01:56:44
      不對(duì)稱半橋變換器的建模與仿真
      “揚(yáng)眼”APP:讓注意力“變現(xiàn)”
      A Beautiful Way Of Looking At Things
      “上”與“下”語義的不對(duì)稱性及其認(rèn)知闡釋
      認(rèn)知范疇模糊與語義模糊
      三元組輻射場(chǎng)的建模與仿真
      淮阳县| 南漳县| 平原县| 永丰县| 桐庐县| 海淀区| 舟曲县| 镶黄旗| 内江市| 周至县| 沙田区| 九寨沟县| 三河市| 东阳市| 开远市| 富蕴县| 平湖市| 龙海市| 建宁县| 乐山市| 开封市| 额敏县| 阳城县| 合肥市| 依兰县| 沙河市| 南宫市| 保亭| 百色市| 汕头市| 汝州市| 石家庄市| 山阳县| 余庆县| 弋阳县| 凯里市| 南康市| 阿尔山市| 文登市| 东兴市| 云林县|