天天看點

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

1 背景介紹

  知識圖譜問答(KBQA)利用圖譜豐富的語義關聯資訊,能夠深入了解使用者問題并給出答案,近年來吸引了學術界和工業界的廣泛關注。KBQA主要任務是将自然語言問題(NLQ)通過不同方法映射到結構化的查詢,并在知識圖譜中擷取答案。

  小蜜團隊研發的知識圖譜問答系統(KBQA)目前已廣泛應用于電信營運商、保險、稅務等領域,但是在真實的客服場景中,KBQA 在處理複雜問句上仍然面臨着挑戰。使用者在咨詢問題時,傾向于表達非常具體的資訊,以便快速的獲得答案,比較常見問句類型的有:1)複雜條件句:“小規模納稅人季度銷售額未超過30萬,但是要開具5萬元的的專票,需要繳納附加稅費嗎?”;2)并列句:“介紹下移動大流量和暢享套餐”;3)推理型問句:“你們這最便宜的5G套餐是哪個?”等,這給KBQA提出了新的挑戰:如何有效地利用深度學習模型規模化地處理複雜句問答?

  為了應對該問題,我們調研了KBQA方向最近幾年的關鍵進展,并着重關注了含有複雜句的資料集及相關的方法。本文會先介紹KBQA主流相關資料集,然後詳細介紹兩類在相關資料集上的典型方法以及每種方法的代表性模型,最後我們對Semantic Parsing + NN的方法進行一個系統性總結,并介紹小蜜團隊的Hierarchical KB-Attention Model。

2 資料集簡介

  随着KBQA技術的發展,對應的資料集從簡單的單跳問答向包含複雜問題轉變;問答形式從單輪問答資料集,向面向對話的多輪問答資料集轉變(HotpotQA[1] and CSQA[2])。表1列舉問答資料集部分屬性,同時介紹了相關的三個典型通用知識圖譜。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

表一 KBQA評測資料集清單

2.1 WebQuestions及其衍生資料集

  WebQuestions[3]是為了解決真實問題構造的資料集,問題來源于Google Suggest API,答案使用Amazon Mechanic Turk 标注生成,是目前使用最廣泛的評測資料集,但該資料集有2點不足:

  • 資料集中隻有問答對,沒有包含邏輯形式;
  • 簡單問題占比在84%,缺乏複雜的多跳和推理型問題;

  針對第一類問題,微軟基于該資料集建構了WebquestionsSP[4],為每一個答案标注了SPARQL查詢語句,并去除了部分有歧義、意圖不明或者沒有明确答案的問題。

  針對第二類問題,為了增加問題的複雜性,ComplexQuestions[5]在WebQuestions基礎上,引入包含類型限制、顯式或者隐式的時間限制、多實體限制、聚合類限制(最值和求和)等問題,并提供邏輯形式的查詢。

2.2 QALD系列(Question Answering over Linked Data)

   QALD是CLEF上的一個評測子任務,自2011年開始,每年舉辦一屆,每次提供若幹訓練集和測試集,其中複雜問題占比約38%[6]。該資料集不僅包括多個關系和多個實體,如:“Which buildings in art deco style did Shreve, Lamb and Harmon design?”;還包括含有時間、比較級、最進階和推理類的問題,如:“How old was Steve Jobs’s sister when she first met him?”[7]。

2.3 Large-Scale Complex Question Answering Dataset(LcQuAD)

  Trivedi[8]等人在2017年公布了一個針對DBpedia的複雜問題資料集,該資料集中簡單的單跳問題占比18%,典型的問句形式如:“What are the mascots of the teams participating in the turkish handball super league?”。該資料集的建構,先利用一部分SPARQL模闆,一些種子實體和部分關聯屬性通過DBpedia生成具體的SPARQL,然後再利用定義好的問句模闆半自動利用SPARQL生成問句,最後通過衆包形成最後的标注問題。Dubey等人也使用同樣的方法,建構了一個資料量更大更多樣的資料集 LcQuAD 2.0[9]。

3 KBQA核心方法介紹

  随着資料集的演變和KBQA技術的發展,我們認為KBQA目前主要面臨兩個核心挑戰:

  • 複雜問題了解難:如何更恰當地通過知識圖譜模組化并了解使用者複雜問題,并增強方法的可解釋性;
  • 模型推理能力弱:如何減少對于人工定義模闆的依賴,訓練具備推理能力、泛化性強的KBQA深度模型;

   現在KBQA的主流方法主要分為兩類:1) Semantic Parser + NN (SP);2) Information Retrieval(IR),是以我們總結了這兩類方法中的一些經典論文在WebQuestions上的結果,圖1所示, 從整體趨勢來看,結合深度學習的Semantic Parser方法效果要略優于IR的方法。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖1 各方法在WebQuestions上的Benchmark

   從上圖中我們可以看到,早期研究人員利用傳統方法, 通過手工構模組化闆和規則的方式解析複雜問題,但是此類方法的不足在于需要較專業的語言學知識且可擴充性不強。

   随着深度學習在NLP領域的應用,研究人員将QA問題視為使用者Query與答案的二分類或者排序問題(IR),利用不同的網絡結構(CNN or Attention),并結合KG中不同的上下文資訊來編碼候選答案和Query的分布式表示,最後通過計算兩者間的比對度選出最終的答案。此類方法将語義解析問題轉化為大規模可學習的比對問題,它的優點在于減少了對于人工模闆的依賴,而缺點是模型的可解釋性不強且整體效果欠佳。

   與此同時,研究人員将NN Based的方法引入到Semantic Parser範式中來增強語義解析能力。早期比較主流的方法是利用查詢圖(Query Graph)生成過程來模拟語義解析過程,對問句進行解析。随着Encoder-Decoder模型在翻譯領域的應用,也有研究人員試圖将語義解析問題看做是翻譯問題,通過設計不同的樹形解碼器來得到Query的語義表示。最近,借助KV Memory Network中的多個記憶槽來解決KBQA中多跳推理問題成為了一個趨勢,它的優點在于不依賴于人工模闆且可解釋性較強,缺點是仍然不能很好地解析序數推理和顯隐式時間限制的問題。

  同時,我們關注到最近出現了基于神經符号機[10](Neural Symbolic Machine)的解決方案。接下來,我們将詳細介紹這些主流方法。

