會話式知識庫問答的焦點實體轉換建模

NLP論文解讀發表於2022-02-03

©原創作者 | 朱林

論文解讀:

Modeling Transitions of Focal Entities for Conversational Knowledge Base Question Answering

論文作者:

Yunshi Lan, Jing Jiang

論文地址:

https://aclanthology.org/2021.acl-long.255.pdf

收錄會議:

ACL2021

01 介紹

會話式知識庫問答(Conversational Knowledge Base Question Answering, CKBQA)是探討如何解答知識庫一系列相關問題的一個研究方向。典型場景如下圖所示:

會話式知識庫問答的焦點實體轉換建模

圖1 會話式知識庫問答樣例

目前,主流單輪知識庫問答(single-turn KBQA)方法中,針對CKBQA問題往往存在“記憶障礙”缺陷,後續問題的回答中容易丟失歷史中記錄的實體資訊,導致無法連貫準確地解答一系列問題。

本篇論文中,作者試圖對這些隱含的實體進行建模,這些實體被作者稱之為焦點實體(Focal Entities),如圖1中的《偉大的蓋茨比》、F. Scott Fitzgerald等等。

此外,作者提出了一種新的基於圖的模型來對焦點實體的轉換進行建模,應用圖卷積網路(Graph Convolution Networks, GCN)匯出每個問題中焦點實體的概率分佈,然後將其與標準知識庫問答模組結合以得到最終的答案。

作者在兩個資料集上進行實驗,證明了其提出方法的有效性。

02 方法

整體架構

會話式知識庫問答的焦點實體轉換建模

圖2 整體架構示意圖

圖2展示了整體架構。作者首先使用實體轉換圖(Entity Transition Graph)來對會話中涉及的所有實體及其互動進行建模,這些實體是候選的焦點實體。

圖的邊反映了會話如何從一個實體轉移到另一個實體,這種轉換可以幫助估計一個實體是當前焦點實體的可能性。

在會話的每一輪之後,該實體轉換圖由圖構造器(Graph Constructor)增量構建。為了獲得該圖中每個實體成為焦點的可能性,焦點實體預測器(Focal Entity Predictor)根據先前的焦點實體分佈和會話生成新的焦點實體分佈的歷史,由會話歷史編碼器(Conversation History Encoder)使用標準序列模型(Standard Sequence Model)進行編碼。最後,將生成的焦點實體分佈合併到傳統的KBQA模組中,以得到最終的預測結果。

實體轉移圖和圖構造器

會話式知識庫問答的焦點實體轉換建模

 

會話式知識庫問答的焦點實體轉換建模

 

如上所述,作者構建實體轉移圖的方式基於對焦點實體的以下直覺觀察:

● 焦點實體通常是對先前問題的回答。故圖中包含了所有先前的答案實體。

● 焦點實體也可能與先前問題中實體有關。故圖中包含了查詢的那些實體。

● 焦點實體往往保持不變,在會話中具有“粘性”屬性,故為每個節點新增了一個自環邊。

● 焦點實體經常回到與第一個問題相關的某個實體。故總是新增從最新答案實體到與第一個問題相關的實體的邊。

● 如果一個實體在會話歷史中經常被討論,它可能更有可能成為焦點實體。故在圖中為這些實體提供了更多的連線性。

會話式知識庫問答的焦點實體轉換建模

圖3 實體轉移圖的具體例子

會話歷史編碼器

會話歷史編碼器的目標是對先前問題的文字上下文及其預測答案進行編碼,特別是實體以外的資訊。會話歷史編碼器的輸出是一個單獨的向量,它將作為附加輸入傳至焦點實體預測器中。

與以前的方法類似,作者利用分層編碼器(Hierarchical Encoder)對會話歷史進行編碼,其中低層獨立編碼單個問題和預測答案,高層編碼連線問題和答案序列以匯出單個向量。

具體來說,作者在底層採用BiLSTM網路編碼每個問題和每個預測的答案。高層編碼器利用Recurrent Network對序列進行編碼生成一系列hidden vector,最後一個hidden vector用於輸出。

值得注意的是,雖然作者的會話歷史編碼器方法承襲了之前的工作,但之前的工作往往直接使用序列編碼結果作為最終表示,引入了噪音。相比之下,作者的方法僅使用它來幫助預測焦點實體的分佈。

焦點實體預測器

會話式知識庫問答的焦點實體轉換建模

 

訓練目標

模型的訓練目標來自兩部分:

(1) 儘量減少錯誤回答問題造成的損失。使用了標準的交叉熵損失函式。

(2)監督焦點實體預測器的訓練。本文按如下方式生成訓練資料:如果有一個實體可以生成至少一個查詢並得出正確答案,作者將其視為該問題的正確焦點實體,分配值1,否則為0。最後,作者對分佈進行歸一化後嘗試最小化KL散度。

03 實驗

主要結果

會話式知識庫問答的焦點實體轉換建模

表1 Acc/F1對比結果

作者在大規模CKBQA資料集ConvQuestions和CSQA資料集子集ConvCSQA上進行了方法評估。採用平均準確率和F1分數來衡量效能。

作者的方法在ConvQuestions和ConvCSQA上的效能分別比現有技術高9.5個百分點和14.3個百分點。證明了作者的方法在兩個資料集上的有效性。

通過實驗結果可以發現,類似ConvHistory等僅通過標準的兩級分層序列模型簡單地對會話歷史進行建模並不總能提高效能。這表明以加深加厚模型的蠻力方式去包含所有歷史會話資訊可能無法有效捕獲最重要的會話上下文資訊。

進一步分析

會話式知識庫問答的焦點實體轉換建模

表2 消融實驗結果

會話式知識庫問答的焦點實體轉換建模

表3 不同方法隨著對話輪次增加的準確率下降情況

會話式知識庫問答的焦點實體轉換建模

圖5 兩個對話案例中預測的焦點實體分佈(每個彩條表示焦點實體的概率)

作者通過消融實驗驗證了其各個模組的有效性(表2),比較了不同方法在多輪問答中準確率的衰減程度證明了在多輪問答中的高效性(表3),並最終用兩個案例展示了其焦點實體預測的準確性(圖5)。

此外,作者細緻分析了焦點實體預測錯誤的情況,以為後續工作做鋪墊。作者發現錯誤主要是由於以下原因:

(1) 錯誤關係預測(43%):本文模型中的關係預測是由一個簡單的答案預測器完成的,關係易預測錯誤。後續可以改用效能更佳的預測器。

(2) 查詢生成失敗(29%):很多情況下,由於知識庫的不完整或查詢生成器的限制,很難從知識庫中收集到正確的查詢。

(3) 主題實體的錯誤連結(22%):問題的主題實體的識別錯誤也會導致導致最終答案的錯誤,因為如果實體連結器將問題連結到錯誤的實體,則不太可能正確地回答問題,這是KBQA面臨的普遍挑戰。

04 結論

在本文中,作者提出了一種知識庫會話中焦點實體的預測和建模的方法,以改進CKBQA。作者的方法準確率超過了目前的兩個基線方法,並在兩個基準資料集上實現最先進的效能。

05 啟發

本文留給了我們一些啟發和思考:

(1) 當需要解決上下文關聯的序列問題的時候,傳統利用靜態資訊進行編碼或者簡單將歷史資訊疊加編碼往往無法起到很好的效果,存在大量噪聲。而通過分析序列中共性特徵進行有效編碼或者概率推導能進一步提高序列問題的準確率。常用的框架為GCN、注意力模型等等。

(2) 目前的深度學習方法逐漸朝著精細化、可解釋性的方向發展,不再是曾經一個或幾個通用模型針對不同問題遷移一下、組合一下、調個引數就行的。現在的方法越來越需要解釋清楚 “為何有用?”和“能夠不用?”這兩個問題。

當然,目前絕大部分創新模型仍然以直覺的思維方式進行設計和架構,其有效性往往只能從實驗資料角度證明,而很少能從嚴密邏輯或者數學推導中驗證,如何看待這個問題留待讀者思考。

 

私信我領取目標檢測與R-CNN/資料分析的應用/電商資料分析/資料分析在醫療領域的應用/NLP學員專案展示/中文NLP的介紹與實際應用/NLP系列直播課/NLP前沿模型訓練營等乾貨學習資源。

 

 

相關文章