EMNLP 2020 | 開放域對話系統的屬性一致性識別

哈工大SCIR發表於2020-11-12
論文名稱:Profile Consistency Identification for Open-domain Dialogue Agents
論文作者:宋皓宇,王琰,張偉男,趙正宇,劉挺,劉曉江
原創作者:宋皓宇
論文連結:https://www.aclweb.org/anthology/2020.emnlp-main.539.pdf
資源地址:https://github.com/songhaoyu/KvPI
轉載須標註出處:哈工大SCIR

1. 簡介

一致性問題是當前開放域對話面臨的主要問題之一。已有的研究工作主要探索瞭如何將屬性資訊融合到對話回覆中[1,2,3,4],但是很少有人研究如何理解、識別對話系統的回覆與其預設屬性之間的一致性關係。為了研究這一問題,在這項工作中我們構建了一個大規模的人工標註資料集KvPI(Key-value Profile consistency Identification)。該資料集包含了超過11萬組的單輪對話及其鍵值對屬性資訊,並且對回覆和屬性資訊之間的一致性關係進行了人工標註。在此基礎上,我們提出了一個鍵值對結構資訊增強的BERT模型來識別回覆的屬性一致性。該模型的準確率相較於強基線模型獲得了顯著的提高。更進一步,我們在兩個下游任務上驗證了屬性一致性識別模型的效果。實驗結果表明,屬性一致性識別模型有助於提高開放域對話回覆的一致性。

2. 背景:對話生成 VS 對話理解

開放域對話生成任務旨在根據根據對話歷史生成連貫、合理、有趣的對話回覆[5]。由於傳統的對話生成往往缺乏一致的角色特徵,近幾年的工作開始在對話生成中明確引入純文字的人設描述[1]或者結構化的角色資訊[2],希望提高對話回覆的一致性。雖然現有的角色化對話生成模型已經能夠很好地融合給定的人設、角色資訊,但是這些生成模型仍然無法有效地理解對話回覆的一致性關係。下面的例子展示了這一問題。

EMNLP 2020 | 開放域對話系統的屬性一致性識別

圖1 理解對話回覆中的一致性

在圖1中,左邊部分是對話系統預設的角色資訊,該資訊是以結構化鍵值對(key-value pairs)的形式給出的;右邊部分是一個對話片段,包括一句對話輸入和若干對話回覆。在這些對話回覆中,雖然R1和R2都包含了給定的地點詞“北京”,但是這兩個回覆關於位置資訊的含義卻完全不同:R1表達了歡迎其他人來到自己所在地的含義,暗示了說話人現在正位於北京;而R2表達出了希望能夠去一次北京的含義,因此可以推斷出說話人不可能在北京。對於人類而言,理解這些一致性關係是很自然的;對於機器而言,現階段它們仍然難以理解這些關係。現有的角色化對話生成模型已經能夠結合給定的人設、角色資訊較好地生成類似R1 和R2的回覆;準確理解一致性關係的能力已經成為了進一步提升對話一致性的關鍵瓶頸。

3. KvPI資料集

針對上述問題,我們構建了一個大規模的中文人工標註資料集KvPI。該資料集的一條基本資料元組包含了鍵值對角色資訊,單輪對話輸入-回覆對,領域資訊,人工抽取的對話回覆角色資訊以及人工標註的角色一致性標籤。考慮資料收集以及公開資訊等諸多因素,我們在角色資訊中引入了性別、地點和星座三種常見的基本屬性。同時,為了在有限的三種屬性內獲得儘可能豐富的表達方式,我們從新浪微博收集了原始的待標註資料。人工標註過程由一組全職的標註人員進行,標註過程持續了約4個月時間。在最終的KvPI資料集中,我們總共收集到了118540條資料。

表1 KvPI資料集示例

EMNLP 2020 | 開放域對話系統的屬性一致性識別

表1是KvPI資料集的一些例子。這裡的一致性關係包括三類:一致(Entailed),矛盾(Contradicted)和無關(Irrelevant)。其中,一致和矛盾都是針對說話者自身的屬性而言的;如果包含屬性資訊但是非說話人的屬性,則會被標註為無關。KvPI資料集的構建使得有效訓練對話一致性識別模型成為可能。KvPI資料集以及模型、程式碼等資源已經全部開源在GitHub專案中。

4. 實驗:KvBERT模型

雖然BERT模型在自然語言理解任務上表現突出,然而,結構化的角色資訊卻幾乎不會出現在普通BERT模型的預訓練語料中。因此,如果使用BERT模型直接線性表示鍵值對結構資訊會難以避免地導致資訊損失。我們觀察到,結構化的角色資訊有著固定的層次化依賴關係。比如:女性會定義性別的含義,北京會定義地點的含義,獅子座會定義星座的含義;而性別,地點,星座又會進一步定義角色資訊的含義。圖2中右邊的結構展示了這個例子。

EMNLP 2020 | 開放域對話系統的屬性一致性識別

圖2 用於一致性識別的結構資訊增強BERT模型

為了有效建模這種結構資訊,我們使用了treeLSTM來學習這種結構表示。最終,來自BERT模型的語義表示和來自treeLSTM的結構表示會進行拼接並送入輸出層,以預測最後的一致性關係。
我們在KvPI資料集以及其中的各個子屬性上進行了大量的實驗,以充分驗證模型的一致性識別能力。和已有的工作類似,我們使用準確率(accuracy)作為主要評價指標。同時,我們也計算了每一個一致性類別下的f1-score作為模型能力的細緻化度量。基線模型方面,我們選取了從統計方法、迴圈神經網路方法到最新的預訓練模型中具有代表性的若干模型。

表2 一致性識別實驗結果。結果為 3次最好結果的均值,括號為方差1e-4。

EMNLP 2020 | 開放域對話系統的屬性一致性識別

表2展示了主要的實驗結果。我們的模型相較於強基線模型,仍然取得了很好的實驗結果。結果驗證了建模結構資訊所帶來的收益,同時也展示了一致性識別任務所能達到的最好效果。

5. 下游任務驗證

為了進一步驗證一致性識別模型的效果,我們在兩個下游任務上進行了實驗:I. 對檢索結果進行重排序,觀察重排序前後對話回覆的一致性是否提高[6];II. 對生成結果進行一致性評估,並與人工評價進行對比,觀察一致性識別模型的預測結果與人工評價的相似度[7]。由於篇幅限制,該部分實驗的相關細節請參考我們論文的5.3節。最終的實驗結果表明,一致性識別模型透過重排序能夠有效降低矛盾回覆的比例,並在可能的情況下提高一致回覆的比例,從而提高了對話一致性;同時,即使是在生成的對話回覆上,一致性識別模型仍然與人工評價的結果保持了較高的相似度。

6. 總結

在這項工作中,我們希望賦予對話系統理解對話回覆屬性一致性的能力。為此,我們構建了一個大規模的人工標註資料集KvPI,並設計了鍵值對結構資訊增強的BERT模型用於一致性識別。大量的實驗結果證明了我們方法的有效性。更進一步地,我們在兩個下游任務上驗證和展示了一致性識別模型如何輔助傳統的對話模型。我們相信KvPI資料集能夠幫助未來的工作更好地研究開放域對話中屬性一致性的問題;同時,由於KvPI資料集提供了單輪對話及對應的一致性標註資訊,從而為利用對話理解模型輔助對話生成模型的相關研究提供了資料平臺。

7. 參考文獻

[1] Saizheng Zhang, Emily Dinan, Jack Urbanek, Arthur Szlam, Douwe Kiela, and Jason Weston. 2018. Personalizing dialogue agents: I have a dog, do you have pets too? ACL.

[2] Qiao Qian, Minlie Huang, Haizhou Zhao, Jingfang Xu, and Xiaoyan Zhu. 2018. Assigning personality/profile to a chatting machine for coherent conversation generation. IJCAI.

[3] Haoyu Song, Wei-Nan Zhang, Yiming Cui, Dong Wang, and Ting Liu. 2019. Exploiting persona information for diverse generation of conversational responses. IJCAI.

[4] Haoyu Song, Yan Wang, Wei-Nan Zhang, Xiaojiang Liu, and Ting Liu. 2020. Generate, delete and rewrite: A three-stage framework for improving persona consistency of dialogue generation. ACL.

[5] Oriol Vinyals and Quoc Le. 2015. A neural conversational model.

[6] Nouha Dziri, Ehsan Kamalloo, Kory Mathewson, and Osmar Zaiane. 2019. Evaluating coherence in dialogue systems using entailment. ACL Workshop on Widening NLP.

[7] Sean Welleck, Jason Weston, Arthur Szlam, and Kyunghyun Cho. 2019. Dialogue natural language inference. ACL.

相關文章