論文閱讀_基于知識圖譜的約束性問答

介紹

英文題目:Constraint-Based Question Answering with Knowledge Graph
中文題目:基于知識圖譜的約束性問答
論文地址:https://readpaper.com/paper/2572289264
領域:自然語言處理、知識圖譜、問答系統(tǒng)
發(fā)表時間:2016
出處:acl
被引量:142
代碼和數據:https://github.com/JunweiBao/MulCQA/tree/ComplexQuestions
閱讀時間:2022.03.20

其它介紹

泛讀

這是一篇偏應用方法的論文。

  • 針對問題:利用當前的知識庫(KB),回答用自然語言提出的問題。
  • 目標:一方面開發(fā)用于評價約束性問答的數據集;另一方面開發(fā)針對約束性問答的解決方法。
  • 結果:產出評測數據集;提出的多約束查詢圖算法提升了對復雜問題的解答能力。
  • 核心方法:
    • 復雜問題的分類和處理機制,抽象出六種約束類型,以及對應各類問題的解決方法。
    • 方法
      • 找到問題相關實體節(jié)點
      • 找到滿足約束的所有路徑
      • 將與問題語義相似度最高的作為答案
  • 難點:整個過程中約束到底如何產生作用。

精讀

摘要

WebQuestions和SimpleQuestions是近年來常用的基于知識的問答系統(tǒng)(KBQA)數據集,它們之中大多是簡單問題,即在現(xiàn)成的數據三元組中就能找到答案,它們缺乏對復雜問題的評價能力。為此,文中提出建構新的數據集,用于評價需要多種知識相關性才能得到答案的復雜問題。另外,文中提出KBQA方法來解決多約束問題。相對于現(xiàn)有方法,文中方法在現(xiàn)有的兩個基準數據集上獲得了與之前模型差不多的結果,并在復雜問題上取得了顯著的改進。

1. 引言

基于知識庫的問答任務(KBQA)是:利用當前的知識庫(KB),回答用自然語言提出的問題。Freebase是個類似wikipedia的網站,在本文中被用做待查的知識庫。WebQuestions和SimpleQuestion兩個數據集常被用于評測KBQA問題。

WebQuestion是85%的問題,以及SimpleQuestion中的所有問題都是“簡單”問題。所謂簡單問題是使用單個關系鏈接就可以回答的問題(主謂賓三元組),如圖一上圖中所示的問題。

圖一中的下圖則是復雜問題,它用兩個條件得出一個結果。其中的“多約束”是指包含用不同表達式表示的多個語義約束,以限制答案集?;卮鸫祟悊栴}需要結合多種關系。

論文的兩個主要貢獻是:

  • 系統(tǒng)地提出了解決多約束問題的方法:將多約束問題(MulCQ)轉換成多約束查詢圖MulCG。
  • 建立新的QA數據集ComplexQuestions,用于評測多約束問題。且文中模型在復雜數據集上有顯著提升。

2. 多約束問題

2.1 約束的分類

多約束問題被定義為需要多個連接或者需要特殊轉換才能找到答案的問題,將其分為六大類:

(1) 多實體約束:一個問題涉及多個實體,比如表-1中問題1的"Forest Whitaker", "Mark Rydell"共同限制了答案。
(2) 類型約束:問題中指定了答案的類型,比如表-1中問題2限制了回答的類型為City。
(3) 顯性時間約束:顯示地約束了時間,如表-1中問題3限制了2012年,這種問題很常見。
(4) 隱性時間約束:隱性地約束了時間,如表-1中問題4限制時間在南北戰(zhàn)爭開始時,處理時需要先將期變換為顯性時間,這類約束常出現(xiàn)在從句中。
(5) 順序約束:問題答案通常需要通過排序才能得到,一般在問題中用最高級短語描述排序規(guī)則,如表-1中問題5,回答時需要先對中國河的長度進行排序。
(6) 聚合約束:這類問題通常需要通過統(tǒng)計求出,比如表-1中問題6問個數。

2.2 選擇問題構建復雜問題數據集

使用以下步驟篩選基于FreeBase能找到答案,且為多約束的問題,然后進行人工標注。
首先,取2015.1.1-2015-4.1搜索引擎三個月的問題,它們滿足以下兩個條件:不包含代詞;問題長度在7-20個單詞之間,這是因為問題太短一般不包含約束條件,問題太常又難以回答。進一步采樣其中的10%,使用實體鏈接方法來檢測實體,去掉不包含實體的問題;去掉除了實體和停用詞不包含其它詞的問題;最后將問題分類如下:

