CIKM 2020 | 知识库问答复杂问题的分层查询图生成方法
?PaperWeekly 原創 ·?作者|舒意恒
學校|南京大學碩士生
研究方向|知識圖譜
導讀
本文討論知識庫問答(KBQA)中查詢圖生成的強化學習方法。給定一個自然語言問題,知識庫問答嘗試自動從存儲有實體間關系的知識庫中獲取答案。對于一個復雜問題,查詢圖生成是一種常見的基于語義解析的方法。其中,查詢圖指對問題的一種抽象的圖表示。
作者認為現有方法通常依賴有限的規則,使得他們無力應對更加復雜的問題。該文提出一個類似于”導演-演員-影評者“的框架,以克服這一問題。其中,導演決定查詢圖需要的三元組類型,演員通過選擇結點和邊生成相應的三元組,影評者計算生成的三元組和給定問題之間的相似度。
通常,知識庫問答的監督信息僅主要包括自然語言問題及其在知識庫中的答案,而多步驟的查詢圖生成方法難以在中間過程的每步中都包含監督信息,它通常是弱監督的。因此,作者將該算法框架置于分層的強化學習之上。
論文標題:
Hierarchical Query Graph Generation for Complex Question Answering over Knowledge Graph
論文鏈接:
http://www.bigdatalab.ac.cn/~jinxiaolong/publications/CIKM2020QiuZ.pdf
方法
2.1 查詢圖
查詢圖是用于圖表示的一類特定的 λ-演算,可以被翻譯為可執行查詢語言,例如? SPARQL。在作者設計的查詢圖中,三元組被分為五種類型:
基礎(basic):三元組的邊是 KG 中的謂詞(關系),三元組頭尾實體是 KG 中的結點(鏈接或未鏈接到知識庫)
合并(union):邊同樣是 KG 中的謂詞,但其中兩個結點可以被超過一條邊相連,三元組之間通過 邏輯或 相連
過濾(filter):數值或時間比較,包括 <, ≤, >, ≥, =, ≠ 等關系
序數(ordinal):頭實體需要被排序,邊表示排序是升序或降序
聚合(aggregation):邊表示聚合函數,包括 count、limit 等
通過這幾類三元組,生成的查詢圖具有基本的處理排序、計數等問題的能力。后文所提到的“選項”,即模型選擇這些三元組類別中的一種進行生成。
2.2 “導演-演員-影評者”框架
強化學習的常見形式是馬爾科夫決策過程(MDP),它是智能體(agent)與環境(environment)的交互過程。其中,智能體是學習者和決策者,環境包含了智能體之外的所有元素。
由于知識庫是由三元組組成的這一特性,作者將查詢圖生成描述為關于選項(option)的 MDP,每一個選項表示生成對應類型的三元組。不同于傳統的 MDP,通過選項,智能體能夠一次選擇多步動作。
該框架包含三個模塊,作者將它們比喻為“導演”、“演員”和“影評者”:
導演根據當前狀態 ,選擇一個選項 ,確定何種類型的三元組是需要的。
演員根據當前狀態 和選項 ,選擇一個動作 . 選項 會在后續幾個時間步中被保留,直到被實現。
影評者計算新生成的三元組和問題之間的相似度,以負責評估 是否被實現
而通過選擇這些選項(即選項在后續時間步中有停留),執行到終止狀態,所形成的決策過程,被稱為半馬爾科夫決策過程(Semi-MDP, SMDP)。這一決策過程的主要組件包括:
2.2.1 狀態
時間步 的狀態 是一個元組,其中 是給定問題, 在時間步 的決策歷史。對于導演來說,決策歷史是當前的查詢圖;對于演員來說,它包含當前選項選擇的原始動作(primitive actions)。
2.2.2 選項
一個選項包含三個組件:
初始狀態集 ,包含一個選項可以被初始化的狀態
選項內策略 ,為一個選項選擇原始動作
終止條件 指定選項是否已完成
如果一個選項開始執行,原始動作將根據 被選擇,直到選項根據 終止。
2.2.3 原始動作
對于每個選項,有三類原始動作:1)在現有查詢圖中,選擇已有結點;2)根據選項,添加謂詞或邊;3)連接新生成的結點和已有結點
對于不同的三元組選項,作者對原始動作施加的約束也不同。
2.2.4 獎勵函數
因為只有最終的答案作為弱監督,預測答案的 F1 值被作為外部獎勵,且僅有三元組選項而不是原始動作被獎勵。
2.3 常量結點鏈接
一個常量結點表示一個已鏈接的 KG 實體或類型,它的形式可以是給定一個問題中的時間或數值信息。對于一個給定的自然語言問題,該文的方法首先識別這類常量結點。
實體鏈接:借助于 S-MART [2](一個著名的知識庫實體鏈接工具)生成 (mention, entity)對。
類型鏈接:通過 Stanford CoreNLP toolkit [3] 對問題中的每個單詞進行詞性標注,抽取所有的名詞與專有名詞。包含 KG 類型同義詞的單詞被選出構建(mention, type)對。
時間和數值鏈接:使用 CoreNLP 的命名實體識別工具,獲得候選時間結點或數值結點。
2.4 問題與圖編碼
對于問題編碼,作者使用一個雙向 GRU 網絡將自然語言問題轉換為向量。
對于圖編碼,作者考慮到查詢圖是動態更新的,使用圖神經網絡對查詢圖進行編碼的開銷可能過高,因為每次都需計算鄰接矩陣。
作者所使用的圖編碼器包含兩個模塊:
1 個 LSTM 網絡分別編碼查詢圖中的所有三元組;一個查詢圖可以視為由多個三元組構成
transformer 模型捕獲三元組之間的交互,以及在沒有鄰接矩陣的情況下,生成整個圖的表示
為了獲得圖表示,所有的三元組被編碼。編碼不同三元組的 LSTM 是獨立的,三元組之間的關系沒有被顯式表示。為從全局獲得多個三元組的組合語義,transformer 被應用到三元組表示上。通過自注意力機制,編碼器權衡各三元組的重要性,并更新查詢圖中所有三元組的表示。
此處還值得討論的是,使用預訓練的詞嵌入或知識圖譜嵌入能否相比于使用 GRU 學習嵌入獲得更優的表現。
2.5 分層決策
導演和演員的搜索策略是通過狀態信息和決策歷史學習到的。在每個時間步 ,導演接受狀態 ,并根據計算到的概率分布選擇選項。每個選項都被分配一個稠密嵌入向量,選項空間通過堆疊所有可用選項的嵌入編碼得到。
當導演選擇選項之后,演員選擇一系列原始動作來完成選項。決策歷史包含當前的查詢圖和在選項 中選擇的原始動作。動作空間通過堆疊所有可用動作的嵌入編碼得到。
當一個三元組被生成并被添加到查詢圖之后,選項 終止,導演選擇新的選項。當決策過程完成時,答案可通過生成的查詢圖獲得。算法框架整體如圖中算法 1 所示。
實驗
作者在 WebQuestions 和兩個同名的 ComplexQuestions 數據集上進行實驗,其中部分對比算法列舉在了文末的“延伸閱讀”中。在文中實驗,該算法取得了 SOTA。
在測試問題當中,56.8% 的問題包含一個三元組選項(查詢圖中包含一個三元組),其他問題包含兩個或更多三元組,且 F1 隨選項數量的變化較為穩定,表明其具有一定的復雜問題處理能力。
小結
人工智能從感知到認知的邁進,需要更多知識圖譜推理的相關研究。本文采取強化學習的思路,改進當前的復雜問題查詢圖生成方法。
該文所提出的三個模塊,即導演、演員和影評者,實際上對應了使用強化學習生成復雜問題查詢圖的分層決策過程:1)選擇待執行的選項;2)選擇選項內的動作;3)判斷選項是否完成。
而執行一個選項(option),實質上對應了向查詢圖中添加單個三元組的信息的過程。對于一個 MDP,一步動作直接完全處理整個三元組可能是不現實的,而僅僅處理單個結點或邊,又可能無法將動作與三元組很好關聯起來。
而后者正是多數現有方法的缺陷。通過選項-動作(option-action)這個分層決策的過程,可以將對一個三元組的處理拆分為三個動作(可分別對應于 s、p、o)實現。
該強化學習算法的外部獎勵,來自于三元組選項而不是原始動作,一定程度解決了以往方法中沒有建模動作之間存在的關系的問題,即關于一個三元組的動作被關聯了起來。
個人認為,構成一個查詢圖的若干三元組,實際上一定存在顯式可表示的關聯,至少查詢圖不可能包含一些沒有相連的三元組。而該文所使用的圖表示方法,三元組之間的關系僅僅通過 transformer 進行捕獲,似乎難以解釋三元組之間的關聯。
另外,知識圖譜嵌入(KGE)已經應用于三元組分類(triple classification)任務中,是否在圖編碼部分引入 KGE 能夠增強模型判斷一個三元組是否合理的能力?
作者重點討論了關于查詢圖的圖表示并取得 SOTA,但似乎少有研究關注于問題表示的設計,如何設計與查詢圖生成方法更契合的問題表示方法,或許是一項開放問題。
在未來,作者計劃研究減緩外部鏈接工具帶來的錯誤,而知識庫問答中,如何識別問題中的 KG 關系仍然是一項挑戰。
參考文獻
[1] CIKM 2020 | Hierarchical Query Graph Generation for Complex Question Answering over Knowledge Graph
[2] ACL 2015 | S-MART: Novel Tree-based Structured Learning Algorithms Applied to Tweet Entity Linking
[3] ACL 2014 | The Stanford CoreNLP Natural Language Processing Toolkit
擴展閱讀
知識庫問答的查詢圖生成:
STAGG,ACL 2015,Semantic Parsing via Staged Query Graph Generation: Question Answering with Knowl- edge Base
QUINT,WWW 2017 | Automated Template Generation for Question Answering over Knowledge Graphs
STF,EMNLP 2018,A State-transition Framework to Answer Complex Questions over Knowledge Base
CompQA,EMNLP 2018 | Knowledge Base Question Answering via Encoding of Complex Query Graphs
NFF,TKDE 2018 | Answering natural language questions by subgraph matching over knowledge graphs
Tree2Seq,Neurocomputing 2020,Knowledge-based question answering by tree-to-sequence learning
更多閱讀
#投 稿?通 道#
?讓你的論文被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學習心得或技術干貨。我們的目的只有一個,讓知識真正流動起來。
?????來稿標準:
? 稿件確系個人原創作品,來稿需注明作者個人信息(姓名+學校/工作單位+學歷/職位+研究方向)?
? 如果文章并非首發,請在投稿時提醒并附上所有已發布鏈接?
? PaperWeekly 默認每篇文章都是首發,均會添加“原創”標志
?????投稿郵箱:
? 投稿郵箱:hr@paperweekly.site?
? 所有文章配圖,請單獨在附件中發送?
? 請留下即時聯系方式(微信或手機),以便我們在編輯發布時和作者溝通
????
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
關于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
總結
以上是生活随笔為你收集整理的CIKM 2020 | 知识库问答复杂问题的分层查询图生成方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 六十铺镇到阜南县坐什么车?
- 下一篇: 奇瑞麦卡出行是国企吗?