王 豪,郭 斌,郝少陽(yáng),張秋韻,於志文
基于深度學(xué)習(xí)的個(gè)性化對(duì)話(huà)內(nèi)容生成方法
王 豪,郭 斌,郝少陽(yáng),張秋韻,於志文
(西北工業(yè)大學(xué)計(jì)算機(jī)學(xué)院,陜西 西安 710072)
人機(jī)對(duì)話(huà)系統(tǒng)是人機(jī)交互領(lǐng)域一個(gè)非常重要的研究方向,開(kāi)放域聊天機(jī)器人的研究受到了廣泛關(guān)注?,F(xiàn)有的聊天機(jī)器人主要存在3個(gè)方面的問(wèn)題:①無(wú)法有效捕捉上下文情境信息,導(dǎo)致前后對(duì)話(huà)內(nèi)容缺乏邏輯關(guān)聯(lián)。②大部分不具備個(gè)性化特征,導(dǎo)致聊天過(guò)程千篇一律,且前后對(duì)話(huà)內(nèi)容可發(fā)生矛盾。③傾向于生成“我不知道”、“對(duì)不起”等無(wú)意義的通用回復(fù)內(nèi)容,極大降低用戶(hù)的聊天興趣。本研究中利用基于Transformer模型的編解碼(Encoder-Decoder)結(jié)構(gòu)分別構(gòu)建了通用對(duì)話(huà)模型和個(gè)性化對(duì)話(huà)模型,通過(guò)編碼歷史對(duì)話(huà)內(nèi)容和個(gè)性化特征信息,模型可以有效捕捉上下文情境信息以及個(gè)性化信息,實(shí)現(xiàn)多輪對(duì)話(huà)過(guò)程,且對(duì)話(huà)內(nèi)容符合個(gè)性化特征。實(shí)驗(yàn)結(jié)果表明,基于Transformer的對(duì)話(huà)模型在困惑度(perplexity)和F1分?jǐn)?shù)評(píng)價(jià)指標(biāo)上相比于基線(xiàn)模型得到了一定的提升,人工評(píng)價(jià)顯示模型可以正常進(jìn)行多輪交互對(duì)話(huà)過(guò)程,生成內(nèi)容多樣性高,且符合給定的個(gè)性化特征。
深度學(xué)習(xí);對(duì)話(huà)系統(tǒng);聊天機(jī)器人;個(gè)性化;上下文感知
人機(jī)對(duì)話(huà)系統(tǒng)是人機(jī)交互領(lǐng)域一個(gè)非常重要的研究方向,形式多樣的對(duì)話(huà)系統(tǒng)正處于蓬勃發(fā)展階段。文本生成,即自然語(yǔ)言生成,是實(shí)現(xiàn)對(duì)話(huà)系統(tǒng)的關(guān)鍵技術(shù),可以利用各種不同類(lèi)型的信息,如文本、圖像等,自動(dòng)生成流暢通順、語(yǔ)義清晰的高質(zhì)量自然語(yǔ)言文本。2003年BENGIO等[1]將神經(jīng)網(wǎng)絡(luò)語(yǔ)言模型應(yīng)用于文本生成任務(wù)中,利用神經(jīng)網(wǎng)絡(luò)進(jìn)行語(yǔ)言建模,為了解決自然語(yǔ)言中的長(zhǎng)期依賴(lài)問(wèn)題,2010年MIKOLOV等[2]利用RNN建立語(yǔ)言模型,提出了循環(huán)神經(jīng)網(wǎng)絡(luò)語(yǔ)言模型RNNLM,顯著提高了語(yǔ)言模型的準(zhǔn)確性。之后RNN及其各種變體如長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(long short-term memory, LSTM)開(kāi)始成為自然語(yǔ)言處理技術(shù)中最常用的方法。而最近提出的Transformer模型[3]成功解決了RNN模型中存在的一些問(wèn)題,引發(fā)了一輪又一輪的研究熱潮。
社交聊天機(jī)器人,即能夠與人類(lèi)進(jìn)行共情對(duì)話(huà)的人機(jī)對(duì)話(huà)系統(tǒng),是人工智能領(lǐng)域持續(xù)時(shí)間最長(zhǎng)的研究目標(biāo)之一。聊天機(jī)器人若想與用戶(hù)建立情感聯(lián)系,必須具有幾種能力,首先是上下文情境整合能力,在聊天過(guò)程中考慮各種情境信息來(lái)產(chǎn)生相應(yīng)的回復(fù)內(nèi)容,增加用戶(hù)的真實(shí)交互感。同時(shí)聊天機(jī)器人必須擁有前后一致的個(gè)性化人格,如年齡、性別等,如果這些特征發(fā)生變化,很容易讓用戶(hù)產(chǎn)生剝離感。最后是對(duì)話(huà)內(nèi)容必須具有多樣性,不能總是產(chǎn)生“我不知道”、“是的,沒(méi)錯(cuò)”這種通用回復(fù),否則用戶(hù)極易產(chǎn)生厭倦。
為了解決這些問(wèn)題,本文構(gòu)建了基于情境的個(gè)性化對(duì)話(huà)內(nèi)容生成模型。對(duì)話(huà)過(guò)程中考慮上下文情境信息和考慮個(gè)性化特征信息,并采用多種優(yōu)化方法增加生成回復(fù)內(nèi)容的多樣性,生成上下文連貫一致且符合個(gè)性化特征的高質(zhì)量對(duì)話(huà)內(nèi)容。本文的主要工作內(nèi)容和貢獻(xiàn)包括以下幾個(gè)方面:
(1) 利用基于Transformer模型構(gòu)建通用對(duì)話(huà)模型。通過(guò)編碼歷史對(duì)話(huà)內(nèi)容,有效捕捉上下文情境信息,實(shí)現(xiàn)多輪對(duì)話(huà)過(guò)程。
(2) 調(diào)整通用對(duì)話(huà)模型結(jié)構(gòu),編碼階段加入個(gè)性化特征信息,構(gòu)建個(gè)性化對(duì)話(huà)模型,有效捕捉其特征,生成符合個(gè)性化特征且前后保持一致的對(duì)話(huà)內(nèi)容。
(3) 利用標(biāo)簽平滑、帶有長(zhǎng)度懲罰的多樣化集束搜索等算法解決模型傾向于生成通用性回復(fù)的問(wèn)題,豐富生成內(nèi)容的多樣性。
近年來(lái),人機(jī)對(duì)話(huà)系統(tǒng)備受學(xué)術(shù)界和工業(yè)界的關(guān)注,創(chuàng)建一個(gè)自動(dòng)人機(jī)對(duì)話(huà)系統(tǒng)為人類(lèi)提供特定的服務(wù)或與人類(lèi)進(jìn)行自然交流不再是一種幻想[4]。
SORDONI等[5]基于RNN構(gòu)建了一個(gè)端到端回復(fù)生成模型,通過(guò)編碼歷史對(duì)話(huà),捕捉上下文情境信息,生成連貫一致的對(duì)話(huà)內(nèi)容。VINYALS等[6-7]利用了LSTM進(jìn)行對(duì)話(huà)模型的構(gòu)建。盡管LSTM在一定程度上緩解了長(zhǎng)距離依賴(lài)問(wèn)題,但是實(shí)際應(yīng)用過(guò)程中仍有可能遇到更長(zhǎng)的上下文內(nèi)容,文獻(xiàn)[8]提出多層循環(huán)編解碼模型(hierarchical recurrent encoder-decoder, HRED),將編碼過(guò)程分為2個(gè)層次,分別編碼單詞序列和句子序列,得到上下文表示向量,指導(dǎo)解碼過(guò)程。實(shí)驗(yàn)表明,多層編碼結(jié)構(gòu)可更有效地捕捉上下文信息。不同的上下文語(yǔ)境對(duì)生成回復(fù)內(nèi)容有著不同的影響,SHANG等[9]引入了注意力機(jī)制(attention mechanism),通過(guò)計(jì)算不同時(shí)刻上下文的權(quán)重,決定上下文內(nèi)容在回復(fù)中的表達(dá)程度,取得了更好的效果。
雖然RNN的天然序列結(jié)構(gòu)適合進(jìn)行自然語(yǔ)言處理的任務(wù),但其嚴(yán)格的線(xiàn)性結(jié)構(gòu)會(huì)導(dǎo)致訓(xùn)練過(guò)程中容易發(fā)生梯度消失或爆炸問(wèn)題,而且難以進(jìn)行并行訓(xùn)練,這在大規(guī)模應(yīng)用場(chǎng)景中是一個(gè)很?chē)?yán)重的問(wèn)題。為了解決這些問(wèn)題,Google在2017年提出了一種新的序列建模模型-Transformer模型[3]。該模型一經(jīng)提出,就在NLP領(lǐng)域引起了極大的反響,其拋棄了RNN中的序列結(jié)構(gòu),整個(gè)模型完全由Attention模塊構(gòu)成,有效地解決了長(zhǎng)距離依賴(lài)問(wèn)題和并行計(jì)算能力差的問(wèn)題。Transformer模型可以高效地捕捉文本序列的語(yǔ)義信息,在語(yǔ)義特征提取能力、長(zhǎng)距離特征捕獲能力、任務(wù)綜合特征抽取能力都遠(yuǎn)超過(guò)RNN模型[10]。最近相當(dāng)火爆的大型預(yù)訓(xùn)練模型如GPT模型[11]、BERT模型[12]的基本結(jié)構(gòu)均為T(mén)ransformer,在多種自然語(yǔ)言處理任務(wù)中創(chuàng)造出極佳的成績(jī),其出眾的能力顯而易見(jiàn)。
純數(shù)據(jù)驅(qū)動(dòng)的端到端對(duì)話(huà)系統(tǒng)無(wú)法考慮個(gè)性化特征,不能給用戶(hù)沉浸式的交互體驗(yàn)[13]。LI等[14]提出個(gè)性化回復(fù)生成模型,使用類(lèi)似詞嵌入的方式將用戶(hù)編碼到高維隱空間中,以指導(dǎo)回復(fù)生成過(guò)程。LIU等[15]提出了個(gè)性化回復(fù)生成模型,通過(guò)用戶(hù)的交互對(duì)話(huà)內(nèi)容來(lái)隱式學(xué)習(xí)用戶(hù)的個(gè)性化特征。LUO等[16]提出了基于記憶網(wǎng)絡(luò)(memory network)的個(gè)性化目標(biāo)驅(qū)動(dòng)型對(duì)話(huà)系統(tǒng),編碼用戶(hù)個(gè)性化特征,同時(shí)利用全局記憶單元存儲(chǔ)相似用戶(hù)對(duì)話(huà)歷史,生成更加符合用戶(hù)個(gè)性化的內(nèi)容?,F(xiàn)有的聊天機(jī)器人研究中還存在著一些不足,如何更加高效地捕捉上下文情境信息、保持一致的個(gè)性化特征、以及生成更加多樣性的回復(fù)內(nèi)容,仍是目前亟待解決的問(wèn)題。
本文利用了Transformer模型進(jìn)行非目標(biāo)驅(qū)動(dòng)型對(duì)話(huà)系統(tǒng)即聊天機(jī)器人的構(gòu)建,且實(shí)現(xiàn)了與用戶(hù)進(jìn)行開(kāi)放域內(nèi)的對(duì)話(huà)。Transformer模型的本質(zhì)上是編-解碼架構(gòu),模型的整體結(jié)構(gòu)如圖1所示。
圖1 Transformer模型整體結(jié)構(gòu)圖
其中編碼和解碼模型分別由6個(gè)編碼器和解碼器組成。每個(gè)編碼器和解碼器的結(jié)構(gòu)分別如圖2所示。編碼過(guò)程中,數(shù)據(jù)首先經(jīng)過(guò)自注意力(Self-attention)模塊得到加權(quán)之后的特征向量,再經(jīng)過(guò)前饋神經(jīng)網(wǎng)絡(luò)得到輸出。解碼器比編碼器中多了編-解碼注意力模塊,用于得到解碼階段當(dāng)前時(shí)刻輸出與編碼階段每一時(shí)刻輸入之間的相關(guān)關(guān)系。
自注意力機(jī)制是Transformer模型最核心的部分,捕捉一個(gè)序列自身單詞之間的依賴(lài)關(guān)系,根據(jù)上下文信息對(duì)句子中的單詞進(jìn)行編碼,使得單詞向量中蘊(yùn)含豐富的上下文信息。計(jì)算過(guò)程中,輸入序列的每個(gè)單詞的詞嵌入向量分別與3個(gè)權(quán)重矩陣相乘得到對(duì)應(yīng)的、及向量,然后將當(dāng)前單詞的向量與輸入序列中其他單詞的向量作點(diǎn)積運(yùn)算得到相關(guān)程度,進(jìn)行歸一化后的結(jié)果再通過(guò)Softmax激活函數(shù)得到概率分布,最后將概率分布作為權(quán)重值對(duì)每個(gè)單詞的向量進(jìn)行加權(quán),得到當(dāng)前時(shí)刻單詞的向量表示,即
本文實(shí)驗(yàn)過(guò)程中首先進(jìn)行通用對(duì)話(huà)模型的設(shè)計(jì)與實(shí)現(xiàn)開(kāi)放域多輪日常對(duì)話(huà)過(guò)程。本文中設(shè)計(jì)的通用對(duì)話(huà)模型基于編-解碼結(jié)構(gòu),其中編碼端和解碼端分別由Transformer編碼器和解碼器組成。模型的整體結(jié)構(gòu)如圖3所示。
圖3 通用對(duì)話(huà)模型結(jié)構(gòu)圖
編碼端和解碼端的層數(shù)均為12層,為了考慮上下文情境信息,在編碼階段,將歷史對(duì)話(huà)內(nèi)容編碼,其中可能包含多個(gè)句子序列,每個(gè)序列獨(dú)自輸入模型,與當(dāng)前時(shí)刻輸入共同作用影響解碼階段的預(yù)測(cè)輸出。
利用詞嵌入方法Word2vec,將輸入對(duì)話(huà)數(shù)據(jù)轉(zhuǎn)換為詞向量,維度為512維。由于Transformer模型沒(méi)有捕捉序列數(shù)據(jù)的能力,因此利用位置編碼(Positional Embedding)的編碼序列中單詞位置信息,使模型可以區(qū)分序列中不同位置的單詞。位置編碼的向量維度與詞嵌入向量的維度相同,通過(guò)式(2)和(3)進(jìn)行單詞的位置編碼,即
其中,為單詞的位置;為單詞的維度。得到序列中每個(gè)單詞的位置編碼之后,將其值與單詞的詞向量做加和操作,得到每個(gè)單詞的輸入向量。
在自注意力機(jī)制的基礎(chǔ)上,模型中提出了多頭注意力(multi-head attention)機(jī)制,每個(gè)自注意力模塊稱(chēng)為一個(gè)注意力頭。多頭注意力機(jī)制的計(jì)算過(guò)程中,首先對(duì)輸入序列經(jīng)過(guò)個(gè)不同的注意力頭進(jìn)行計(jì)算,然后將這個(gè)不同的特征矩陣按列拼接為一個(gè)特征矩陣,再通過(guò)一個(gè)全連接層,壓縮為與單個(gè)注意力頭維度相同的矩陣,得到多頭注意力模塊輸出結(jié)果。計(jì)算如下
本文實(shí)驗(yàn)過(guò)程中,編碼和解碼端的多頭注意力層均包含12個(gè)注意力頭,整合方式不是標(biāo)準(zhǔn)Transformer模型中的方式,而是求所有注意力頭的對(duì)應(yīng)維度上的平均值,以減少降維過(guò)程中信息的損失并加速模型訓(xùn)練。
通用對(duì)話(huà)模型可以進(jìn)行多輪的對(duì)話(huà),但過(guò)程中未考慮個(gè)性化信息。沒(méi)有個(gè)性化特征的聊天機(jī)器人在對(duì)話(huà)過(guò)程中可能會(huì)產(chǎn)生語(yǔ)義不一致的現(xiàn)象,如前文提及自己為學(xué)生,而后文卻在上班。使其用戶(hù)產(chǎn)生剝離感,易使用戶(hù)意識(shí)自己在跟一個(gè)虛假的機(jī)器人聊天,難以建立長(zhǎng)期的情感聯(lián)系。為解決此問(wèn)題,本文設(shè)計(jì)了個(gè)性化對(duì)話(huà)模型,通過(guò)賦予聊天機(jī)器人個(gè)性化特征,使其可以根據(jù)自身的特征產(chǎn)生合適的回復(fù)內(nèi)容,提升用戶(hù)的聊天交互體驗(yàn)。
本文設(shè)計(jì)的個(gè)性化對(duì)話(huà)模型是基于編-解碼框架,其中編碼端和解碼端分別由Transformer模型的編碼器和解碼器組成,具體層數(shù)設(shè)置均與通用對(duì)話(huà)模型相同。與之不同的是,個(gè)性化對(duì)話(huà)模型需要考慮個(gè)性化特征信息,并在模型的輸入部分添加個(gè)性化信息進(jìn)行編碼,模型編碼階段結(jié)構(gòu)如圖4所示。
圖4 個(gè)性化對(duì)話(huà)模型結(jié)構(gòu)圖
編碼過(guò)程除了對(duì)當(dāng)前用戶(hù)輸入和歷史對(duì)話(huà)進(jìn)行編碼,最關(guān)鍵的部分是對(duì)個(gè)性化特征信息進(jìn)行編碼,本文中的個(gè)性化特征指一組對(duì)人物進(jìn)行描述的句子信息,編碼后的個(gè)性化特征向量與當(dāng)前輸入和歷史對(duì)話(huà)內(nèi)容共同指導(dǎo)解碼階段的回復(fù)生成過(guò)程。
解碼過(guò)程中,編-解碼注意力模塊可以確定當(dāng)前時(shí)刻用戶(hù)輸入、歷史對(duì)話(huà)內(nèi)容以及個(gè)性化特征信息對(duì)當(dāng)前時(shí)刻輸出的影響程度。通過(guò)綜合考慮上下文情境信息和個(gè)性化特征信息,個(gè)性化對(duì)話(huà)模型可以生成與上下文連貫一致并且符合特定的個(gè)性化特征的回復(fù)內(nèi)容。
4.5.1 標(biāo)簽平滑算法
在Seq2seq模型的訓(xùn)練過(guò)程中,通常通過(guò)最小化句子序列的負(fù)對(duì)數(shù)似然概率優(yōu)化模型,即
但該訓(xùn)練過(guò)程會(huì)強(qiáng)迫模型進(jìn)行非零即一的預(yù)測(cè)以區(qū)分真實(shí)數(shù)據(jù)和生成內(nèi)容,降低模型的泛化性能。標(biāo)簽平滑(label smoothing)算法通過(guò)類(lèi)似正則項(xiàng)的作用使模型對(duì)其預(yù)測(cè)結(jié)果降低自信以解決此問(wèn)題。利用一個(gè)與當(dāng)前輸入無(wú)關(guān)的先驗(yàn)分布來(lái)平滑預(yù)測(cè)目標(biāo)的分布函數(shù),通常采用所有的單詞的均勻先驗(yàn)分布。標(biāo)簽平滑等價(jià)于在負(fù)對(duì)數(shù)似然函數(shù)的基礎(chǔ)上添加一個(gè)KL散度項(xiàng),即計(jì)算先驗(yàn)分布與模型預(yù)測(cè)輸出概率之間的距離,即
通過(guò)防止模型將預(yù)測(cè)值過(guò)度集中在概率較大的類(lèi)別上,從而降低通用回復(fù)出現(xiàn)的概率,增加生成回復(fù)內(nèi)容的多樣性。
4.5.2 長(zhǎng)度懲罰的多樣化集束搜索算法
集束搜索算法是Seq2seq模型解碼階段常用的一種算法,其參數(shù)為解碼過(guò)程在每個(gè)時(shí)刻選擇概率最高的個(gè)單詞作為輸出。通過(guò)在每個(gè)時(shí)刻選擇概率最高的個(gè)單詞,該算法最終生成個(gè)概率最高的句子序列,并使其最大化,從而生成更加合理的結(jié)果,提高生成句子的質(zhì)量。
由于一個(gè)句子序列的概率由多個(gè)單詞的概率累乘得到,生成的句子序列越長(zhǎng),累乘得到的概率值可能就會(huì)越小,因此集束搜索算法傾向于生成較短的句子。Google提出了長(zhǎng)度懲罰方法解決這個(gè)問(wèn)題[17],通過(guò)降低短序列的概率值,提高長(zhǎng)序列的概率值,使模型有更多的機(jī)會(huì)生成較長(zhǎng)的序列,即
在實(shí)驗(yàn)過(guò)程中取值為0.6。
集束搜索算法中存在的另一個(gè)問(wèn)題為生成的個(gè)句子的差異性不大,多樣性較低。通過(guò)將生成結(jié)果進(jìn)行分組,組間加入相似性懲罰來(lái)降低生成多個(gè)結(jié)果的相似性,迫使模型生成更加多樣化的內(nèi)容,減少通用回復(fù)的出現(xiàn)。
實(shí)驗(yàn)過(guò)程利用了2個(gè)對(duì)話(huà)數(shù)據(jù)集。首先是DailyDialog數(shù)據(jù)集[18],其中共包含13 118組多輪對(duì)話(huà),平均每組對(duì)話(huà)中包括8輪對(duì)話(huà)過(guò)程。按照8∶1∶1的比例對(duì)該數(shù)據(jù)集進(jìn)行切分得到訓(xùn)練集、驗(yàn)證集和測(cè)試集,劃分結(jié)果見(jiàn)表1。在訓(xùn)練數(shù)據(jù)中平均每組多輪對(duì)話(huà)為7.7輪。
第2個(gè)數(shù)據(jù)集是Persona-Chat個(gè)性化對(duì)話(huà)數(shù)據(jù)集[19],其中共包含1 155組個(gè)性化信息,每組中至少包含5句個(gè)性化描述,如“我是一個(gè)藝術(shù)家。我有4個(gè)孩子”。其中共包含10 981組多輪對(duì)話(huà),平均每組多輪對(duì)話(huà)包含14.9輪對(duì)話(huà)。按照8∶1∶1的比例對(duì)數(shù)據(jù)集進(jìn)行切分得到訓(xùn)練集、驗(yàn)證集和測(cè)試集,劃分結(jié)果見(jiàn)表2。
表1 DailyDialog數(shù)據(jù)集切分結(jié)果
表2 Persona-Chat數(shù)據(jù)集切分結(jié)果
5.2.1 困惑度
困惑度(Perplexity)指標(biāo)可以用來(lái)衡量一個(gè)概率預(yù)測(cè)模型預(yù)測(cè)樣本的好壞程度,困惑度越低代表模型的性能越好,即
其中,Y為一個(gè)句子序列中的第個(gè)單詞。
5.2.2 F1分?jǐn)?shù)(F1-Score)
F1分?jǐn)?shù)是分類(lèi)問(wèn)題的一個(gè)衡量指標(biāo),是精確率(precision)和召回率(recall)的調(diào)和平均數(shù),即
F1分?jǐn)?shù)計(jì)算過(guò)程中,根據(jù)預(yù)測(cè)句子與目標(biāo)句子序列的單詞匹配程度計(jì)算精確率和召回率,F(xiàn)1分?jǐn)?shù)越高說(shuō)明模型預(yù)測(cè)句子序列的準(zhǔn)確度越高,模型的性能越好。
利用DailyDialog數(shù)據(jù)集訓(xùn)練通用對(duì)話(huà)模型,并利用Adam優(yōu)化器優(yōu)化加入了標(biāo)簽平滑正則項(xiàng)的對(duì)數(shù)似然函數(shù)。訓(xùn)練批次大小設(shè)置為128,學(xué)習(xí)率設(shè)置為6.25e-5,當(dāng)梯度值大于5時(shí)進(jìn)行梯度裁剪。利用Dropout機(jī)制防止過(guò)擬合現(xiàn)象的發(fā)生,概率為0.1。利用Persona-Chat數(shù)據(jù)集訓(xùn)練個(gè)性化對(duì)話(huà)模型,開(kāi)始時(shí)直接加載通用對(duì)話(huà)模型初始化參數(shù),然后進(jìn)行模型的訓(xùn)練,參數(shù)設(shè)置與通用對(duì)話(huà)模型相同。
5.4.1 通用對(duì)話(huà)模型實(shí)驗(yàn)對(duì)比分析
實(shí)驗(yàn)過(guò)程采用了3個(gè)基線(xiàn)模型:①基于RNN的Seq2seq模型,直接將所有歷史對(duì)話(huà)進(jìn)行編碼;②添加了Attention機(jī)制的Seq2seq模型;③HRED模型[8],將上下文對(duì)話(huà)信息分層編碼,且利用雙向RNN結(jié)構(gòu),加入了Attention機(jī)制。對(duì)比實(shí)驗(yàn)結(jié)果見(jiàn)表3和表4。
表3 通用對(duì)話(huà)模型困惑度對(duì)比實(shí)驗(yàn)結(jié)果
表4 通用對(duì)話(huà)模型F1分?jǐn)?shù)對(duì)比實(shí)驗(yàn)結(jié)果
從表3和表4可看出,基于RNN的Seq2seq 2個(gè)模型指標(biāo)均表現(xiàn)最差,而在添加了Attention機(jī)制后結(jié)果有了明顯的提升,說(shuō)明Attention機(jī)制對(duì)編解碼結(jié)構(gòu)的效果具有明顯的提升作用。而HRED模型通過(guò)多層編碼結(jié)構(gòu)考慮了更多的上下文對(duì)話(huà)信息,使其較雙向RNN結(jié)構(gòu)和Attention機(jī)制模型結(jié)果有了更進(jìn)一步的提升。而本文利用的Transformer模型在對(duì)比實(shí)驗(yàn)中取得了最好的結(jié)果,證明該模型可以產(chǎn)生更加高質(zhì)量的對(duì)話(huà)內(nèi)容。
表5為使用通用對(duì)話(huà)模型進(jìn)行對(duì)話(huà)的示例??梢钥闯?,模型可較為流暢地與人進(jìn)行開(kāi)放域的聊天過(guò)程,很少生成通用回復(fù),幾乎所有回復(fù)中都包含有用的信息,并且可以考慮到上下文信息,整個(gè)聊天過(guò)程可以有效持續(xù)進(jìn)行。
表5 通用對(duì)話(huà)模型對(duì)話(huà)示例
5.4.2 個(gè)性化對(duì)話(huà)模型實(shí)驗(yàn)結(jié)果
為了體現(xiàn)個(gè)性化特征對(duì)對(duì)話(huà)過(guò)程的影響,從數(shù)據(jù)集中隨機(jī)抽取一組個(gè)性化特征描述,將其賦予聊天機(jī)器人作為其個(gè)性化特征,驗(yàn)證聊天機(jī)器人能否有效捕捉個(gè)性化特征。由于機(jī)器評(píng)價(jià)指標(biāo)無(wú)法判斷對(duì)話(huà)內(nèi)容中是否包含個(gè)性化特征,因此對(duì)于個(gè)性化對(duì)話(huà)模型暫利用人工評(píng)價(jià)的方法進(jìn)行評(píng)價(jià),通過(guò)人工判斷對(duì)話(huà)過(guò)程中模型產(chǎn)生的對(duì)話(huà)回復(fù)是否符合被賦予的特定的個(gè)性化特征來(lái)評(píng)價(jià)模型的性能。表6隨機(jī)抽取的一組個(gè)性化特征描述內(nèi)容。
表6 隨機(jī)抽取的個(gè)性化特征
表7為使用個(gè)性化對(duì)話(huà)模型進(jìn)行對(duì)話(huà)的示例。可以看到,模型可流暢地與人進(jìn)行開(kāi)放域的多輪聊天過(guò)程,且考慮到上下文和個(gè)性化特征信息,如“我喜歡電子游戲”、“我的頭發(fā)是金色的”等信息均符合被賦予的個(gè)性化特征。因此,本文設(shè)計(jì)的個(gè)性化對(duì)話(huà)模型可以很好地融入個(gè)性化特征,實(shí)現(xiàn)個(gè)性化多輪對(duì)話(huà)過(guò)程。
表7 個(gè)性化對(duì)話(huà)模型對(duì)話(huà)示例
本文主要探索了開(kāi)放域聊天機(jī)器人的回復(fù)生成技術(shù)。模型通過(guò)將當(dāng)前時(shí)刻輸入、歷史對(duì)話(huà)以及個(gè)性化特征進(jìn)行編碼,指導(dǎo)解碼階段的回復(fù)生成過(guò)程,實(shí)現(xiàn)前后連貫的多輪對(duì)話(huà),并且保持一致的個(gè)性化特征,同時(shí)生成內(nèi)容多樣性較高。實(shí)驗(yàn)結(jié)果表明,本文設(shè)計(jì)的模型在困惑度和F1分?jǐn)?shù)評(píng)價(jià)指標(biāo)中取得了對(duì)比實(shí)驗(yàn)的最好結(jié)果,并且可以與人類(lèi)進(jìn)行持續(xù)對(duì)話(huà)過(guò)程,前后邏輯保持一致,很少出現(xiàn)通用性回復(fù),并且符合個(gè)性化特征。本本實(shí)驗(yàn)過(guò)程中直接將所有歷史對(duì)話(huà)內(nèi)容進(jìn)行編碼來(lái)實(shí)現(xiàn)多輪對(duì)話(huà),可能導(dǎo)致模型不能全面而有效地捕捉上下文信息,因此在未來(lái)的研究過(guò)程中,需要考慮如何更加高效地從長(zhǎng)跨度的歷史對(duì)話(huà)中捕捉有效上下文信息,增強(qiáng)多輪對(duì)話(huà)能力。直接利用既定的句子形式的個(gè)性化特征作為一部分輸入進(jìn)行編碼是構(gòu)建個(gè)性化對(duì)話(huà)模型的一種解決方法,但在實(shí)際應(yīng)用過(guò)程中卻較難實(shí)現(xiàn),因此如何得到更加通用的個(gè)性化特征以及如何利用少量的個(gè)性化數(shù)據(jù)對(duì)深度模型進(jìn)行有效地訓(xùn)練是今后研究的主要方向。
[1] BENGIO Y, DUCHARME R, VINCENT P, et al. A neural probabilistic language model[J]. Journal of Machine Learning Research, 2003, 3(2): 1137-1155.
[2] MIKOLOV T, KARAFIáT M, BURGET L, et al. Recurrent neural network based language model[EB/OL]. (2020-02-23). http://xueshu.baidu.com/ usercenter/paper/show?paperid=f2fef7f500521c4031ef9794c11c9318&site=xueshu_se.
[3] VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need[EL/OL]. [2020-02-23]. https:// www.researchgate.net/publication/317558625_Attention_Is_All_You_Need.
[4] CHEN H, LIU X, YIN D, et al. A survey on dialogue systems: Recent advances and new frontiers[J]. ACM SIGKDD Explorations Newsletter, 2017, 19(2): 25-35.
[5] SORDONI A, GALLEY M, AULI M, et al. A neural network approach to context-sensitive generation of conversational responses[EB/OL]. [2020-02-23].https://www.microsoft.com/en-us/research/publication/a-neural-network-approach-to-context-sensitive-generation-of-conversational-responses/.
[6] VINYALS O, LE Q. A neural conversational model[EB/OL]. [2020-02-23]. http://www.doc88.com/ p-9991503943118.html.
[7] LI J W, GALLEY M, BROCKETT C, et al. A diversity-promoting objective function for neural conversation models[EB/OL]. [2020-02-23].https:// www.microsoft.com/en-us/research/publication/a-diversity-promoting-objective-function-for-neural-conversation-models/.
[8] SERBAN I V, SORDONI A, BENGIO Y, et al. Building end-to-end dialogue systems using generative hierarchical neural network models[C]//Thirtieth AAAI Conference on Artificial Intelligence. New York: CAM Press, 2016: 3776-3883.
[9] SHANG L F, LU Z D, LI H. Neural responding machine for short-text conversation[EB/OL]. [2020-02-23].http://xueshu.baidu.com/usercenter/paper/ show?paperid=6a378dcda923a20f3fb021e4bbb53690&site=xueshu_se.
[10] TANG G, MüLLER M, RIOS A, et al. Why self-attention? a targeted evaluation of neural machine translation architectures[EB/OL]. [2020-02-23]. http:// xueshu.baidu.com/usercenter/paper/show?paperid=1s6v0ts0je6y0gg0u77g0t50ys723028&site=xueshu_se.
[11] RADFORD A, NARASIMHAN K, SALIMANS T, et al. Improving language understanding by generative pre-training[EB/OL]. [2020-02-23]. https://s3-us-west-2. amazonaws.com/openai-assets/research-covers/languageunsupervised/language understanding paper.pdf, 2018.
[12] DEVLIN J, CHANG M W, LEE K, et al. Bert: pre-training of deep bidirectional transformers for language understanding[EB/OL]. [2020-02-23].http://xueshu.baidu.com/usercenter/paper/show?paperid=163v0jq00n460jd0bh1m02b0yd094771&site=xueshu_se&hitarticle=1.
[13] LUO L C, HUANG W H, ZENG Q, et al. Learning personalized end-to-end goal-oriented dialog[EL/OL]. [2020-02-23]. http://xueshu.baidu.com/usercenter/paper/ show?paperid=186j06y09d7j00x05w670tp09v148579&site=xueshu_se.
[14] LI J, GALLEY M, BROCKETT C, et al. A persona-based neural conversation model[EB/OL]. [2020-02-23]. http://xueshu.baidu.com/usercenter/paper/ show?paperid=a94092c9f0f5fcd5f0f694b6a4ee9e99&site=xueshu_se&hitarticle=1.
[15] LIU B, XU Z, SUN C, et al. Content-oriented user modeling for personalized response ranking in chatbots[J]. IEEE/ACM Transactions on Audio, Speech and Language Processing (TASLP), 2018, 26(1): 122-133.
[16] LUO L C, HUANG W H, ZENG Q, et al. Learning personalized end-to-end goal-oriented dialog[EB/OL]. [2020-02-23].http://xueshu.baidu.com/usercenter/paper/ show?paperid=186j06y09d7j00x05w670tp09v148579&site=xueshu_se&hitarticle=1.
[17] WU Y H, SCHUSTER M, CHEN Z F, et al. Google’s neural machine translation system: bridging the gap between human and machine translation[EB/OL]. [2020-02-23].http://xueshu.baidu.com/usercenter/paper/ show?paperid=f6aeebc74cba16edb4c8706df0ba9536&site=xueshu_se&hitarticle=1.
[18] LI Y R, SU H, SHEN X Y, et al. Dailydialog: a manually labelled multi-turn dialogue dataset[EB/OL]. [2020-02-23].http://xueshu.baidu.com/usercenter/paper/ show?paperid=52816efb19417f114ed83f7c54b9b6e7&site=xueshu_se&hitarticle=1.
[19] ZHANG S Z, DINAN E, URBANEK J, et al. Personalizing dialogue agents: I have a dog, do you have pets too?[EB/OL].[2020-02-23].http://xueshu.baidu. com/usercenter/paper/show?paperid=f47c6a2d79c51aac36742a4ab6856254&site=xueshu_se&hitarticle=1.
Personalized dialogue content generation based on deep learning
WANG Hao, GUO Bin, HAO Shao-yang, ZHANG Qiu-yun, YU Zhi-wen
(School of Computer Science, Northwestern Polytechnical University, Xi’an Shaanxi 710072, China)
Dialogue system is a very important research direction in the field of Human–Machine Interaction and the research of open domain chatbot has attracted much attention. There are three main problems in the existing chatbots. The first is that they cannot effectively capture the context, which leads to the lack of logical cohesion in the dialogue content. Second, most of the existing chatbots do not have specific personalized characteristics, resulting in the monotony in the chat process, and the dialogue content may be contradictory. Third, they tend to generate meaningless replies such as “I don’t know” or “I’m sorry”, which greatly reduces users’ interest in chat. The Encoder-Decoder framework based on Transformer was used to build the general dialogue model and personalized dialogue model. By encoding the historical dialogue content and personalized feature information, the model could effectively capture the context and the personalized information and realize multi-round dialogue process, generating personalized dialogue content. The experimental results showed that the dialogue model based on Transformer obtained better results on the evaluation metrics of perplexity and F1-score compared to the baseline models. Combined with manual evaluation, it is concluded that our dialogue model is capable of carrying out multi-round dialogues, with high content diversity and in line with the given personalized characteristics.
deep learning; dialogue system; chatbot; personalization; context aware
TP 391
10.11996/JG.j.2095-302X.2020020210
A
2095-302X(2020)02-0210-07
2019-11-19;
2019-12-27
國(guó)家重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(2017YFB1001800);國(guó)家自然科學(xué)基金項(xiàng)目(61772428,61725205)
王 豪(1996-),男,河南新鄉(xiāng)人,碩士研究生。主要研究方向?yàn)槿藱C(jī)對(duì)話(huà)系統(tǒng)。E-mail:wanghao456@mail.nwpu.edu.cn
郭 斌(1980-),男,山西太原人,教授,博士,博士生導(dǎo)師。主要研究方向?yàn)槠者m計(jì)算、移動(dòng)群智感知。E-mail:guob@nwpu.edu.cn