3.1 Semantic Parser

  基于Semantic Parser的方法通常将自然語言轉化成中間的語義表示(Logical Forms),然後再将其轉化為可以在KG中執行的描述性語言(如 SPARQL語言)。

3.1.1 傳統方法

   傳統的Semantic Parser方法主要依賴于預先定義的規則模闆,或者利用監督模型對使用者Query和語義形式化表示(如CCG[11]、λ-DCS[12])的關系進行學習,然後對自然語言進行解析,這種方法需要大量的手工标注資料,可以在某些限定領域和小規模知識庫(如ATIS[13]、GeoQuery)中達到較好的效果,但是當面臨Freebase或DBpedia這類大規模知識圖譜的時候,往往效果欠佳。

3.1.2 查詢圖方法(Query Graph)

  上述傳統方法除了适用領域較窄外,大多沒有利用知識圖譜的資訊來進行語義解析。論文[14]提出了一種基于Semantic Parser的知識圖譜問答架構STAGG(Staged Query Graph Generation )。 該架構首先定義了一個可以直接轉化為Lambda演算的查詢圖(Query Graph),然後定義了如何将Semantic Parser的過程演變為查詢圖生成過程(4種State+4種Action),最後通過LambdaRank算法對生成的查詢圖進行排序,選出最佳答案。查詢圖生成過程一共有三個主要步驟:實體連結、屬性識别和限制挂載。

  針對Query:“Who first voiced Meg on Family Guy?”,查詢圖生成過程如圖2所示:

實體連結部分采用論文[15]的實體連結系統得到候選實體和分數;

屬性識别階段會根據識别的實體對候選的屬性進行剪枝,并采用深度卷積模型計算Query和屬性的相似度;

限制挂載階段會根據預定義的一些規則和比對嘗試進行最值、實體限制挂載;

最後會根據圖本身特征和每一步的分數特征訓練一個LambdaRank模型,對候選圖進行排序。

   此方法有效地利用了圖譜資訊對語義解析空間進行了裁剪,簡化了語義比對的難度,同是結合一些人工定義的處理最進階和聚合類問題的模闆,具備較強了解複雜問題的能力,是WebQuestions資料集上強有力的Baseline方法。而且該方法提出的Semantic Parser到查詢圖生成轉化的思想也被廣泛地采納,應用到了Semantic Parser+NN方法中。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖2 查詢圖生成過程圖

  微軟的論文[5]在此基礎上,擴充了限制類型和算子,新增了類型限制、顯式和隐式時間限制,更加系統地提出利用Multiple Constraint Query Graph(MultiCG)來解決複雜問題的方法,同時也針對WebQuestions資料集複雜問題較少的問題,公開了一個複雜問題資料集ComplexQuestions。該方法在WebQuestions和 ComplexQuestions資料集上,表現都優于STAGG方法。

   IBM[16]沿用STAGG的架構,針對屬性識别準确率較低的問題,在屬性識别階段,将Query和屬性名稱的字和詞2個次元進行編碼,利用Hierarchical Residual BiLSTM (HR-BiLSTM,圖3所示)計算相似度,提升了屬性識别關鍵子產品的準确率,該方法在SimpleQuestions資料集上有着優秀的表現,很好地彌補了Semantic Gap問題,但是并沒有在複雜問題地處理上進行過多地改善。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖3 HR-BiLSTM架構

  之前的幾種方法雖然取得了不錯的效果,但在Query與對應的Query Graph排序時,沒有顯式地将Query Graph利用神經網絡進行泛化性強地語義特征提取,而是利用不同步驟的分數作為特征進行排序。論文[17]提出了一種Semantic Matching Model(如圖4),分别對Query和查詢圖進行編碼。首先對去掉實體的Query利用雙向GRU進行全局編碼得到$q_{tok}$,然後對Query進行依存分析,并利用GRU對依存路徑進行編碼,收集句法和局部語義資訊,得到$q_{dep}$,最後兩者求和得到query編碼$q_p=q_{tok}+q_{dep}$。然後利用查詢圖中的所有屬性名編碼和屬性id (将屬性名組合) 編碼,得到圖的編碼向量$q_g=q_w+q_{id}$。最後利用Cosine距離計算Query與查詢圖的相似度$S_{sem}(q,G)=cos(maxq^i_p+maxq^i_g)$。該方法首次将Query Graph進行語義編碼,計算與Query間的相關性程度,并以此作為比對特征訓練模型。該方法在ComplexQuestions資料集上的表現優于MultiCG的方法,但是依然不能很好地利用神經網絡模型處理顯隐式時間限制等複雜問題。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖4 Semantic match model的整體架構

  上述方法在對Query Graph進行編碼的時候,因為最後使用了Pooling,是以并沒有考慮實體和關系的順序問題,論文[18]提出Tree2Seq的方法,将Query Graph利用Tree-based LSTM進行編碼,雖然并沒有在WebQuestions等資料集上取得SOTA的效果,但是驗證了Query結構資訊在QA任務上的有效性。

3.1.3 編碼器-解碼器方法(Encoder-Decoder)

   随着深度學習的方法和應用,NN-Based的KBQA逐漸成為了一個重要的研究方向[19],除了STAGG等方法中利用CNN來提升Semantic Parser中屬性識别的效果外,基于翻譯模型的Seq2Seq方法、Attention機制和Memory network也被用來提升KBQA的效果。愛丁堡大學[20]提出了利用注意力機制增強的Encoder-Decoder模型,将Semantic Parser問題轉化為Seq2Seq問題。該論文除了使用一個Seq2Seq模型來完成Query到Logical Forms的轉化外,還提出了一個Seq-to-Tree的模型,利用層次的樹形解碼器捕捉Logical Forms的結構(如圖5所示),該文章主要貢獻在于不依賴手工預定義的規則即可在領域資料集上取得SOTA方法,但是該方法需要大量的訓練語料,是以并不适合通用知識問答資料集。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖5 Sequence-To-Tree

  上述方法利用階層化樹形結構優化了Encoder-Decoder模型的解碼層,而論文[21]指出通用的序列編碼器利用了詞序的特征而忽略了有用的句法資訊,該論文使用Syntactic Graph分别表示詞序特征(Word Order),依存特征(Dependency)還有句子成分特征(Constituency),并采用Graph-to-Seq模型,利用圖編碼器将syntactic graph進行編碼,然後利用RNN對每時刻的狀态向量和通過Attention得到的上下文資訊進行解碼得到對應的Logical Forms。盡管該方法驗證了額外的句法資訊引入有利于提升模型的魯棒性,但是沒有解決對于大量訓練語料的依賴問題。

3.1.4 Transition-Based 方法

   北大[22]提出了State Transition-based 方法,通過定義4種原子操作(圖6所示)和可學習的狀态遷移模型,将複雜文圖轉化為Semantic Query Graph(轉化過程如圖7所示),該方法可以利用BiLSTM模型識别出多個節點(如多個實體),并用Multi-Channel Convolutional Neural Network(MCCNN)抽取節點間的多個關系,克服了查詢圖生成方法中假設隻有一個主要關系和利用人工規則識别限制的缺點,具備更強的魯棒性。同時該方法的狀态遷移是個可學習的過程,而此前的查詢圖生成方法中狀态遷移過程是預定義的。後續也有論文[23]采用Stack-LSTM[24]作為狀态遷移模型進行語義解析工作。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖6 State轉化的4種原子操作

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖7 Query到SQG的轉化過程

3.1.5 Memory Network方法

  随着機器閱讀等技術的普及,近些年基于Memory Network[25]的方法也被用來解決複雜問題解析。論文[26]提出了Key-Value Memory Network(KV-MemNN),此結構相比扁平的Memory Network結構,可以很好地存儲具有複雜結構的資料(如KG),并通過在多個記憶槽内的預測來進行淺層的多跳推理任務,最終生成相關子圖路徑。

  論文[27]用KV-MemNN來存儲圖譜中的三元組(SPO)資訊,并提出了一個新的Query Update機制,實驗驗證該機制在更新時去掉Query中已經定位到的Key值,可以讓模型能夠更好地注意到下一步需要推理的内容。同時論文在Key hashing階段加入特殊的STOP鍵值,來告訴模型在時刻t是否收集了足夠的資訊回答使用者Query,實驗驗證了它能避免複雜問題無效的推理過程。在答案預測階段,論文實驗了基于Semantic Parser和IR的兩種方法,通過消融實驗發現,利用Semantic Parser進行預測要明顯優于IR方法,論文猜測因為Semantic Parser方法在每一步預測中都會選擇最優的key,比IR方法(隻用最後一步的表示輸出進行排序)利用了更多全局資訊。

  該方法在不依賴于手工構造模闆的情況下,在WebQuestions資料集上的效果超過了SOTA方法,而且該方法的架構和引入的Stop、Query Update機制讓整個複雜問題的解析過程具備更好地解釋性,我們認為這種利用KG進行階層化的解析方法是KBQA發展的趨勢之一。圖8為該方法模型結構圖。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖8 Enhanced Key-Value Memory Network 架構圖

   本章中,我們介紹知識圖譜問答中Semantic Parser這類方法,分别介紹了4種具體方法:1)語義解析(Semantic Parser)過程轉化為查詢圖生成問題的各類方法;2)僅在領域資料集适用的Encoder-Decoder模型化解析方法;3)基于Transition-Based的狀态遷移可學習的解析方法;4)利用KV-MemNN進行解釋性更強的深度KBQA模型。

