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

?

GRS:一種面向電商領域智能客服的生成-檢索式對話模型

2020-12-07 05:57郭曉哲彭敦陸張亞彤彭學桂
關鍵詞:自然語言處理

郭曉哲 彭敦陸 張亞彤 彭學桂

摘要:目前大多數(shù)智能聊天系統(tǒng)的實現(xiàn)主要有兩種方式。檢索式得到的回復準確且有意義,但回復內(nèi)容和回復類型卻受限于所選擇的語料庫。生成式可以獲得語料庫中沒有的回復,更具靈活性,但是容易產(chǎn)生一些錯誤或是無意義的回復內(nèi)容。為了解決上述問題,本文提出一種新的模型GRS(Generative-Retrieval-Score),此模型可以同時訓練檢索模型和生成模型,并用一個打分模塊對檢索模型和生成模型的結(jié)果進行打分排序,將得分最高的回復作為整個對話系統(tǒng)的輸出,進而巧妙地將兩種方法的優(yōu)點結(jié)合起來,使最終得到的回復具體多樣,且生成的回復形式靈活多變。在真實的京東智能客服對話數(shù)據(jù)集上的實驗表明,本文提出的模型比現(xiàn)有的檢索式模型和生成式模型在多輪對話建模上有著更優(yōu)異的表現(xiàn)。

關鍵詞:對話系統(tǒng):數(shù)據(jù)中臺:自然語言處理:智能電商客服

中圖分類號:TP391 文獻標志碼:A DOI:10.3969/j.issn。1000-5641.202091010

0引言

近年來,在各行各業(yè)的數(shù)字化轉(zhuǎn)型過程中,數(shù)據(jù)中臺(Data Platform)建設已成為其中最基礎和最關鍵的一項任務。數(shù)據(jù)中臺的核心功能是提供統(tǒng)一、便利的數(shù)據(jù)集成、數(shù)據(jù)管理、數(shù)據(jù)分析和服務能力。人機對話系統(tǒng)將對話數(shù)據(jù)進行分析處理,服務化之后提供給各類人機對話場景下的業(yè)務系統(tǒng),如電商領域的智能客服,可以取代人工工作中高度重復的標準化客戶咨詢,有著廣闊的商業(yè)前景。

根據(jù)應用領域的不同,人機對話系統(tǒng)主要被分為開放領域閑聊式的對話系統(tǒng)和以完成特定任務為目標的任務型對話系統(tǒng)。開放領域的對話系統(tǒng)并沒有特定的目標,更像一個朋友去陪伴用戶進行聊天。任務型對話系統(tǒng)主要是通過對話的方式去幫助用戶完成特定的一些操作,用來解決人們特定領域的問題,比如手機上搭載的智能語音助手,可以通過對話的方式去播放音樂、撥打電話等。

對話系統(tǒng)的實現(xiàn)方式主要有基于檢索式和基于生成式兩種。Isbellet和ji等人提出基于檢索式的對話系統(tǒng),會預先準備大量的對話數(shù)據(jù)集,用戶輸入問題(查詢)后,系統(tǒng)首先從整個對話數(shù)據(jù)集中檢索出一系列可能相關的候選對話,然后再在這個小范圍的候選集內(nèi)進行重新排序,并挑選出最適合的一句作為回復。但是基于檢索式的對話系統(tǒng)并不產(chǎn)生新的回復語句,只能在現(xiàn)有對話數(shù)據(jù)集中去挑選句子回答用戶的問題,其回復類型和回復內(nèi)容都受到了所選對話數(shù)據(jù)集的限制。一旦用戶所提出的問題和語料庫并不匹配,那么檢索式的對話系統(tǒng)將無法準確地回答用戶提出的問題。