(1) 問題至少包含兩個不重疊的實體
(2) 問題包含F(xiàn)reeBase中的類型短語
(3) 問題包含NER可識別出的時間日期
(4) 問題中包含關鍵字,如“when”,"before","after","during"
(5) 問題中包含WordNet中的最高級短語或序號
(6) 問題中包含對個數的提問。

問題可以包含一個或多個約束,滿足條件的有上萬條問題,根據其分布篩選問題,然后根據FreeBase中的知識進行手動標注,最終獲取了878個問答對。

2.3 問題說明

最終發(fā)布的復雜問題數據集,包括2100個多約束問題答案對,包括下面三種來源:
(1) 596個從WebQuestions訓練集中選擇,326從其測試集中選擇。
(2) 300個在2015年由 Yin et al... 發(fā)布
(3) 878個基于上一節(jié)的方法標注
將其分成訓練集1300和測試集800兩部分。

3. 定義

3.1 知識庫

用K表示知識庫,以三元組triple(t)的方式組織數據,比如主語subject(s)是BarackObama,謂語predicate(p)是 birthday,賓語object(o)是1961。主語和賓語一般是實體或者數值,謂語常用于描述關系。

3.2 多約束查詢圖

首先定義四種元素:
節(jié)點
文中定義了兩種類型的節(jié)點,已知的恒定節(jié)點(方)和未知的可變節(jié)點(圓)。

文中定義了兩種類型的邊,關系邊和功能邊,上例中的動詞birthday是關系邊,功能邊用于表示大于小于等函數關系,如表-2所示:

基本查詢圖
基本查詢圖定義為(vs,p,vo),vs表示問題中給出的恒定的節(jié)點,vo是可變節(jié)點,它隱藏在答案之中,p是連接兩者的路徑,它可能由一條邊或多條邊構成。
約束
約束定義為三元組(vs,r,vo),vs是恒定節(jié)點,vo是可變節(jié)點,r是功能邊,實例化后,vo與實體vs需滿足關系r。
MulCG
Multi-constraint query graph多約束查詢圖 ,MulCG基于基本查詢圖B,它包含一個問題和一系列的約束C={C1,...CN},最終輸出符合條件的圖gN,它滿足所有約束。
從基本查詢圖的恒定節(jié)點開始,根據約束,遍歷所有的可變節(jié)點,整個過程中所有被連接的實體關系都應滿足相關性關系以及常識。

圖-2展示了MulCG的一個示例,文中的恒定實體是United States,可變實體是x和y,兩條邊為officals, holder,三個約束分別為C1=(President,Equal,y1),C2=(2000,<,y2),C3=(1,MaxAtN,y2)。注意,不同的約束順序可能造成不同結果。

4. 方法

問題定義如下:將多約束定義為Q,知識定義為K,將問題解析成一系列約束H(Q),對于每一個g ∈ H(Q),得到節(jié)點的特征F(Q,g),通過排序,得分最高分結果作為答案。

4.1 生成基本查詢圖

搜索問題中提到的實體,將每個實體s作為恒定節(jié)點,基于知識圖,搜索s相關的路徑(限定跳數),建立基本查詢圖一跳(s,p0,x)或兩跳<s,p1-yout-p2,x>,yout和x都是可變節(jié)點,x為最終答案。

使用基于卷積網絡CNN的模型計算問題與基本查詢經過路徑的相似度,此部分將在4.4詳述。

4.2 約束檢測和綁定

一個基本查詢圖只對應一種關系,對于多約束,需要將所有約束逐條加入,每一條約束具體又包含約束搜索和約束綁定。

(1) 實體約束
對實體的約束常作為恒節(jié)點,比如圖-3(a)是一個多實體問題,F(xiàn)orest Whitaker和 Mark Rydell指向不同實體,最初生成的基本查詢圖是g0=B,然后,搜索到了約束1:C1=(Mark Rydell, Equal, y1),然后將邊director綁定到g0,從而,將變量節(jié)點Ci與gi-1通過路徑相連。
約束可以讓任何節(jié)點與基本查詢圖連接;對實體的約束綁定,常常用于解決消歧問題。

(2) 類型約束
對答案的類型約束常常由名詞給出,比如圖3-a中的“film”就是類型約束。搜索時,對于知識的類型,構建了形如C2=(film,Equal,y2)的類型約束;綁定時,類型限制加在可變節(jié)點上,該節(jié)點具有邊類型的答案。

(3) 顯性時間約束
時間約束常常描述為介詞短語或從句中的數字,如"after 2000",圖-2中,from連接了y0和y2,函數約束C2=(2000,<,y2),它篩選了y0相關實體中大于2000的子集。先搜索時間短語,比如2000,小于號通過表2中字典建立約束Ci=(t,r,y1);搜索到時間約束后,如果知識圖中有路徑p連接的實節(jié)滿足條件,則將約束綁定關系。

(4) 隱性時間約束
圖-3(b) 中描述的"南北戰(zhàn)爭之后"觸發(fā)了隱性時間約束,它使用了時間狀語從句。由于命名實體識別不能識別隱性時間約束,因此使用預定義詞的方式搜索,然后將其轉換成顯式時間約束;綁定方法與顯性時間約束一樣。

(5) 順序約束
順序約束通常通過形容詞或副詞的數字和最高級形式表示,比如圖-2中的first,通過對答案中節(jié)點的排序的MaxAtN函數,得到最終結果。搜索使用WordNet中提取的序列數表和最高級表來檢測關鍵詞,再用數學函數來計算約束Ci=(n,op,yi);如果與邊相連的可變節(jié)點滿足條件,使用詞嵌入與最高級詞最相關的詞綁定路徑,如此例中使用from綁定。

(6) 聚合約束
當問題以"how many"開頭,或者包含"number of", "count of"等關鍵字時,實現(xiàn)時需要統(tǒng)計答案節(jié)點中的實體個數。

4.3 生成搜索空間

算法1描述了生成搜索空間H(Q)的過程:

E是將Q作為輸入檢測到的與之鏈接的實體集合。
用s遍歷E中實體,將s和知識庫K作為輸入,得到所有基本查詢圖gb,然后將它們中的每一條都加入H(Q)和T,T表示臨時數據集。
用gb遍歷臨時數據集T,基于gb,E,Q,K,找到相關的所有約束C,Permutation(C)返回所有可能的約束的索引號,對于每個索引號,試圖找到臨時數據集中能與之綁定的查詢圖gc,將其插入候選集H(Q)。

4.4 特征和排序

使用孿生卷積網絡來計算兩個字符序列的相似度,輸入是兩個字符序列,將它們映射成k維的字符向量,與詞匯匹配方法相比,連續(xù)空間表示方法顯示出更好的結果。

對于兩個序列Sl和Sr,分別加入了S和E來標記開始和結束,首先把輸入詞轉換成one-hot vector,然后查表找到其詞嵌入,再通過卷積加入3個詞的上下文信息得到上下文向量特征,用最大池化來提取最顯著的局部特征,生成定長的全局特征,最后用一個多層感知機將池化層轉換到語義層,兩邊分別得到Hl和Hr,然后用cosine(Hl,Hr)來計算二者的距離,得到兩個序列的相似度。

基于上術CNN模型,為基本序列圖(Basic Query Graph)設計了表-3中的四個特征,為約束也提供四類特征,分別是指示特征I,計數特征N,約束搜索特征V和約束綁定特征P。

image.png

5. 實驗

5.1 設置

使用三個數據集測試,ComplexQuestions(CompQ)是上文中提到的新生成包含2100問答的數據集;WebQuestion(WebQ)包含3778訓練集,2032測試集,由人基于Freebase知識庫手工標注;SimpleQuestion(SimpleQ)中每個問題都是人工編輯的知識庫三元組。

5.2 結果和分析

實驗結果如圖-4所示,將STAGG作為Baseline:

對于簡單問題與STAGG效果類似,對于復雜的約束問題明顯優(yōu)于STAGG,尤其是使用了Constraint約束訓練的模型效果有明顯提升,另外,加入了更多的WebQ和SimpleQ訓練數據后,模型效果也有所提升。

6. 相關工作和討論

2015年在基于知識的問答(KBQA)中,使用字典特征或CNN的方法對于簡單關系問題就得到了較好的效果。
WebQuestions和SimpleQuestion是兩個用于評測KBAQ任務的數據集,其中大多數是簡單問題。之前的研究也大多針對簡單問題展開,近幾年也提出一些針對多實體和約束的方法,但并沒有具體評估它們的KBQA系統(tǒng),也沒有系統(tǒng)地給出多約束問題的解決方案。

7. 總結

發(fā)布了ComplexQuestions數據集用于評價多約束問題,并提出了KBQA方法解決多約束的圖問題,且得到了良好的實驗效果。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容