3.2 Information Retrieval

  基于搜尋排序(IR)的知識圖譜問答首先會确定使用者Query中的實體提及詞(Entity Mention),然後連結到KG中的主題實體(Topic Entity),并将與Topic Entity相關的子圖(Subgraph)提取出來作為候選答案集合,然後分别從Query和候選答案中抽取特征,最後利用排序模型對Query和候選答案進行模組化并預測。此類方法不需大量人工定義特征或者模闆,将複雜語義解析問題轉化為大規模可學習問題。

依據特征表示技術不同,IR方法可以分為基于特征工程的方法和基于表示學習的方法。

3.2.1 基于特征工程的方法

  論文[28]是該類方法的基礎模型,文章首先對問句進行句法分析,并對其依存句法分析結果提取問題詞(qword)、問題焦點詞(qfocus)、主題詞(qtopic)和中心動詞(qverb)特征,将其轉化為問句特征圖(Question Graph,圖9);然後利用qtopic在KG内提取Subgraph,并基于此生成候選答案特征圖(圖10);最後将問句中的特征與候選特征圖中的特征進行組合,将關聯度高的特征賦予較高的權重,該權重的學習直接通過分類器來學習。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖9 問句句法分析結果(左)與問句特征圖(右)

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖10候選答案特征圖

3.2.2 基于表示學習的方法

  上述方法有兩點不足:第一,需要自行定義并抽取特征,而且問句特征和候選答案特征組合需要進行笛卡爾乘積,特征次元過大;第二,該類方法難以處理複雜問題。為了解決這些問題,學術界利用表示學習方法,将問句和候選答案轉換為同一語義空間的向量,将KBQA看成是問句與候選答案的表示向量進行比對計算過程。

3.2.2.1 Embedding-Based方法

  論文[29]率先将問句以及KG中的候選答案實體映射到同一語義空間,其中候選答案實體利用三種向量進行表示:1) 答案實體本身;2)答案實體與主實體關系路徑;3)與答案實體相關Subgraph。然後利用Triplet loss1對模型進行訓練,模型結構如圖11所示。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖11 Subgraph Embedding模型結構圖

3.2.2.2 CNN and Attention方法

   上述模型針對問句編碼采用詞袋模型,沒有考慮詞序對句子的影響,以及不同類型屬性的不同特性。論文[30]提出Multi-Column Convolutional Neural Networks (MCCNNs) 如圖12所示,利用CNN分别對問句和答案類型(Answer Type)、答案實體關系路徑(Answer Path)和答案實體一跳内的Subgraph(Answer Context)進行編碼,以擷取不同的語義表示。該方法驗證了考慮詞序資訊、問句與答案的關系對KBQA效果的提升是有效的。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖12 MCCNN模型架構圖

   但是論文[30]對于不同答案,将問句都轉化成一個固定長度的向量,這種方法不能很好地表達問句的資訊。針對該問題論文[31]提出了Cross-Attention based Neural Network(圖13 所示), 将候選答案分成四個次元:答案實體$a_e$、答案實體關系路徑$a_r$、答案類型$a_t$和答案上下文(與上述論文相同)$a_c$,然後利用注意力機制動态學習不同答案次元與問句中詞的關聯程度,讓問句對不同答案次元根據注意力機制學習權重,有效地提升問答效果。論文[32]提出了Attentive RNN with Similarity Matrix based CNN(AR-SMCNN,圖14所示)模型,利用帶有注意力機制的RNN來對問句和屬性間關系進行模組化,并采用CNN模型捕捉問句與屬性間的字面比對資訊。該論文驗證了字面比對資訊能帶來效果上的提升,而實驗結果顯示,以上兩種網絡模型對于複雜問題的處理能力依然不足。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖13交叉注意力神經網絡

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖14 AR-SMCNN網絡架構

3.2.2.1 Memory Network方法

  與Semantic Parser方法相同,Memory Network(MemNN)因為其良好的可擴充性以及對于強弱監督[33]的适用性,被廣泛應用于KBQA中。論文[34]是将其結合KG中三元組資訊來解決KBQA中簡單問題(單跳),同時建構了SimpleQuestions資料集。該論文首先将KG中的知識存儲到MemNN中,然後采樣正負例Query和正負例的Answer,兩兩組合形成多任務,利用Triplet loss訓練MemNN。模型首先通過輸入子產品(input module)将使用者問題、三元組資訊轉化為分布式表示加入到Memory中;然後利用泛化子產品(Generalization module)将新的三元組資訊(來自Reverb)加入到Memory中;輸出子產品(Output module)從Memory中選擇一些與問題相關性高的三元組資訊;回複子產品(Response module)傳回從輸出子產品中得到的答案。該論文是MemNN在QA上的首次嘗試,雖然擅長解決簡單問題,但是思路為後續的KBQA研究工作奠定了基礎。

   基于上述論文,Jain[35]提出了一個L層的Factual Memory Network來模拟多跳推理過程,每層以線性連結,并以上一層輸出作為本層輸入。第一層的輸入是候選三元組和問句。對問句編碼時,為彌補詞袋模型無法考慮詞序的問題,為每一個詞的不同次元j設計一種位置編碼(Position Encoding) $l_ij=min(\frac{i*d}{j*|d|}, \frac{j*|q|}{i*d})$,其中d是詞向量次元。最後使用位置編碼更新句向量$q=\sum^{|d|}_{i=1}{l_i{\cdot} x_i}$。據我們所知,這是首次利用深度模型結合KG資訊階層化地進行複雜問題的語義解析工作,不僅在WebQuestions上驗證了這種結構的有效性,也為深度學習模型帶來了更好地解釋性。

   盡管如此,上文提到的方法在編碼階段,将問句和KG三元組資訊分别進行映射,沒有考慮兩者間的互動關系。基于此論文[36]提出Bidirectional Attentive Memory Network(BAMnet)模型, 主要通過Attention機制來捕捉Query與KG資訊間的兩兩相關性,并以此利用相關性增強Query的表示,希望能結合到更多的KG資訊,提升針對複雜問題的處理能力,該方法包含4個子產品:

  • 輸入子產品采用Bi-LSTM對問句進行編碼;
  • 記憶子產品(Memory module)針對KG資訊(答案類型、答案實體關系路徑、答案上下文)進行編碼存入Memory network中;
  • 推理子產品分為一個兩層的 Bidirectional Attention Network 去編碼問句和KG中資訊間的互相關系和泛化子產品(Generalization module)。
    • 模型中Primary attention network中的KB-aware attention module(圖17所示)會根據KG資訊關注問句中的重要部分;
    • Importance module利用注意力機制計算KG中資訊與問句的相關程度(比如簡單問題對于答案上下文關注度就會降低);
    • 然後在Enhancing module中利用Importance module計算的相關度權重矩陣,重新更新問句表示和Memory中的Key值表示,完成第二層Attention Network;
    • 最後在泛化子產品中選取Memory中對與問句表示有價值value,利用GRU進行編碼,連結到原有問句表示;
  • 回複子產品(Answer module)通過計算問句資訊和Enhancing module中更新過的KG資訊來得到最後答案。具體見圖15。

  該方法與衆多IR方法一樣,在不依賴于人工構模組化闆的情況下,依靠Attention機制和MemNN,效果比大多數IR方法更好,但是并沒有引用了PE機制的論文[35]效果好,我們猜測如果利用Transformer[37]的思想,引入詞語位置資訊,也許可以取得不錯的效果。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻
<center>  圖15 BAMnet架構         </center>                  
針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖16 KB-aware attention module

   綜上所述,我們可以看出僅僅利用CNN、Attention等機制對Query與KG資訊進行簡單地端到端模型盡管可以避免大量構造人工模闆,但并不能有效解決複雜問題,且部分方法的可解釋性不強。綜合Semantic Parser方法的實驗結果,選用階層化方式模組化,并選取有效的網絡結構存儲複雜的KG資訊,也許是解決KBQA中複雜問題了解和避免人工模闆構造的出路之一。

3.3 其他方法

   近些年也出現了一些新的方法,不能被簡單地歸類到上述兩類方法中。例如:論文38[40]嘗試使用自動或半自動從KB或者QA語料中學習模闆,并利用模闆将問句拆解成Logical Forms 或者了解其意圖。論文[41]嘗試将一個複雜的問句拆解成幾個簡單的問句,并從多個簡單問句的答案中找出最終的複雜問句答案。2019年以來,我們也發現有論文嘗試利用Message Passing NN[42]和Stepwise Reasoning Network[43]等方法對于複雜問題進行解析。

   最近也有一些研究人員采用神經計算與符号推理相結合的方法進行語義解析。論文[10]提出的神經符号機Neural Symbolic Machine (NSM)包含3個部分,經理(Manager)進行遠端監督,利用執行結果對于過程進行指導,提供輸入問題和執行的獎賞。程式員(Neural Programmer)使用Key-Variable Memory增強的Seq2Seq模型将問句變成程式,符号計算機(Symbolic Computer,如Lisp Interpreter),利用内置的函數和Code-Assist(用于将在句法和文法上無效的候選删除)生成一個領域相關的語言,然後執行該語言獲得最終的結果。神經符号計算初步探索了利用神經網絡模拟符号推理的過程,使得實作大規模可解釋的知識推理與問答成為了可能,我們認為這個方向的發展還有更多探索和嘗試的可能。

4 前沿趨勢分析

4.1 更關注複雜問題解析

   近些年來,盡管有論文指出KBQA中簡單問題已經基本被解決[44],但是在不少論文和我們的實驗中顯示,實體識别和屬性識别一直是影響複雜問題準确率的重要因素。是以我們認為在對複雜實體連結和具有歧義的易混淆句子上的屬性識别工作[45]是KBQA在工業界落地的一個重要方向。

   同時,随着資料集的發展,從WebQuestions到ComplexQuestions、LcQuAD、QALD等資料集的出現,現在學術界更關注解決包含多跳、聚合、比較或者顯隐式時間推理的複雜問題,但是現有方法并沒有針對這些具體問題在該類資料集上取得很好地效果。是以如何能設計更好地網絡結構模組化複雜問題的邏輯和語義結構、更好地融入KG資訊解決複雜問題也是需要我們探索的方向。

  近來,劉康老師的報告中[6]也提到了, 利用神經網絡符号計算解決複雜問題,我們也希望看到有研究工作可以利用神經網絡對符号計算的模拟,實作解釋性強的,可學習地大規模知識問答和知識推理。

4.2 模型魯棒性增強

  深度模型的黑盒不可解釋性一直受到研究人員的诟病。論文[46]指出在閱讀了解任務中,僅在段落中增加一些句子,會使模型效果有大幅下降。我們在KBQA實際應用中發現,其對語料的泛化了解以及拒識能力不強,嚴重影響了KBQA模型在工業環境的落地。但我們沒有看到在KBQA領域對于模型魯棒性的研究工作,是以我們認為針對KBQA魯棒性的研究應該其工業應用的重要趨勢。論文[47]向我們建議了一種生成相反語義句子的方法[48],感興趣的讀者或許可以嘗試一下。

4.3 從單輪問答到多輪互動

  真實場景下,使用者經常連續詢問多個問題,其中部分問題是對話相關,部分問題可以被映射到KBQA中。而現在的機器人通常是将問答和對話任務分開解決,我們認為有必要将兩種任務統一設計模組化,來解決真實場景下的此類問題。而現在的一些研究在複雜多輪問答(如CSQA)上的準确率還明顯不能落地,期待有更多地工作可以關注這個領域的研究。

5 小蜜Conversational AI團隊的KBQA

   小蜜團隊持續深耕人機對話方向,打造了一套工業界成型的KBQA引擎并落地到真實業務場景中。通過對線上日志的分析,同時參考學術界問題分類的标準,我們總結出小蜜KBQA要解決的問題類型:

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

表2 小蜜KBQA問題分類表

   在KBQA典型應用領域,例如:電信營運商、稅務領域、保險領域,其中包含很多實體以及條件限制,如電信營運商領域,不同流量(M)、價位(N)的各類套餐(L)的取消方式都不一樣,如果使用FAQ方法,會産生MNL個知識點,造成知識庫備援,而且不能精準地回答使用者問題。我們采用的KBQA方案不僅可以精準回答使用者問題,還能對FAQ知識庫進行知識瘦身,減少人工維護成本。

  經過分析,在上述幾個典型場景中,适合KBQA解決的問題占比為30%~40%,圖17給出了這些問題不同類型的詳細占比。可以看出,簡單問題占比達到60%,說明大多使用者還是希望解決自己的真實問題,而不是考察機器人的能力,但是複雜問題(多跳和推理)也占到了40%,說明在該類場景的業務也是具備一定複雜程度,如何更精準地回答使用者對于這類業務的問題,優化客戶人機互動體驗,是我們要解決的問題。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖17 營運商和稅務場景不同類型KBQA問題占比分析

   我們通過建構面向垂直領域的問答知識圖譜,幫助企業挖掘業務知識背後内在的結構化資訊,将零散的非結構化知識(石墨)變成有機的結構化知識(鑽石),提升領域知識的含金量。基于領域知識圖譜,我們參考學術界方法,研發了

基于MultiCG的Semantic Parser算法

(如圖18)對業務中的複雜問句進行解析,并利用Dependency parser模型對限制屬性進行消歧,在真實業務場景下,端到端的效果達到80%以上,同時也幫助企業的FAQ知識庫縮容近10倍。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖18 MultiCG with Dependency Parser

  在第五部分的前沿趨勢分析中,我們指出在真實場景下複雜實體和屬性識别是我們亟需解決的問題。在實體識别階段,因為領域KG内實體類别較少,實體消歧工作不是我們關注的重點,但是在使用者表述中可能會出現不連續實體或者嵌套實體的問題,如“飛享18元4g套餐”對應的實體為“飛享套餐”,為了更好地識别使用者問句中的mention并連結到圖譜中的實體,減少使用者對同義詞的配置,我們提出了一個

Search and Rank架構

(如圖19),利用比對和保序相似度等方法對句子中的mention和實體進行比對,再通過排序模型選出最優實體或者進行實體推薦。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖19 Search and Rank架構

  針對屬性識别方法,我們提出了一個Multi-point semantic representation架構,将每個屬性拆解成細粒度的四種因子資訊(topic、predicate、object/condition和query type)用以區分易混淆屬性,然後利用Compositional Intent Bi-Attention(CIBA,如圖20)将粗粒度的屬性資訊和細粒度的因子資訊與問句表示相結合,增強問句的語義表示。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

圖20 CIBA模型架構圖

  實驗結果表明(表3和表4),我們提出的方法可以通過屬性因子分解減少易混淆屬性的錯誤數量,并在整體分類效果上取得性能提升。 相關工作發表在AAAI 2020《Multi-Point Semantic Representation for Intent Classification》上。

針對複雜問題的知識圖譜問答KBQA最新進展調研1 背景介紹2 資料集簡介3 KBQA核心方法介紹4 前沿趨勢分析5 小蜜Conversational AI團隊的KBQA6 總結7 參考文獻

     表3 CIBA模型結果比較         表4 易混淆意圖比較

  針對模型魯棒性和表示能力弱,部分限制識别借助人工模闆的問題,我們借鑒最近兩年Semantic Parser + NN方法中KV-MemNN的模組化思想,我們提出了Hierarchical KB-Attention Model,對Query與KB之間的互動進行了細粒度的模組化,以捕捉問句内部核心成分之間的修飾關系,來強化Query的階層化語義了解,在效果上超過了MultiCG的方法,并且具備更強的複雜問題解析能力和更好的可解釋性。

6 總結

  本綜述圍繞KBQA中複雜問題解析的研究進展做了一個詳細的介紹,歸納了現有KBQA方法面臨的兩大核心挑戰:1) 複雜問題了解難;2) 模型推理能力弱,并針對這兩個挑戰介紹了KBQA主流的兩種方法:1) Semantic Parser;2) Information Retrieval。Semantic Parser方法中,針對複雜問題了解,我們介紹了利用查詢圖生成、Encoder-Decoder和KV-MemNN的方法來進行語義解析的方法。Information Retrieval方法中我們介紹了利用Subgraph Embedding、CNN 、Attention和Memory Network機制對Query和KG不同結構資訊進行模組化和比對的方法,此類方法減少了人工模闆的依賴,但是可解釋性不強,且在現有的資料集結果上效果不佳。然後我們結合目前KBQA的發展,提出了自己對于KBQA未來發展趨勢的分析。最後我們對阿裡巴巴-達摩院-小蜜Conversational AI團隊目前在KBQA方向上的進展做了一個簡明的介紹,輸出了我們對于KBQA的問題分類、業務場景分析和核心算法概述。希望本篇進展研究可以對讀者的研究工作帶來一定的啟發和幫助。

7 參考文獻

[1] Yang Z, Qi P, Zhang S, et al. Hotpotqa: A dataset for diverse, explainable multi-hop question answering[J]. arXiv preprint arXiv:1809.09600, 2018.

[2] Saha A, Pahuja V, Khapra M M, et al. Complex sequential question answering: Towards learning to converse over linked question answer pairs with a knowledge graph[C]//Thirty-Second AAAI Conference on Artificial Intelligence. 2018.

[3] Berant J, Chou A, Frostig R, et al. Semantic parsing on freebase from question-answer pairs[C]//Proceedings of the 2013 conference on empirical methods in natural language processing. 2013: 1533-1544.

[4] Yih W, Richardson M, Meek C, et al. The value of semantic parse labeling for knowledge base question answering[C]//Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers). 2016: 201-206.

[5] Bao J, Duan N, Yan Z, et al. Constraint-based question answering with knowledge graph[C]//Proceedings of COLING 2016, the 26th International Conference on Computational Linguistics: Technical Papers. 2016: 2503-2514.

[6] 劉康, 面向知識圖譜的問答系統. AI前沿講習班第8期PPT

[7] 趙軍, 劉康, 何世柱, 陳玉博. 知識圖譜[B]. 2018.

[8] Trivedi P, Maheshwari G, Dubey M, et al. Lc-quad: A corpus for complex question answering over knowledge graphs[C]//International Semantic Web Conference. Springer, Cham, 2017: 210-218.

[9] Dubey M, Banerjee D, Abdelkawi A, et al. Lc-quad 2.0: A large dataset for complex question answering over wikidata and dbpedia[C]//International Semantic Web Conference. Springer, Cham, 2019: 69-78.

[10] Liang C, Berant J, Le Q, et al. Neural symbolic machines: Learning semantic parsers on freebase with weak supervision[J]. arXiv preprint arXiv:1611.00020, 2016.

[11] Steedman M. A very short introduction to CCG[J]. Unpublished paper.

http://www.

 coqsci. ed. ac. uk/steedman/paper. html, 1996.

[12] Liang P. Lambda dependency-based compositional semantics[J]. arXiv preprint arXiv:1309.4408, 2013.

[13] Dahl D A, Bates M, Brown M, et al. Expanding the scope of the ATIS task: The ATIS-3 corpus[C]//Proceedings of the workshop on Human Language Technology. Association for Computational Linguistics, 1994: 43-48.

[14] Yih S W, Chang M W, He X, et al. Semantic parsing via staged query graph generation: Question answering with knowledge base[J]. 2015.

[15] Yang Y, Chang M W. S-mart: Novel tree-based structured learning algorithms applied to tweet entity linking[J]. arXiv preprint arXiv:1609.08075, 2016.

[16] Yu M, Yin W, Hasan K S, et al. Improved neural relation detection for knowledge base question answering[J]. arXiv preprint arXiv:1704.06194, 2017.

[17] Luo K, Lin F, Luo X, et al. Knowledge base question answering via encoding of complex query graphs[C]//Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing. 2018: 2185-2194.

[18] Zhu S, Cheng X, Su S. Knowledge-based question answering by tree-to-sequence learning[J]. Neurocomputing, 2020, 372: 64-72.