為了使對話系統(tǒng)生成更符合用戶問題的回復,更好的辦法是讓對話系統(tǒng)自動生成一句回復。隨著深度學習的蓬勃發(fā)展,基于生成的對話系統(tǒng)也在快速發(fā)展?;谏傻膶υ捪到y(tǒng)可以生成一個新的句子作為回復,從而更具靈活性。Sordoni和Serban等人提出了seq2seq模式,用兩個遞歸神經(jīng)網(wǎng)絡(RNN)來實現(xiàn)編碼器和解碼器。編碼器用一個或幾個詞嵌入向量去獲得用戶輸入問題的語義,解碼器用于對查詢詞嵌入向量的解碼。為了解決RNN中的梯度爆炸和梯度消失問題,HochreiterN提出LSTM(Long Short Term Memory)cho提出GRU(Gated Recurrent Units)可以進一步增強RNN的能力從而編碼更長語句?;谏墒降膶υ捪到y(tǒng)的優(yōu)點在于可以產(chǎn)生靈活而且有針對性的回答。但是生成式對話系統(tǒng)也面臨很多問題。首先,SerbanM提出生成式對話系統(tǒng)容易生成“萬金油”類型的回復,如“是的”/“我也這么認為”/“我不知道”等。這些回復看似可以接上用戶的問題,但這些回復對于用戶來說并沒有實質(zhì)性的幫助。其次,生成式對話系統(tǒng)采用Encoder-Decoder框架的生成式對話模型通常采用End-to-End的方式進行訓練,這種方式雖然訓練簡單,但受限于背后深度學習技術本身的特性,這會使得最終模型缺乏足夠的可控性和可解釋性。最后,由于訓練數(shù)據(jù)源噪音和自然語言本身的特性導致生成式對話模型的魯棒性欠佳。

如表1所示,針對兩種方式各自的利弊,本文希望結(jié)合兩種方式的優(yōu)點盡可能地解決兩者的缺點,因而提出了一種新的模型GRS,將檢索式模型和生成式模型進行了融合,然后通過一個打分模塊,針對用戶所提出的問題,對檢索模塊得到的回復和生成模塊得到的回復進行打分,選擇一個得分最高的句子作為最終輸出。在打分模塊中為了彌補CNN在分類過程中特征之間忽略空間關系的問題,使用基于動態(tài)路由算法的膠囊網(wǎng)絡確定哪些低層特征將被傳輸?shù)礁邔犹卣?,并使用膠囊的長度代表對應關系類別的概率。模型充分汲取了檢索式對話系統(tǒng)和生成式對話系統(tǒng)的優(yōu)點,并且通過打分模塊解決兩種模型各自存在的問題。本文的主要貢獻如下:

(1)提出了一種新的模型GRS,該模型通過打分模塊將生成式對話系統(tǒng)和檢索式對話系統(tǒng)進行了融合,充分結(jié)合了兩種方式的優(yōu)點而盡可能解決了兩者的缺點。

(2)首次將膠囊網(wǎng)絡應用于人機對話系統(tǒng)任務中,因為CNN在分類過程中特征之間忽略空間關系的問題,所以膠囊網(wǎng)絡只需要少量的訓練語料庫即可獲得CNN中用大量語料庫獲得的結(jié)果。

(3)在京東智能客服對話數(shù)據(jù)集上的實驗表明,提出的模型比現(xiàn)有的檢索式模型和生成式模型在多輪對話建模上有著更優(yōu)異的表現(xiàn)。

1相關工作

基于檢索式的對話系統(tǒng)可以保證句子的流暢性和多樣性,因此被廣泛應用于很多商業(yè)聊天機器人。比如,Microsoft的聊天機器人XiaoIce以及阿里巴巴集團的電子商務助手AliM。Isbell等人使用信息檢索技術去搜索相關的查詢問題及回復。Yan使用手工構(gòu)建特征和深度神經(jīng)網(wǎng)絡去進行查詢一回復的匹配。Wu提出了一種順序匹配網(wǎng)絡,該網(wǎng)絡在多粒度級別上與對話上下文進行匹配。Yang考慮在對話系統(tǒng)中利用外部知識來實現(xiàn)多回合響應排序。Li提出了隨機游走算法對候選回復進行排序。

基于生成式的對話系統(tǒng)正在快速發(fā)展。Gao對生成式對話系統(tǒng)領域的神經(jīng)對話模型做了全面調(diào)查。Ritter用基于短語的機器翻譯進行查詢和回復。Zoph在編碼器中使用了兩個RNN,在解碼器中使用了一個RNN,可以將一個句子翻譯成兩種不同的語言。隨著神經(jīng)網(wǎng)絡的再度興起,Sutskever等人將RNN用于對話系統(tǒng)。Serban采用可變編碼器去獲取查詢信息分布,采用隨機向量從該分布中去生成回復。而現(xiàn)在,基于生成式的對話系統(tǒng)采用的普遍結(jié)構(gòu)是由Sordoni等人提出的seq2seq,其中包括一個編碼器和一個解碼器。但原始的seq2seq模型在編碼器中將整個對話上下文編碼成一個單一的語義向量,會丟失很多重要信息。為了解決這個問題,Dzmitry等人提出了帶注意力機制的attention-seq2seq模型,讓解碼器在每一步去重點關注最相關的輸入。之后,Ashish等人提出完全基于注意力機制的Transformer模型,能夠捕捉輸入和輸出語句句內(nèi)和句間的語義信息,且訓練速度快。Transformer取得了巨大的成功,Jacob等人提出了基于Transformer的大型預訓練模型BERT,在11項重要任務上都取得了當時最好的性能表現(xiàn),向人們展示了在NLP領域中使用遷移學習的可能性和高效性。

CNN由于其出色的特征提取能力,已被廣泛應用于圖像和文本分析領域。但是,在圖像分析領域中,CNN忽略了低級特征和高級特征之間的空間關系。此外,在其池化操作中丟失了大量有價值的信息。針對這一缺點,Sabour等人提出了一種基于動態(tài)路由算法的膠囊網(wǎng)絡模型,該模型克服了CNN低層特征向高層特征傳輸時忽略空間特征的局限性,并通過在MNIST數(shù)據(jù)集上進行實驗來驗證其在圖像分析領域的有效性。與輸出單個標量的傳統(tǒng)神經(jīng)元不同,膠囊是一組神經(jīng)元,它們利用矢量來表示實體的特征。向量的每個維度均代表對象的特征,向量的長度可以表示實體所屬類別的概率。目前,膠囊網(wǎng)絡通常應用于分類模型體系結(jié)構(gòu)的最后一層,以取代最大池化層來完成分類任務。Zhao將其應用于文本分類任務,6個文本分類基準實驗的結(jié)果表明膠囊網(wǎng)絡在文本分類上取得了很好的效果。Zhang[221利用膠囊網(wǎng)絡對多實例多標簽關系進行分類,在NYT數(shù)據(jù)集上的結(jié)果表明,他們提出的模型可以有效地提高預測關系的準確性。

2問題定義和數(shù)據(jù)集

2.1問題定義適程度。

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

本文采用JDDC數(shù)據(jù)集來評估提出的模型性能,該數(shù)據(jù)集為京東構(gòu)建的一個大型的真實場景中的中文電子商務對話數(shù)據(jù)集,里面的所有對話都是發(fā)生在京東商城的真實用戶和客服之間的對話,包含超過一百萬段多輪對話、兩千萬輪句子以及一百五十萬個單詞。該數(shù)據(jù)集反映了人與人對話的多個不同特征,比如對話是目標驅(qū)動的,而且存在需要從歷史對話上下文中獲取信息的長期依賴問題;并且涵蓋了多種對話類型,比如任務導向型對話、閑聊型對話以及問答型對話。

表2[23]展示了該對話數(shù)據(jù)集的一些統(tǒng)計信息,從表中可以看到,該數(shù)據(jù)集總共包含1 024 196段對話、20 451 337條對話語句、150 716 172個單詞。此外,這些對話中最長的對話達到了83輪,而最短的對話只有2輪,對話的平均輪數(shù)為20輪,且對話語句的平均單詞數(shù)為7.4個單詞。圖1123]為數(shù)據(jù)集中對話輪數(shù)的分布直方圖,從圖中可以看到,大部分對話都在9輪到30輪之間,而且輪數(shù)為14的對話在數(shù)據(jù)集中占有最大的比例,這表明該數(shù)據(jù)集要求模型必須能夠很好地捕捉文本上下文中的長期依賴關系。

