研究動(dòng)機(jī)
基于知識(shí)的對(duì)話生成任務(wù)(Knowledge-Grounded Dialogue Generation,KGD)是當(dāng)前對(duì)話系統(tǒng)的研究熱點(diǎn),這個(gè)任務(wù)旨在基于對(duì)話歷史和外部知識(shí)來生成的富含信息量的回復(fù)語(yǔ)句。目前的工作通常使用結(jié)構(gòu)化知識(shí)圖(KGs)或非結(jié)構(gòu)化文本作為知識(shí)來源。這些外部的知識(shí)來源可以緩解傳統(tǒng)生成模型產(chǎn)生的無意義和乏味的回復(fù),比如“我不知道”和“是的”。
最近的一些工作使得有些學(xué)者認(rèn)識(shí)到實(shí)體(Entity)之間的相關(guān)性在多輪對(duì)話中起著重要的作用,因此他們提出在知識(shí)圖譜中挖掘?qū)嶓w之間有價(jià)值的結(jié)構(gòu)信息,以預(yù)測(cè)下一個(gè)回復(fù)中可能出現(xiàn)的實(shí)體,并利用預(yù)測(cè)的實(shí)體進(jìn)一步指導(dǎo)回復(fù)語(yǔ)句的生成。然而,這種方法也存在兩個(gè)缺陷:
? 一方面,entity-guided KGD方法將對(duì)話中的實(shí)體作為唯一的知識(shí)去指導(dǎo)模型對(duì)上下文的理解和回復(fù)的生成,而忽略了KG中實(shí)體之間的關(guān)系(relation)的重要性。然而,人類對(duì)話背后的規(guī)律性可以概括為一系列話題的轉(zhuǎn)換,其中每個(gè)話題可能對(duì)應(yīng)于一個(gè)關(guān)系邊,而不是KG中的單個(gè)實(shí)體。
?另一方面,現(xiàn)有的KGD方法僅利用最后一個(gè)對(duì)話回合中的知識(shí)去預(yù)測(cè)后續(xù)回復(fù)中的知識(shí),這種方式并不足以學(xué)習(xí)人類如何在多輪對(duì)話中如何轉(zhuǎn)換話題。
下圖是一個(gè)知識(shí)對(duì)話的示例。Dialogue Context(a)展示了一個(gè)對(duì)話上下文,兩個(gè)用戶從萊昂納多的職業(yè)聊到了他的代表作泰坦尼克號(hào),然后討論了泰坦尼克號(hào)這部電影的類型和主演陣容,并將最后的焦點(diǎn)實(shí)體落在凱特溫斯萊特上。KG(b)展示了在這個(gè)對(duì)話過程中所有涉及到的實(shí)體以及它們?cè)贙G中的三元組。由這兩個(gè)信息源可以得到兩種貫穿這段對(duì)話的語(yǔ)言邏輯:
a. 回合級(jí)實(shí)體過渡路徑:萊昂納多——>泰坦尼克號(hào)——>凱特溫斯萊特
b.對(duì)話級(jí)關(guān)系轉(zhuǎn)換路徑:職業(yè)——>代表作——>電影類型/主演
由此可見,如果不建模多輪知識(shí),生成的回復(fù)可能是冗余且不連貫的,如Badcase1;如果只關(guān)注回合級(jí)的實(shí)體過渡路徑,而忽略整個(gè)對(duì)話中話題的潛在轉(zhuǎn)換路徑時(shí),模型生成的回復(fù)可能非常突兀,無法和對(duì)話上下文的語(yǔ)言邏輯順暢地銜接起來,如Badcase2。
PART 02
貢 獻(xiàn)
因此,本文提出了一種新的KGD模型:RT-KGD(Relation Transition aware Knowledge-Grounded Dialogue Generation),該模型通過將對(duì)話級(jí)的關(guān)系轉(zhuǎn)換規(guī)律與回合級(jí)的實(shí)體語(yǔ)義信息相結(jié)合,來模擬多輪對(duì)話過程中的知識(shí)轉(zhuǎn)換。具體來說,作者利用多輪對(duì)話上下文中包含的所有關(guān)系和實(shí)體,構(gòu)建了MHKT-Path(Multi-turn Heterogeneous Knowledge Transition Path),它可以看作是外部KG的一個(gè)子圖,同時(shí)又結(jié)合了多輪對(duì)話中關(guān)系和實(shí)體出現(xiàn)的順序信息。基于所構(gòu)建的MHKT-Path,作者設(shè)計(jì)了一個(gè)知識(shí)預(yù)測(cè)模塊,從外部KG中檢索三元組作為后續(xù)回復(fù)中可能出現(xiàn)的知識(shí),最后融合對(duì)話上下文和預(yù)測(cè)的三元組以生成回復(fù)語(yǔ)句。本文的主要貢獻(xiàn)有以下三點(diǎn):
? 本文是第一個(gè)將跨多輪對(duì)話中的關(guān)系轉(zhuǎn)換引入KGD任務(wù)的工作,通過整合關(guān)系轉(zhuǎn)換路徑和實(shí)體語(yǔ)義信息來學(xué)習(xí)人類對(duì)話背后的規(guī)律性。
? RT-KGD為每個(gè)對(duì)話都構(gòu)建一個(gè)多輪異構(gòu)知識(shí)轉(zhuǎn)換路徑(MHKT-Path),它將外部KG的結(jié)構(gòu)信息和知識(shí)的順序信息結(jié)合起來。基于MHKT-Path,模型可以從KG中檢索適當(dāng)?shù)闹R(shí),以指導(dǎo)下一個(gè)回復(fù)的生成。
? 在多領(lǐng)域知識(shí)驅(qū)動(dòng)的對(duì)話數(shù)據(jù)集KdConv上的實(shí)驗(yàn)結(jié)果表明,RT-KGD在自動(dòng)評(píng)估和人工評(píng)估方面都優(yōu)于基線模型。
PART 03
模 型
1.任務(wù)定義
給定一個(gè)對(duì)話上下文C={u1,...,un-1}、其中每一條語(yǔ)句ui都對(duì)應(yīng)一個(gè)三元組集合Ki和一個(gè)非結(jié)構(gòu)化文本集合Si。模型的目標(biāo)是利用對(duì)話上下文、結(jié)構(gòu)化三元組和非結(jié)構(gòu)化文本生成一句合適的回復(fù)語(yǔ)句un。
2.Multi-turn Heterogeneous Knowledge Transition Path(MHKT-Path)
作者為每個(gè)對(duì)話上下文都構(gòu)建了一個(gè)多輪異構(gòu)知識(shí)轉(zhuǎn)移路徑圖,來將對(duì)話級(jí)的關(guān)系轉(zhuǎn)換規(guī)律與回合級(jí)的實(shí)體語(yǔ)義信息結(jié)合起來。
MHKT-Path有兩類節(jié)點(diǎn):
? 三元組節(jié)點(diǎn) ? 關(guān)系節(jié)點(diǎn)(關(guān)系節(jié)點(diǎn)是從對(duì)應(yīng)三元組中抽取得到的) MHKT-Path 有四種邊: ? 連接三元組節(jié)點(diǎn)到三元組節(jié)點(diǎn)的邊(邊的方向按照三元組在對(duì)話上下文中出現(xiàn)的順序決定) ?連接關(guān)系節(jié)點(diǎn)到關(guān)系節(jié)點(diǎn)的邊(邊的方向按照關(guān)系在對(duì)話上下文中出現(xiàn)的順序決定,即與它們對(duì)應(yīng)的三元組之間的邊的方向相同) ?連接三元組節(jié)點(diǎn)到關(guān)系節(jié)點(diǎn)的邊 ?連接關(guān)系節(jié)點(diǎn)到三元組節(jié)點(diǎn)的邊
這樣,兩種粒度的知識(shí)信息就得到了充分交互和融合,共同促進(jìn)模型對(duì)上下文知識(shí)和對(duì)話邏輯順序的理解。
3. Knowledge Encoder
Knowledge Encoder用知識(shí)圖譜表示學(xué)習(xí)模型和異構(gòu)圖神經(jīng)網(wǎng)絡(luò)將MHKT-Path中的節(jié)點(diǎn)轉(zhuǎn)化為向量表示。
1. 初始化MHKT-Path中的所有節(jié)點(diǎn)。作者利用TransR得到KG中所有元素(實(shí)體和關(guān)系)的表示,這些表示融合了KG中的全局信息。因此,MHKT-Path中的節(jié)點(diǎn)表示就可以用這些元素的表示計(jì)算得到:對(duì)于關(guān)系節(jié)點(diǎn),其向量表示就是該關(guān)系在KG中的表示;對(duì)于三元組節(jié)點(diǎn),其向量表示由該三元組包含的頭尾實(shí)體和關(guān)系的向量拼接而成。
2. HGT(Heterogeneous Graph Transformer)可利用MHKT-Path中的局部結(jié)構(gòu)信息來更新節(jié)點(diǎn)的表示。
最后,結(jié)合上兩步的結(jié)果得到節(jié)點(diǎn)的最終表示。
4. Knowledge Predictor
Knowledge Predictor用來預(yù)測(cè)下一句回復(fù)中可能出現(xiàn)的知識(shí),此模塊分為三部分:
1. 由于知識(shí)編碼器只聚合局部鄰域信息,作者進(jìn)一步采用Bi-GRU來分別豐富關(guān)系節(jié)點(diǎn)和三元組節(jié)點(diǎn)的時(shí)序特征。具體來說,將此時(shí)間步中出現(xiàn)的所有關(guān)系節(jié)點(diǎn)和三元組節(jié)點(diǎn)的平均向量分別作為Bi-GRU的輸入。
2.基于前面的n-1輪(即n-1個(gè)時(shí)間步)的關(guān)系表示,通過Bi-GRU預(yù)測(cè)第n輪(t=n)的關(guān)系節(jié)點(diǎn)的表示:
與關(guān)系節(jié)點(diǎn)不同,作者先用Bi-GRU得到前n-1輪每輪三元組節(jié)點(diǎn)的表示:
然后利用多頭注意力機(jī)制將對(duì)話級(jí)的第n輪關(guān)系節(jié)點(diǎn)的表示和回合級(jí)的前n-1輪三元組節(jié)點(diǎn)的表示結(jié)合起來,共同預(yù)測(cè)第n輪三元組節(jié)點(diǎn)的表示:
3. 因?yàn)橐惠喺Z(yǔ)句中可能包含多個(gè)知識(shí),所以作者用多標(biāo)簽分類將得到的第n輪的三元組向量映射到一個(gè)標(biāo)簽向量上,其長(zhǎng)度為KG中所有的三元組數(shù)量,并用二元交叉熵(BCE)損失函數(shù)來監(jiān)督分類的效果。
5. Knowledge-Enhanced Encoder-Decoder
在Knowledge-Enhanced Encoder-Decoder中,BART用來給上下文語(yǔ)句和其中對(duì)應(yīng)的非結(jié)構(gòu)化描述文本S分別進(jìn)行編碼,Si代表第i輪語(yǔ)句中對(duì)應(yīng)的非結(jié)構(gòu)化描述文本。
在解碼階段,作者將上述步驟中得到的前n-1輪對(duì)話上下文C的表示、前n-1輪非結(jié)構(gòu)化描述文本S的表示、和預(yù)測(cè)的第n輪三元組的表示拼接后輸入BART的解碼器中,生成第n輪富含信息量的回復(fù)語(yǔ)句:
模型最終的loss為知識(shí)分類標(biāo)簽的BCE損失函數(shù)和解碼語(yǔ)句的交叉熵?fù)p失函數(shù)的加權(quán)和:
PART 04
實(shí) 驗(yàn)
為了驗(yàn)證提出的模型,在數(shù)據(jù)集的選擇時(shí)應(yīng)該滿足兩個(gè)要求:(1)每輪語(yǔ)句都用相關(guān)的知識(shí)三元組進(jìn)行標(biāo)注;(2)在每個(gè)對(duì)話段中包含足夠多輪次的語(yǔ)句。因此,KdConv是最佳的實(shí)驗(yàn)數(shù)據(jù)集。從實(shí)驗(yàn)結(jié)果來看,RT-KGD生成了更高質(zhì)量的回復(fù),利用了更合適的知識(shí),并更接近人類的表達(dá)方式。
?自動(dòng)評(píng)估指標(biāo)
? 人工評(píng)估指標(biāo)
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4717瀏覽量
99998 -
模型
+關(guān)注
關(guān)注
1文章
3032瀏覽量
48348 -
數(shù)據(jù)集
+關(guān)注
關(guān)注
4文章
1197瀏覽量
24535
原文標(biāo)題:RT-KGD:多輪對(duì)話過程中的知識(shí)轉(zhuǎn)換模型
文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語(yǔ)言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論