論文淺嘗 - AAAI2020 | 多輪對話系統中的歷史自適應知識融合機制

論文筆記整理:潘銳,天津大學碩士。


鏈接:https://www.aaai.org/ojs/index.php/AAAI/article/view/6425

來    源:AAAI 2020



論文簡介

保持對話的一致性和避免內容重複是構建以知識爲基礎的多輪對話系統的兩個關鍵因素。儘管一些工作傾向於將對話歷史與外部知識(如個人背景信息)結合起來以提高對話質量,但它們往往忽略了將相同的知識多次融入對話會導致內容重複。這一現象的主要原因是缺乏對對話層面知識使用的有效控制。爲此,本文設計了一種歷史自適應知識融合機制,構建了一種有效的多輪對話模型,通過反覆更新知識並逐步將其融入歷史,來解決內容重複問題。



方法及模型

1、模型概述

模型由三部分組成:編碼器層、歷史適應層和輸出層。

首先,編碼器層使用Bi-GRU分別捕獲外部知識、歷史信息和候選答案的上下文信息。之後利用self-attention機制識別重要信息,忽略無關信息。在歷史適應層中,反覆更新外部知識,並逐步將其融入歷史。這不僅有助於歷史捕獲知識,而且可以動態更新基於歷史的知識。然後利用層次遞歸網絡提取序列信息和上下文信息。最後,在輸出層中計算曆史記錄和候選回覆的相似度。

2、編碼器層

編碼器層負責提取上下文信息。具體地說,知識信息P、歷史信息C和候選回答信息A分別由編碼模塊處理。編碼模塊由一個Bi-GRU組件和一個self-attention組件組成。在不失去一般性的情況下,,表示句子的嵌入矩陣,其中l是句子的個數,k 代表句子的長度,d 代表隱藏層的大小。

首先編碼到, 然後用self-attention機制計算句子級表示。句子級表示更關注句子中的關鍵信息。對於每個句子

3、歷史適應層

外部知識的控制和更新與對話的上下文緊密相關。本文設計了一種新的門控機制來控制外部知識信息向當前和下一輪對話的流動。一方面,該模塊將知識信息集成到當前的對話中,獲得知識感知的表示,這樣有助於保持對話的一致性。另一方面,知識感知表示也有助於控制下一輪用於解決重複問題的知識更新。

歷史知識更新

假設知識信息的初始狀態爲,然後根據歷史信息循環更新知識。動態更新路徑如下所示:


在步驟 t 更新外部知識如下:


這裏使用U有兩個目的:1)控制流向下一輪的知識信息。2)從話語層面選擇語義相關的知識信息進行語境理解。

對於第一個目的,在和U之間進行非線性運算,得到新的表示形式。

然後,設計遺忘門來選擇新舊知識表示,

設計這種架構是考慮到對話的一致性和重複性。通過運用門控機制鼓勵選擇與當前對話語義相關的知識,避免選擇重複但不必要的知識。

對於第二個目的,將U標準化,對知識表示的每一個部分進行評分,得到知識感知的歷史表示,這種表示將外部知識結合起來,以保持一致性。然後更新外部知識並逐步將其融入歷史。


分層歷史信息編碼器

使用來自編碼器層的不同GRU對上下文歷史信息進行編碼,並使用self-attention機制將重要信息提取到一個向量上。編碼前,歷史(其中)被送入GRU和self-attention結構。將最終有意義的歷史表示表示爲O。

4、輸出層

輸出層負責計算曆史和候選回覆的相似性,從候選回覆中選擇上下文一致的回覆。



實驗

數據集:Persona-Chat和CMUDoG dataset

Baseline:KV profile Mmeory (Zhang et al. 2018)和Transformer (Mazaré et al. 2018)

實驗結果:

自動評價:用r@k和F1作爲自動度量指標。

上表展示了在兩個數據集上的自動評價結果,可以看到與基線相比,本文的模型有了顯著的改進。r@k和F1的改進意味着所提出的模型能夠更好捕獲對話中的深層語義信息,並從提供的回覆中選擇更相關的回覆。此外,模型對CMUDoG數據集的改進比Persona-Chat數據集的改進要大。原因可能是CMUDoG數據集包含更多的知識和更豐富的語義。歷史自適應知識更新機制可以更好地訓練,幫助對話有效地控制CMUDOG數據集上知識的使用。

人工評價:從重複性、一致性和相關性三個維度評價。

首先,本文的模型在人類評價方面優於基線,這表明了所提出的歷史子女適應機制的有效性。第二,本文的模型有效減少了重複。

 


 

OpenKG

開放知識圖譜(簡稱 OpenKG)旨在促進中文知識圖譜數據的開放與互聯,促進知識圖譜和語義技術的普及和廣泛應用。

點擊閱讀原文,進入 OpenKG 網站。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章