3模型描述

本節(jié)介紹針對多輪對話建模提出的模型GRS的實現(xiàn)細節(jié)。圖2展示了該模型的整體結(jié)構(gòu)。整個模型分為3個模塊,檢索模塊主要負責計算從語料庫中抽取得到的候選回復的匹配分數(shù)并按分數(shù)對其進行排序,取分數(shù)最高的候選回復作為該模塊的回復輸出;生成模塊主要負責根據(jù)輸入的歷史對話上下文和當前輪的問題,直接去生成對應該問題的回復;最后,打分模塊負責對檢索模塊和生成模塊得到的兩個回復進行打分,取分數(shù)較高的回復作為整個模型的最終輸出。下面將分別介紹各個模塊的詳細內(nèi)容。

3.2生成模塊

生成模塊采用Transformer來生成與對話上下文對應的回復,如圖3所示,Transformer是一種采用Encoder-Decoder架構(gòu),且第一個提出只用注意力機制來進行編碼和解碼的模型。編碼階段用多頭自注意力Encoder-Self-Attention來編碼輸入上下文對話句內(nèi)的語義信息,解碼階段用多頭自注意力Decoder-Self-Attention來提取輸出句內(nèi)的語義信息,而在decoder端還有一個和encoder端的輸出相連接的Encoder-Decoder-Attention模塊,此模塊用來讓兩端進行交互,提取輸入和輸出之間的相關性信息。經(jīng)過堆疊的編碼和解碼過程后,最后一個模塊的輸出經(jīng)過線性轉(zhuǎn)換和softmax后輸出概率,根據(jù)概率分布在輸出詞典中找到對應的單詞,這些單詞最后組成句子,作為與輸入上下文對應的回復。由于Transformer中向量級的運算是以矩陣的形式并行進行的,所以該模型的執(zhí)行效率非常高。

3.2.1編碼階段

首先通過詞嵌入對句子中的單詞進行向量化,再利用位置嵌入來獲得詞與詞之間的相對位置關系,通過Encoderself-Attention計算輸入的句子中每個詞與其他所有詞的相互關系,這樣就能獲得句子中更多的上下文信息,此時attention中的Q、K、y矩陣是相同的。然后再利用這種相互關系調(diào)整每個詞的權重來獲得每個詞新的語義表示,這個新的表示不但蘊含了該詞本身的含義,還蘊含了其他詞與這個詞的關系,因此和單純的詞向量相比是一個更加全面的表達。最后經(jīng)過正則化和前饋神經(jīng)網(wǎng)絡將編碼后的信息輸入解碼塊中。

3.2.2解碼階段

首先對上一時刻的輸出進行向量化,同樣加上位置嵌入,然后經(jīng)過Decoder-Self-Attention編碼輸出語句句內(nèi)單詞的相互關系,該模塊的輸出以及encoder端的輸出經(jīng)過Encoder-Decoder-Attention模塊編碼輸入與輸出之間的匹配信息,這種做法使得在生成回復的時候不僅只關注解碼器本身的輸出,同時還能讓解碼器的輸出和編碼器編碼的輸入信息有“軟對齊”的效果。

3.3打分模塊

打分模塊是一個通過capsule(膠囊)訓練的分類器,其將對檢索模塊和生成模塊的輸出分別進行打分,選取概率值最大的作為整個模型的最終輸出結(jié)果。

然后將經(jīng)典膠囊網(wǎng)絡最后一層的多分類層改為二分類層,也就是最后一層輸出兩個c印sule。通過將構(gòu)造的正負樣本輸入膠囊網(wǎng)絡中進行訓練,令閾值為0.5,使得最后一層向量長度大于等于該閾值的capsule記為正樣本,小于該閾值的capsule記為負樣本。經(jīng)過訓練得到該分類器后,將檢索和生成的response輸入該分類器進行打分,最后選取分數(shù)值最大的作為整個模型的輸出。

4實驗

本節(jié)說明模型的實驗設置、論文實驗所采用的評價指標、用來對比的其他基線模型以及論文提出的模型在JDDC多輪對話數(shù)據(jù)集上與其他基線模型的對比實驗結(jié)果。

4.1實驗設置

將對話數(shù)據(jù)集按照8:1:1的比例劃分為訓練集、驗證集和測試集,且過濾掉一些太短或太長的對話。其中,訓練集中真實的正樣本回復和隨機采樣的負樣本回復的比例為1:1.對于模型的參數(shù)設置,將單詞的向量編碼表示維度設為200,用于提取匹配特征的CNN中的卷積核和池化核的大小為(3,3),步長分別為(1,1)和(3,3),卷積核的數(shù)量為32,GRU中的隱藏層單元維度設為200,初始學習率為0.0005且隨著訓練逐漸衰減,dropout系數(shù)為0.2,數(shù)據(jù)集分為50一批,然后分批輸入模型進行訓練。模型采用常用的交叉熵損失函數(shù)進行訓練。實驗結(jié)果及分析將在4.4節(jié)和4.5節(jié)中給出。

4.2評價指標

BLEU:比較輸出回復與真實樣本的n-gram的重合程度,重合程度越高則分數(shù)越高。unigram用于衡量生成單詞的準確性,高階的n-gram用于衡量生成句子的流暢性。

Rough-L:計算輸出回復與真實樣本的最長公共子序列的長度,長度越長則分數(shù)越高。

Distinct-1/2:通過計算在輸出回復中唯一的unigram和bigram所占的比例來評估輸出回復的多樣性。

4.3對比模型

4.3.1基于檢索的模型

BM25:是一種在信息索引領域用來計算query和文檔相似度的經(jīng)典算法,是一種基于概率檢索模型的算法,它所計算的相似度分數(shù)是由query中的單詞得到的,主要包括3個部分:單詞和文檔之間的相似度、單詞和query之間的相似度以及每個單詞所占的權重。這里使用BM25來從語料庫中檢索出20個候選回復作為后續(xù)匹配的輸入,排行第一的候選回復作為此對比模型用來評估的輸出。

BERT-Retrieval:上面的檢索算法只用了一種單詞特征來計算相似度,所以為了捕捉更多的語義信息,對BERT預訓練模型進行微調(diào),再加上全連接層和softmax作為分類器來獲取語義相似度分數(shù)。然后用BERT分數(shù)來重排20個候選回復,最終輸出分數(shù)最高的回復。

4.3.2基于生成的模型

Vanilla Seq2Seq:此模型為原始的Sequence-to-Sequence模型,每個編碼器和解碼器都有512個單元的4層雙向LSTM網(wǎng)絡。

Attention-based Seq2Seq:此模型是在上面的原始Seq2Seq模型的基礎上,加入了注意力機制得到的。

Attention-based Seq2Seq with Copy:輸入的歷史對話上下文以及當前輪的問題通常都比較長,而且包含很多特有名詞,比如“京東白條”,這種單詞通常都不在輸出詞表內(nèi),所以在上面帶注意力機制的模型的基礎上,加入了復制機制,進而可以直接從輸入中復制這些超出詞表范圍的單詞。

以上用來對比的baseline模型的結(jié)果都是取自JDDC論文,表3所示為自動評估的對比實驗結(jié)果。