[19] Wu P, Zhang X, Feng Z. A Survey of Question Answering over Knowledge Base[C]//China Conference on Knowledge Graph and Semantic Computing. Springer, Singapore, 2019: 86-97.

[20] Dong L, Lapata M. Language to logical form with neural attention[J]. arXiv preprint arXiv:1601.01280, 2016.

[21] Xu K, Wu L, Wang Z, et al. Exploiting rich syntactic information for semantic parsing with graph-to-sequence model[J]. arXiv preprint arXiv:1808.07624, 2018.

[22] Hu S, Zou L, Zhang X. A state-transition framework to answer complex questions over knowledge base[C]//Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing. 2018: 2098-2108.

[23] Cheng J, Reddy S, Saraswat V, et al. Learning structured natural language representations for semantic parsing[J]. arXiv preprint arXiv:1704.08387, 2017.

[24] Dyer C, Ballesteros M, Ling W, et al. Transition-based dependency parsing with stack long short-term memory[J]. arXiv preprint arXiv:1505.08075, 2015.

[25] Weston J, Chopra S, Bordes A. Memory networks[J]. arXiv preprint arXiv:1410.3916, 2014.

[26] Miller A, Fisch A, Dodge J, et al. Key-value memory networks for directly reading documents[J]. arXiv preprint arXiv:1606.03126, 2016.

[27] Xu K, Lai Y, Feng Y, et al. Enhancing Key-Value Memory Neural Networks for Knowledge Based Question Answering[C]//Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers). 2019: 2937-2947.

[28] Yao X, Van Durme B. Information extraction over structured data: Question answering with freebase[C]//Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). 2014: 956-966.

[29] Bordes A, Chopra S, Weston J. Question answering with subgraph embeddings[J]. arXiv preprint arXiv:1406.3676, 2014.

[30] Dong L, Wei F, Zhou M, et al. Question answering over freebase with multi-column convolutional neural networks[C]//Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing (Volume 1: Long Papers). 2015: 260-269.

[31] Hao Y, Zhang Y, Liu K, et al. An end-to-end model for question answering over knowledge base with cross-attention combining global knowledge[C]//Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). 2017: 221-231.

[32] Qu Y, Liu J, Kang L, et al. Question answering over freebase via attentive RNN with similarity matrix based CNN[J]. arXiv preprint arXiv:1804.03317, 2018, 38.

[33] Sukhbaatar S, Szlam A, Weston J, et al. Weakly supervised memory networks[J]. CoRR, abs/1503.08895, 2.

[34] Bordes A, Usunier N, Chopra S, et al. Large-scale simple question answering with memory networks[J]. arXiv preprint arXiv:1506.02075, 2015.

[35] Jain S. Question answering over knowledge base using factual memory networks[C]//Proceedings of the NAACL Student Research Workshop. 2016: 109-115.

[36] Chen Y, Wu L, Zaki M J. Bidirectional attentive memory networks for question answering over knowledge bases[J]. arXiv preprint arXiv:1903.02188, 2019.

[37] Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[C]//Advances in neural information processing systems. 2017: 5998-6008.

[38] Reddy S, T_ckstr_m O, Collins M, et al. Transforming dependency structures to logical forms for semantic parsing[J]. Transactions of the Association for Computational Linguistics, 2016, 4: 127-140.

[39] Abujabal A, Yahya M, Riedewald M, et al. Automated template generation for question answering over knowledge graphs[C]//Proceedings of the 26th international conference on world wide web. 2017: 1191-1200.

[40] Cui W, Xiao Y, Wang H, et al. KBQA: learning question answering over QA corpora and knowledge bases[J]. arXiv preprint arXiv:1903.02419, 2019.

[41] Talmor A, Berant J. The web as a knowledge-base for answering complex questions[J]. arXiv preprint arXiv:1803.06643, 2018.

[42] Vakulenko S, Fernandez Garcia J D, Polleres A, et al. Message Passing for Complex Question Answering over Knowledge Graphs[C]//Proceedings of the 28th ACM International Conference on Information and Knowledge Management. 2019: 1431-1440.

[43] Qiu Y, Wang Y, Jin X, et al. Stepwise Reasoning for Multi-Relation Question Answering over Knowledge Graph with Weak Supervision[C]//Proceedings of the 13th International Conference on Web Search and Data Mining. 2020: 474-482.

[44] Petrochuk M, Zettlemoyer L. Simplequestions nearly solved: A new upperbound and baseline approach[J]. arXiv preprint arXiv:1804.08798, 2018.

[45] Zhang J, Ye Y, Zhang Y, et al. Multi-Point Semantic Representation for Intent Classification[J]. AAAI. 2020.

[46] Jia R, Liang P. Adversarial examples for evaluating reading comprehension systems[J]. arXiv preprint arXiv:1707.07328, 2017.

[47] Chakraborty N, Lukovnikov D, Maheshwari G, et al. Introduction to Neural Network based Approaches for Question Answering over Knowledge Graphs[J]. arXiv preprint arXiv:1907.09361, 2019.

[48] Ribeiro M T, Singh S, Guestrin C. Semantically equivalent adversarial rules for debugging nlp models[C]//Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). 2018: 856-865.

繼續閱讀