KGQA/KBQA綜述


參考1參考2

  1. 關於KGQA和KBQA的關系



該長文沿用短文的敘述角度,將復雜知識圖譜問答方法總結為基於語義解析 (Semantic Parsing-based; SP-based) 的方法和基於信息檢索 (Information Retrival-based; IR-based) 的方法。從挑戰和解決策略的角度討論現有的復雜知識圖譜問答工作。和原短文相比,該長文將內容從擴展到20頁。該長文歸納了更多的論文,主要板塊加入了更深入討論和更多實例細節以及圖示表達,另增加了背景知識介紹和技術總結板塊。

1、論文引入

相比僅包含單個關系事實的簡單問題,復雜問題通常有以下幾個特征。我們以文中的例子 “誰是傑夫·普羅斯特秀提名的電視制片人的第一任妻子?” 為例:

  • 需要在知識圖譜中做多跳推理 (multi-hop reasoning):該問題主干需要兩跳的推理,即“傑夫·普羅斯特秀提名的人”和“他的妻子”。
  • 需要考慮題目中給的限制詞 (constrained relations):該問題中出現的限制詞“電視制片人”需要在回答問題的時候被考慮到。
  • 需要考慮數字運算的情況 (numerical operations):該問題詢問涉及序數“第一任”,因此需要對召回的實體進行排序操作。

直接將傳統知識圖譜問答模型運用到復雜問題上,不管是基於語義解析的方法還是信息檢索的方法都將遇到新的挑戰:

  • 傳統方法無法支撐問題的復雜邏輯:基於語義解析的方法需要定義極具表達能力的解析式語法,基於信息檢索的方法需要發展出追蹤推理的能力。
  • 復雜問題包含了更多的實體,導致在知識圖譜中搜索空間變大:這使得基於語義解析和信息檢索方法的開銷過大,難以用於解決實際問題。
  • 兩種方法都將問題理解作為首要步驟:當問題的語義和句法變得復雜時,模型應具有更強的自然語言理解和泛化能力。
  • 通常 Complex KBQA 數據集缺少對正確路徑的標注:在沒有正確解析式和推理路徑的監督下,訓練這兩種方法將變得非常困難。

2、背景知識介紹

傳統的知識圖譜問答系統通常有圖1的結構。第一步是實體連接 (entity linking),即識別問題 q 中的主題並且映射到知識圖譜 \(\mathcal{G}\) 中的主題實體 eq。接下來的步驟是預測答案 \(\tilde{A}_{q}\)。預測答案傳統的方法主要分為兩類。

  • 基於語義解析 (SP-based) 的方法會將q 解析並生成一個中間解析式 lq,執行該解析式以獲得問題的答案。
  • 基於信息檢索 (IR-based) 的方法將會從整個知識圖譜中抽取一個子圖 \(\mathcal{G}_{q}\),隨后基於子圖進行問題的推理,並選取子圖中排序較高的實體作為答案。
    預測答案將被作為系統輸出返回給用戶。

通常評估知識圖譜系統的方法是考核預測的准確度,如:\(\text { Precision, F1, Hits@1 }\) 等。但更多方面的考核,如:魯棒性,系統用戶交互的能力等,也是需要被注意到的。我們針對這三個方面的評估方法進行了較為詳細的總結。

3、兩類主流方法

為了方便讀者對兩類方法的理解,我們公式化地總結了兩類主流方法的各個模塊。

基於語義解析(SP-based)的方法

(1)問題理解 (question understanding) 模塊將自然語言的問題編譯成分布式表達,結構化表達或者他們的結合。

\[\tilde{q}=\text { Question_Understanding }(q) \]

通常情況下,神經網絡(如:LSTM, GRU等)可被直接用於問題解析。與此同時,語義解析工具可被用來獲取問題的結構特征。

(2)邏輯解析 (logical parsing) 模塊將編譯好的問題轉化成解析式。

\[\bar{l}_{q}=\text { Logical_Parsing }(\tilde{q}) \]

這一步的實現可以是運用Seq2seq的模型生成一系列字符 (token) 組合成解析式。也可以是基於規則生成一系列候選解析式再將他們排序。

(3)知識圖譜實例化 (KB grounding) 模塊將生成的解析式實例化得到可執行語句。

\[l_{q}=\mathrm{KB}_{-} \text {Grounding }\left(\bar{l}_{q}, \mathcal{G}\right) \]

通常情況下,lq 包含了主題實體 eq。在有些工作中,(2)和(3)可以同步進行。

(4)知識執行 (KB execution) 模塊執行得到的可執行語句,召回答案。

\[\tilde{\mathcal{A}}_{q}=\text { KB_Excution }\left(l_{q}\right) \]

基於語義解析 (SP-based) 的方法的訓練目標是產生符合問題語義的解析式並且能夠執行得到正確答案。

基於信息檢索(IR-based)的方法

(1)子圖構建 (retrieval source construction) 模塊將從主題實體 [公式] 出發,在知識圖譜全圖中抽取與問題相關的子圖。

\[\mathcal{G}_{q}=\text { Retrieval_Source_Construction }(q, \mathcal{G}) \]

抽取的子圖大小會隨着抽取信息距離主題實體的距離增大呈指數增加。已有方法如 GraftNet 等通過 Personalized pagerank 保留重要實體控制子圖大小。

(2)問題表達 (question representation) 模塊將自然語言的問題 q 編譯成分布式表達 q],再結合其他方法生成指令。