4.4結(jié)果分析

從表3所示的實驗結(jié)果可以得到以下兩條主要結(jié)論。

(1)從整體上看,生成模型對比檢索模型,在BLEU和Rough-L這兩個評價指標上表現(xiàn)更好,而檢索模型在Dist-1/2這兩個評價指標上更加優(yōu)秀,說明生成模型輸出的回復與真實樣本更加吻合,而且更加傾向于生成一些通用的、重復的回復,檢索模型則從語料庫中檢索回復,所以得到的回復更具有多樣性。

(2)論文提出的GRS模型在BLEU和Rough-L這兩個評價指標上能夠達到生成模型的高度,同時在Dist-1/2這兩個評價指標上又不比檢索模型差太多,說明GRS模型這種將檢索模型和生成模型相結(jié)合的方式,能夠有效地結(jié)合兩種模型的優(yōu)點,進而提高多輪對話建模的效果,既保證了回復的具體性、多樣性,又能擁有生成回復的靈活性,提升了整體回復的質(zhì)量。

4.5模型可視化

為了研究注意力機制在GRS模型中是如何幫助模型去捕捉句內(nèi)或句間單詞的語義信息的,本文對注意力模塊的權重進行了可視化。圖4是對模型中的注意力模塊權重的可視化結(jié)果,從圖中可以看到,“送貨員”這個詞和“他”這個指代送貨員的代詞重疊位置的注意力分數(shù)值較高,同樣地,“上來”和“樓下”對應的分數(shù)值也較高,即它們之間通過注意力機制是有一個“軟對齊”的效果的,這也解釋了注意力機制是如何促進多輪對話建模的效果,因為這種“軟對齊”對于共指消解任務非常有用。

5結(jié)論

本文針對面向任務的多輪對話建模問題,分析了基于檢索的方法和基于生成的方法各自的優(yōu)缺點后,提出了一個將兩種方法結(jié)合起來的多輪對話模型。該模型同時訓練檢索模型和生成模型,并用一個打分模塊對檢索模塊和生成模塊的輸出結(jié)果進行打分排序,取得分高的結(jié)果作為模型的最終輸出。模型巧妙地將兩種方法的優(yōu)點結(jié)合起來,最終得到的回復內(nèi)容具體多樣,且生成的回復形式靈活多變,彌補了兩種方法的不足。在一個大型的真實多輪對話數(shù)據(jù)集上的實驗結(jié)果表明,論文提出的模型能夠很好地提升面向任務的多輪對話建模效果。表示增強在很多不同的NLP任務上都有所使用,在接下來的工作中,需要研究如何利用檢索模型的輸出來增強生成模型的輸出效果,反之亦然。

猜你喜歡
自然語言處理
基于LSTM自動編碼機的短文本聚類方法
自然語言處理與司法案例
國外基于知識庫的問答系統(tǒng)相關研究進展及其啟示
基于依存句法的實體關系抽取
基于組合分類算法的源代碼注釋質(zhì)量評估方法
面向機器人導航的漢語路徑自然語言組塊分析方法研究
詞向量的語義學規(guī)范化
漢哈機器翻譯中的文字轉(zhuǎn)換技術研究
HowNet在自然語言處理領域的研究現(xiàn)狀與分析
宝丰县| 宁国市| 济源市| 潢川县| 上林县| 陆河县| 萝北县| 阿拉尔市| 息烽县| 武川县| 揭西县| 宜兴市| 武陟县| 石屏县| 关岭| 汤原县| 双流县| 河曲县| 辽阳县| 郸城县| 济源市| 昌宁县| 娄底市| 陆良县| 阳东县| 金坛市| 金昌市| 黔江区| 山西省| 普安县| 修水县| 家居| 九寨沟县| 克山县| 时尚| 监利县| 渭南市| 呼玛县| 三门峡市| 天峨县| 平安县|