技术动态 | 北京大学计算机所邹磊教授研究组开源面向 RDF 知识图谱的自然语言问答系统 gAnswer...
項目網站: http://ganswer.gstore-pku.com/
代碼地址: https://github.com/pkumod/gAnswer
OpenKG發布地址: http://openkg.cn/tool/ganswer
研究組主頁: http://mod.icst.pku.edu.cn
?
一、KBQA 任務簡介
基于知識庫的自然語言問答 (Question Answering over Knowledge Base, KBQA) 主要有兩類方法框架,分別基于信息檢索和語義解析。前者直接從知識庫中獲取候選答案后通過各種特征進行排序返回最優結果,答案通常不具備可解釋性。后者則首先嘗試理解給定問題的語義,將其轉化為SPARQL查詢等邏輯結構,再在知識庫中進行查詢從而得到問題答案。
圖 1 展示了語義解析的基本流程,其中主要有兩個難點,一是語義消歧(資源映射),即如何將自然語言問題中具備歧義的實體短語和關系短語對應到知識庫中確定的實體和謂詞上。例如短語 “PaulAnderson” 在知識庫中可能有多個候選實體如 < Paul S.Anderson> 和 < Paul W. S. Anderson>,我們需要消除錯誤的歧義,找到正確的映射。二是查詢構建(語義組合),即如何將映射后的實體和謂詞拼接成一個完整的查詢。
?
二、解決方案
針對第一個難點(語義消歧),現有的一些工作嘗試在查詢生成階段就完全消除歧義,往往耗費時間計算較多的額外信息,將所有可能進行排序后找到理論上最好的查詢,最終查詢執行時卻在知識庫中找不到結果。另一些工作把每一個候選查詢都執行一遍,將匹配到的答案集合大小作為排序特征,這樣做更加費時,因為很多查詢之間具備共享子圖,有大量的重復計算。
與這些工作不同,我們提出了數據驅動的消歧方法。其基本思想是在查詢生成階段保留實體、謂詞乃至結構的歧義信息,而在查詢執行階段根據匹配情況消除錯誤的候選。為此我們定義了一種新的邏輯結構語義查詢圖(SQG),使用問句中被檢測為實體/類型/變量的短語作為圖中的節點,把在 SPARQL 查詢的同一條三元組中的主體和客體所對應的節點連接起來。每個 SQG 中的節點或邊都對應一個候選列表,記錄了該節點或邊可能映射到的知識庫中的實體/謂詞。
實體/謂詞的候選映射列表可以通過現有的實體鏈接/關系抽取算法獲得,我們分別提出了基于詞典和句法依存樹的實體/關系識別、基于CNN神經網絡的關系抽取等方法。
如圖 2 所示,節點 V3(PaulAnderson) 對應的三個后選中,雖然 <Paul Anderson(actor)> 和 <Paul S. Anderson> 的得分較高,但在查詢匹配階段知識庫中找不到與 SQG 匹配的包含這兩個點的子圖,所以我們將他們剔除(消歧),選擇映射 <PaulW. S. Anderson>。
同時,我們針對 SQG 設計了高效的子圖匹配算法來查找最終答案,避免相似查詢之間的重復計算,大幅度地提高了問答系統的整體效率。
針對第二個難點(查詢構建),大部分相關工作只能解析簡單問題(即解析后的查詢只包含一條語句,又稱為“一跳問題”),少數工作可以解析復雜問題(多跳問題),但其只能將問題轉換為預先定義好的唯一查詢圖結構,當問題對應其他結構時則不能解析。
我們提出了三種查詢構建的方法,其中:
1) 關系優先的構建方法 (SIGMOD2014[1]) 先通過謂詞復述詞典識別問題中的關系(謂詞),再通過啟發式規則確定關系兩邊的節點(實體/疑問詞)。一些相關工作中使用神經網絡來進行關系抽取的方法往往將問題整體作為輸入,只能輸出一個識別出的關系從而不能回答多跳問題。而該方法通過句法依存樹進行模板匹配能識別出多條關系從而可以回答多跳問題。其在 QALD-6 和 WebQuestions 測試集上 F1 得分分別為 0.55 和 0.312。
?
2) 節點優先的構建方法 (TKDE2018[2]) 先識別問題中的節點(實體/類別/變量)再通過句法依存樹構造查詢圖結構,而后為圖中各邊分配候選謂詞。該方法不但可以識別多關系,還可以處理隱式關系,并且不依賴于預先定義的圖結構模板。其在 QALD-6 和 WebQuesitons 測試集上 F1 得分分別為 0.78 和 0.496。
3) 基于狀態轉換的構建方法 (EMNLP2018[3]) 使用序列標注模型識別句中節點后,在訓練好的子圖打分模型的監督下通過預定義的四種狀態轉換操作逐步生成語義查詢圖,最后使用多通道卷積神經網絡 (MCCNN) 識別相應關系。該方法可以生成更復雜的查詢圖結構(例如帶環的查詢),在 QALD-6、WebQuestions 和 ComplexQuestions 測試集上 F1 得分分別為 0.80, 0.536 和 0.543。
三、gAnswer 開源項目
項目網站: http://ganswer.gstore-pku.com/
代碼地址: https://github.com/pkumod/gAnswer
gAnswer 項目基于節點優先的構建方法[2]和 DBpedia 知識庫實現了開放領域的事實類問答。給定自然語言問題,gAnswer 返回用戶 top-k 的 SPARQL 查詢及對應答案集合。其查詢階段無縫對接 gStoreRDF 圖數據庫查詢引擎 (http://gstore-pku.com/)。目前 GAnswer 項目已在 Github 上開源。
GAnswer 參加了歐盟組織的 QALD-9 (https://project-hobbit.eu/challenges/qald-9-challenge/) 的評測比賽,并取得了第一名的成績。
GAnswer 已被多個商業公司和學校研究團隊應用,用于提供包括電影知識問答,古詩詞問答和醫療知識問答等多個方面的面向知識圖譜的自然語言問答服務。
?
[1]??? Lei Zou, Ruizhe Huang, Haixun Wang, Jeffrey Xu Yu,Wenqiang He, Dongyan Zhao: “Natural language question answering over RDF: agraph data driven approach”. SIGMOD Conference 2014: 313-324
?
[2]??? Sen Hu, Lei Zou, Jeffrey Xu Yu, Haixun Wang, DongyanZhao: “Answering Natural Language Questions by Subgraph Matching over KnowledgeGraphs”. IEEE Trans. Knowl. Data Eng (TKDE) 2018: 824-837
?
[3]??? Sen Hu, Lei Zou, Xinbo Zhang: “A State-transitionFramework to Answer Complex Questions over Knowledge Base”. Empirical Methodsin Natural Language Processing (EMNLP) 2018: 2098–2108.
OpenKG.CN
中文開放知識圖譜(簡稱OpenKG.CN)旨在促進中文知識圖譜數據的開放與互聯,促進知識圖譜和語義技術的普及和廣泛應用。
點擊閱讀原文,進入 OpenKG 博客。
總結
以上是生活随笔為你收集整理的技术动态 | 北京大学计算机所邹磊教授研究组开源面向 RDF 知识图谱的自然语言问答系统 gAnswer...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 论文浅尝 | 混合注意力原型网络的含噪音
- 下一篇: 论文浅尝 | 利用问题生成提升知识图谱问