\[\mathbf{i}^{(k)}=\text { Question_Representation }\left(\mathbf{i}^{(k-1)}, q, \mathcal{G}_{q}\right) \]

這里,\(\left\{\mathbf{i}^{(k)}, k=1, \ldots, n\right\}\)是第k 步推理得到的向量,該向量蘊含了問題在該步的指令。

(3)基於圖結構的推理 (graph based reasoning) 模塊將在指令的指導下在抽取的子圖中做傳送和增強。推理過程將會產生推理狀態向量 \(\left\{\mathbf{s}^{(k)}, k=1, \ldots, n\right\}\)。該向量在具體方法中定義有所不同,如:預測實體的分布,關系的表達等。

\[s^{(k)}=\text { Graph_Based_Reasoning }\left(s^{(k-1)}, \mathbf{i}^{(k)}, \mathcal{G}_{q}\right) \]

一些最新的工作重復(2)和(3)來實現顯性的多步推理。

(4)答案排序 (answer ranking) 模塊將第n 步推理狀態向量用於最終的答案預測,排序高的實體被作為預測實體。

\[\tilde{\mathcal{A}}_{q}=\text { Answer_Ranking }\left(s^{(n)}, \mathcal{G}_{q}\right) \]

已有的工作通常會通過超參數閾值來選取預測答案實體。

基於信息檢索的方法訓練目標是讓正確的答案實體排序高於其他實體。

4、挑戰和解決策略

當處理復雜問題時,基於語義解析 (SP-based) 和信息檢索 (IR-based) 的方法不同模塊會遇到相應的挑戰。相關的工作也針對這些挑戰提出了解決策略。對於這個問題,我們努力嘗試在論文中給了一個盡可能清晰的梳理,大家可以參考論文中的表格(表1)去理解。

5、技術總結

除了討論挑戰和解決策略之外,我們列舉了 Complex KBQA 方法用到的具體特征和技術。

  • 基於語義解析 (SP-based) 的方法:
    • 問題理解模塊利用神經網絡,結構化技術產生輸入特征 (Input Features)
    • 邏輯解析模塊主要包含序列到序列生成,基於排序解析兩類解析方法 (Parsing Methods)
    • 不同解析方法采用不同訓練目標 (Training Algorithms)
    • 總結了上述步驟中的重要技術 (Featured Techniques)
  • 詳細信息可參考下表。

  • 基於信息檢索 (IR-based) 的方法:
    • 問題理解模塊采用多種技術將問題語義轉化成一系列指令 (Instruction Generation)
    • 指令向量根據不同推理方法進行狀態更新 (Reasoning Methods)
    • 訓練采用不同的目標函數 (Training Algorithms)
    • 總結了上述步驟中的重要技術 (Featured Techniques)
  • 詳細信息可參考下表。

6、研究展望

不斷進化的知識圖譜問答系統

目前的知識圖譜問答系統通常是在線下進行訓練然后部署到線上。然而,大部分已有的知識圖譜問答系統都會忽略線上部署后對新實例的學習。與此同時,外部知識在不斷進化,一個知識圖譜問答系統應該能夠在線上部署之后不斷進化的。目前有少量的工作關注到這一塊。比如引入連續學習 (continuous learning) 的框架。當知識圖譜問答系統遇到沒見過的問題時,他們可以先將其和系統中已有的訓練問題進行比對,召回最相似問題的解析式,讓用戶從中選出有效的解析式加入到訓練數據中。再如讓用戶直接參與到系統中,當用戶提出沒見過的問題或者包含歧義的問題時,系統給出一些候選的消歧后的問題供用戶選擇。

魯棒的知識圖譜問答系統

已有的知識圖譜問答研究大部分是在一種理想情況下展開的,然而真實場景下,數據可能會嚴重缺失或者不足。現有少量工作聚焦數據不足時,用元學習 (meta learning) 訓練知識圖譜問答系統,以及用無監督的雙語詞典歸納 (bilingual lexicon induction) 技術對低資源 (low-resource) 數據進行增強。與此同時,有一部分工作對分布外異常 (out-of-distribution) 的問題開展了研究。他們提出了 CFQ 和 GrailQA 數據集促進這方面的未來研究。

更加一般定義的知識圖譜

有一些任務,如:視覺問答 (VQA), 常識知識推理 (Commonsense Knowledge Reasoning) 可以被看作是在一種特殊的知識圖譜上做推理。比如有部分工作將閱讀理解的任務中的文本看做虛擬的知識圖譜,然后在上面做推理。除了顯性地在任務中構建知識圖譜,有部分工作將其他任務看作隱性的知識圖譜。近年來較為突出的是,部分研究者將預訓練語言模型作為特殊的知識庫,認為其具有儲存知識和推理的能力。

對話型知識圖譜問答

對話型的知識圖譜問答是新興的任務。在單輪的問答之后,用戶會圍繞該主題提出一系列問題。目前對於對話型知識圖譜問答的研究主要是針對如何判斷后續問題的主題展開的。用戶提出的問題間將具有某一些聯系,而不是獨立存在。對歷史問題進行記憶和理解有助於回答當前問題。同時,為了減少對話問答帶來的搜索空間增大的困難,也有部分工作在這個方向進行了簡單的探索。

寫在最后。與Complex KBQA很多相關的方向和任務都非常值得探索。希望我們的綜述能為大家提供一個全面的梳理,拋磚引玉,方便大家做出更多的貢獻。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM