知識問答KB-QA

2021-02-15 機器學習AI算法工程


向AI轉型的程式設計師都關注了這個號👇👇👇

機器學習AI算法工程   公眾號:datayx

內容速覽

什麼是知識庫(knowledge base, KB)

什麼是知識庫問答(knowledge base question answering, KB-QA)

知識庫問答的主流方法

知識庫問答的數據集

什麼是知識庫

「歐巴馬出生在火奴魯魯。」

「姚明是中國人。」

「謝霆鋒的爸爸是謝賢。」

這些就是一條條知識,而把大量的知識匯聚起來就成為了知識庫。我們可以在wiki百科,百度百科等百科全書查閱到大量的知識。然而,這些百科全書的知識組建形式是非結構化的自然語言,這樣的組織方式很適合人們閱讀但並不適合計算機去處理。為了方便計算機的處理和理解,我們需要更加形式化、簡潔化的方式去表示知識,那就是三元組(triple)。

「歐巴馬出生在火奴魯魯。」 可以用三元組表示為 (BarackObama, PlaceOfBirth, Honolulu)。

這裡我們可以簡單的把三元組理解為 (實體entity,實體關係relation,實體entity),進一步的,如果我們把實體看作是結點,把實體關係(包括屬性,類別等等)看作是一條邊,那麼包含了大量三元組的知識庫就成為了一個龐大的知識圖。

知識庫可以分為兩種類型,一種是以Freebase,Yago2為代表的Curated KBs,它們從維基百科和WordNet等知識庫中抽取大量的實體及實體關係,可以把它們理解為是一種結構化的維基百科,被google收購的Freebase中包含了上千萬個實體,共計19億條triple。

值得一提的是,有時候會把一些實體稱為topic,如Justin Bieber。實體關係也可分為兩種,一種是屬性property,一種是關係relation。如下圖所示,屬性和關係的最大區別在於,屬性所在的三元組對應的兩個實體,常常是一個topic和一個字符串,如屬性Type/Gender,對應的三元組(Justin Bieber, Type, Person),而關系所在的三元組所對應的兩個實體,常常是兩個topic。如關係Place_of_Brith,對應的三元組(Justin Bieber, Place_of_brith,London)。

(圖中藍色方塊表示topic,橙色橢圓包括屬性值,它們都屬於知識庫的實體,藍色直線表示關係,橙色直線表示屬性,它們都統稱為知識庫的實體關係,都可以用三元組刻畫實體關係和實體)

但是,像維基百科這樣的知識庫,與整個網際網路相比,仍只能算滄海一粟。知識庫的另外一種類型,則是以Open Information Extraction (Open IE), Never-Ending Language Learning (NELL) 為代表的Extracted KBs,它們直接從上億個網頁中抽取實體關係三元組。與Freebase相比,這樣得到的知識更加具有多樣性,而它們的實體關係和實體更多的則是自然語言的形式,如「歐巴馬出生在火奴魯魯。」 可以被表示為(「Obama」, 「was also born in」, 「 Honolulu」),當然,直接從網頁中抽取出來的知識,也會存在一定的noisy,其精確度要低於Curated KBs。

Extracted KBs 知識庫涉及到的兩大關鍵技術是

實體鏈指(Entity linking) ,即將文檔中的實體名字連結到知識庫中特定的實體上。它主要涉及自然語言處理領域的兩個經典問題實體識別 (Entity Recognition) 與實體消歧 (Entity Disambiguation),簡單地來說,就是要從文檔中識別出人名、地名、機構名、電影等命名實體。並且,在不同環境下同一實體名稱可能存在歧義,如蘋果,我們需要根據上下文環境進行消歧。

關係抽取 (Relation extraction),即將文檔中的實體關係抽取出來,主要涉及到的技術有詞性標註 (Part-of-Speech tagging, POS),語法分析,依存關係樹 (dependency tree) 以及構建SVM、最大熵模型等分類器進行關係分類等。

什麼是知識庫問答

知識庫問答(knowledge base question answering,KB-QA)即給定自然語言問題,通過對問題進行語義理解和解析,進而利用知識庫進行查詢、推理得出答案。如下圖所示

與對話系統、對話機器人的交互式對話不同,KB-QA具有以下特點:

答案:回答的答案是知識庫中的實體或實體關係,或者no-answer(即該問題在KB中找不到答案),當然這裡答案不一定唯一,比如 中國的城市有哪些 。而對話系統則回復的是自然語言句子,有時甚至需要考慮上下文語境。

評價標準:回召率 (Recall),精確率 (Precision) ,F1-Score。而對話系統的評價標準以人工評價為主,以及BLEU和Perplexity。

當我們在百度詢問 2016年奧斯卡最佳男主角 時,百度會根據知識庫進行查詢和推理,返回答案,這其實就是KB-QA的一個應用。

知識庫問答的主流方法

關於KB-QA的方法,個人認為,傳統的主流方法可以分為三類:

這裡給出語義解析方法的一些代表論文

Berant J, Chou A, Frostig R, et al. Semantic Parsing on Freebase from Question-Answer Pairs[C]//EMNLP. 2013, 2(5): 6.

Cai Q, Yates A. Large-scale Semantic Parsing via Schema Matching and Lexicon Extension[C]//ACL (1). 2013: 423-433.

Kwiatkowski T, Choi E, Artzi Y, et al. Scaling semantic parsers with on-the-fly ontology matching[C]//In Proceedings of EMNLP. Percy. 2013.

Fader A, Zettlemoyer L, Etzioni O. Open question answering over curated and extracted knowledge bases[C]//Proceedings of the 20th ACM SIGKDD international conference on Knowledge discovery and data mining. ACM, 2014: 1156-1165.

信息抽取(Information Extraction):該類方法通過提取問題中的實體,通過在知識庫中查詢該實體可以得到以該實體節點為中心的知識庫子圖,子圖中的每一個節點或邊都可以作為候選答案,通過觀察問題依據某些規則或模板進行信息抽取,得到問題特徵向量,建立分類器通過輸入問題特徵向量對候選答案進行篩選,從而得出最終答案。信息抽取的代表論文Yao X, Van Durme B. Information Extraction over Structured Data: Question Answering with Freebase[C]//ACL (1). 2014: 956-966.

向量建模(Vector Modeling): 該方法思想和信息抽取的思想比較接近,根據問題得出候選答案,把問題和候選答案都映射為分布式表達(Distributed Embedding),通過訓練數據對該分布式表達進行訓練,使得問題和正確答案的向量表達的得分(通常以點乘為形式)儘量高,如下圖所示。模型訓練完成後則可根據候選答案的向量表達和問題表達的得分進行篩選,得出最終答案。

向量建模方法的代表論文

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

Yang M C, Duan N, Zhou M, et al. Joint Relational Embeddings for Knowledge-based Question Answering[C]//EMNLP. 2014, 14: 645-650.

Bordes A, Weston J, Usunier N. Open question answering with weakly supervised embedding models[C]//Joint European Conference on Machine Learning and Knowledge Discovery in Databases. Springer Berlin Heidelberg, 2014: 165-180.

細心的朋友已經發現了,以上三種方法的代表論文都集中在13-14年。那麼14年之後KB-QA的主流方法是什麼呢?

隨著深度學習(Deep Learning)在自然語言處理領域的飛速發展,從15年開始,開始湧現出一系列基於深度學習的KB-QA文章,通過深度學習對傳統的方法進行提升,取得了較好的效果,比如:

使用卷積神經網絡對向量建模方法進行提升:

Dong L, Wei F, Zhou M, et al. Question Answering over Freebase with Multi-Column Convolutional Neural Networks[C]//ACL (1). 2015: 260-269.

使用卷積神經網絡對語義解析方法進行提升:

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

(注 該paper來自微軟,是ACL 2015年的Outstanding paper,也是目前KB-QA效果最好的paper之一)

使用長短時記憶網絡(Long Short-Term Memory,LSTM),卷積神經網絡(Convolutional Neural Networks,CNNs)進行實體關係分類:

Xu Y, Mou L, Li G, et al. Classifying Relations via Long Short Term Memory Networks along Shortest Dependency Paths[C]//EMNLP. 2015: 1785-1794.

Zeng D, Liu K, Lai S, et al. Relation Classification via Convolutional Deep Neural Network[C]//COLING. 2014: 2335-2344.(Best paper)

Zeng D, Liu K, Chen Y, et al. Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks[C]//EMNLP. 2015: 1753-1762.

使用記憶網絡(Memory Networks),注意力機制(Attention Mechanism)進行KB-QA:

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

Zhang Y, Liu K, He S, et al. Question Answering over Knowledge Base with Neural Attention Combining Global Knowledge Information[J]. arXiv preprint arXiv:1606.00979, 2016.

以上論文幾乎都使用了Freebase作為knowledge base,並且在WebQuestion數據集上進行過測試,這裡給出各種方法的效果對比圖,給大家一個更加直觀的感受。

知識庫問答的數據集

最後,我們再簡單地介紹一下KB-QA問題的Benchmark數據集——WebQuestion。

該數據集由Berant J, Chou A, Frostig R, et al.在13年的論文Semantic Parsing on Freebase from Question-Answer Pairs中公開。

作者首先使用Google Suggest API獲取以wh-word(what,who,why,where,whose...)為開頭且只包含一個實體的問題,以「where was Barack Obama born?」作為問題圖譜的起始節點,以Google Suggest API給出的建議作為新的問題,通過寬度優先搜索獲取問題。具體來講,對於每一個隊列中的問題,通過對它刪去實體,刪去實體之前的短語,刪去實體之後的短語形成3個新的query,將這三個新query放到google suggest中,每個query將生成5個候選問題,加入搜索隊列,直到1M個問題被訪問完。如下圖所示

獲取完問題後,隨機選取100K個問題交給Amazon Mechanical Turk (AMT)的工人,讓工人回答答案。注意,這裡對答案進行了限制,讓AMT的工人只能把答案設置為Freebase上的實體(entity),實體列表,值(value)或者no-answer。

最終,得到了5,810組問題答案對,其詞彙表包含了4,525個詞。並且,WebQuestion還提供了每個答案對應知識庫的主題節點(topic node)。

可以看出WebQuestion的問題與freebase是不相關的,更加偏向自然語言,也更多樣化。這裡給出一些例子

「What is James Madison most famous for?」

「What movies does Taylor Lautner play in?」

「What music did Beethoven compose?」

「What kind of system of government does the United States have?」

除了該數據集,這裡再補充一些其他數據集的信息,如下圖所示:

閱讀過本文的人還看了以下文章:

【全套視頻課】最全的目標檢測算法系列講解,通俗易懂!

《美團機器學習實踐》_美團算法團隊.pdf

《深度學習入門:基於Python的理論與實現》高清中文PDF+源碼

特徵提取與圖像處理(第二版).pdf

python就業班學習視頻,從入門到實戰項目

2019最新《PyTorch自然語言處理》英、中文版PDF+源碼

《21個項目玩轉深度學習:基於TensorFlow的實踐詳解》完整版PDF+附書代碼

《深度學習之pytorch》pdf+附書源碼

PyTorch深度學習快速實戰入門《pytorch-handbook》

【下載】豆瓣評分8.1,《機器學習實戰:基於Scikit-Learn和TensorFlow》

《Python數據分析與挖掘實戰》PDF+完整源碼

汽車行業完整知識圖譜項目實戰視頻(全23課)

李沐大神開源《動手學深度學習》,加州伯克利深度學習(2019春)教材

筆記、代碼清晰易懂!李航《統計學習方法》最新資源全套!

《神經網絡與深度學習》最新2018版中英PDF+源碼

將機器學習模型部署為REST API

FashionAI服裝屬性標籤圖像識別Top1-5方案分享

重要開源!CNN-RNN-CTC 實現手寫漢字識別

yolo3 檢測出圖像中的不規則漢字

同樣是機器學習算法工程師,你的面試為什麼過不了?

前海徵信大數據算法:風險概率預測

【Keras】完整實現『交通標誌』分類、『票據』分類兩個項目,讓你掌握深度學習圖像分類

VGG16遷移學習,實現醫學圖像識別分類工程項目

特徵工程(一)

特徵工程(二) :文本數據的展開、過濾和分塊

特徵工程(三):特徵縮放,從詞袋到 TF-IDF

特徵工程(四): 類別特徵

特徵工程(五): PCA 降維

特徵工程(六): 非線性特徵提取和模型堆疊

特徵工程(七):圖像特徵提取和深度學習

如何利用全新的決策樹集成級聯結構gcForest做特徵工程並打分?

Machine Learning Yearning 中文翻譯稿

螞蟻金服2018秋招-算法工程師(共四面)通過

全球AI挑戰-場景分類的比賽源碼(多模型融合)

斯坦福CS230官方指南:CNN、RNN及使用技巧速查(列印收藏)

python+flask搭建CNN在線識別手寫中文網站

中科院Kaggle全球文本匹配競賽華人第1名團隊-深度學習與特徵工程

不斷更新資源

深度學習、機器學習、數據分析、python

 搜索公眾號添加: datayx  

QQ群 

333972581

相關焦點

  • 知識問答平臺社區化 搜搜問問入口豐富成亮點
    艾瑞諮詢於2010年5月對中國網絡知識問答平臺用戶使用行為進行了專門的調查研究,通過組織用戶在限定時間內執行任務。根據任務完成情況,總結近一年來網絡知識問答用戶對各產品使用滿意度評價情況以及潛在需求。
  • 知識問答4:紅碼人員應該遵守哪些要求?
    很高興大家來到熱點透視推出的知識問答欄目。此刻我們進行的是知識問答4,也是該欄目的第四期內容。小編連續推出的知識問答受到了市民們的熱捧,大家競相轉發告知親朋好友,提醒大家全面了解錫康碼知識,以期達到方便自己的同時,也在服務社會。好了,下面就開始我們的第四期知識問答欄目,供大家參考學習。
  • 圖文解讀---創文知識問答
    違法不良信息舉報 029-63907150 029-85356217 圖文解讀---創文知識問答   西安網訊:迎十四運,創文明城,繼續通過一組問答,來了解一下創文的相關內容。
  • 知乎產品分析:問答社區的領頭羊,知識付費的初入者
    「問答社區+知識付費」知乎如何利用問答社區的巨大流量服務知識付費業務?作為知識付費的初入者,知乎該如何提供用戶轉化及留存?與得到、千聊、喜馬拉雅等平臺,知乎的知識付費有何不同,該如何走出獨具知乎特色的知識付費路線?
  • 科普知識問答(六十五)_政務_澎湃新聞-The Paper
    科普知識問答(六十五) 2020-04-01 11:31 來源:澎湃新聞·澎湃號·政務
  • 社交遊戲「元年」,如何能讓知識問答產品賺到錢
    社交遊戲「元年」,如何能讓知識問答產品賺到錢 作者:GameRefinery
  • 抖音奧特曼知識大挑戰答案大全 抖音奧特曼知識問答測試答案匯總
    原標題:抖音奧特曼知識大挑戰答案大全 抖音奧特曼知識問答測試答案匯總     抖音奧特曼知識大挑戰答案是什麼?最近抖音上面突然出現了一個奧特曼知識問答測試,這個測試全部都是關於奧特曼的知識,也是因為最近奧特曼突然火了的原因,這個測試也引起了很多用戶的關注,接下來小編就為大家帶來知識問答競賽測試的答案大全,快來看看吧。
  • 百度知道:互動式知識問答分享平臺
    網絡「鐵」的力量百度知道是由百度推出的,是一個基於搜索的互動式知識問答分享平臺,目前是中國最大的問答網站。圖3 百度知道用戶回答頁面在百度知道中貢獻分享知識的用戶被稱為芝麻用戶,而有共同興趣愛好、共同成長的芝麻用戶可以組成芝麻團。
  • 漲姿勢丨知識問答節目——「中國綜藝史上的活化石」的編年史
    從2015年9月30日21點至2015年10月7日23點,國慶七天一共170個小時裡,芒果TV推出了一檔全時在線智力問答節目——《百萬秒問答》。讓我們用科普的眼光,看看「年紀最大」,「存活最久」的智力問答是如何走過了30多年的風風雨雨。
  • 《喵與築》貓咪花園知識問答全攻略
    《喵與築》貓咪花園知識問答全攻略 來源:www.18183.com作者:阿姆斯特朗雷時間:2020-04-28 分享到: 《
  • 【知識問答】
    【知識問答】20-40 《西遊記》中唐僧的原型是誰?【知識問答】41、"一門父子三詞客,千古文章八大家"這幅對聯中提到的"三父子"是:(B)A、曹操、曹丕、曹植B、蘇洵、蘇軾、蘇轍C 、班彪、班固、班超42、孔子提倡中庸之道的理論基礎是:(B)A、陰陽五行B、天人合一C、道法自然
  • 基於知識圖譜的問答在美團智能交互場景中的應用和演進
    今天會和大家分享基於知識圖譜的問答在美團智能交互場景中的應用和演進。今天的介紹會圍繞下面三點展開:智能交互背景介紹受限場景問答應用和演進複雜場景問答應用和演進——智能交互背景介紹——1.  以上交互的場景對知識有重要的依賴,需要使用知識幫助人們完成選擇:由於交互對知識有重要依賴,於是我們引入了基於知識圖譜的問答 KBQA。4.
  • 螞蟻莊園小雞今日問答知識科普:大熊貓愛吃的竹子實際上是什麼到底...
    螞蟻莊園小雞今日問答知識科普:大熊貓愛吃的竹子實際上是什麼到底是草還是樹時間:2020-05-10 15:28   來源:今日頭條   責任編輯:毛青青 川北在線核心提示:原標題:螞蟻莊園小雞今日問答知識科普:大熊貓愛吃的竹子實際上是什麼到底是草還是樹 關於到現在螞蟻莊園小雞今日問答知識科普:大熊貓愛吃的竹子實際上是什麼這個話題
  • 八面玲瓏是什麼意思最初形容窗戶還是玉器 最近的知識問答還可以...
    八面玲瓏是什麼意思最初形容窗戶還是玉器 最近的知識問答還可以免費送飼料時間:2021-01-05 12:12   來源:網易娛樂   責任編輯:凌君 川北在線核心提示:原標題:八面玲瓏是什麼意思最初形容窗戶還是玉器 最近的知識問答還可以免費送飼料 成語八面玲瓏最初是形容什麼?
  • 雨前茶中的雨指的是什麼 最近的知識問答還可以免費送飼料
    雨前茶中的雨指的是什麼 最近的知識問答還可以免費送飼料時間:2021-01-12 13:02   來源:唯美村   責任編輯:凌君 川北在線核心提示:原標題:雨前茶中的雨指的是什麼 最近的知識問答還可以免費送飼料 雨前茶中的雨指的是什麼?
  • 趣味問答受歡迎,水清溝街道將垃圾分類知識寓教於樂
    趣味問答受歡迎,水清溝街道將垃圾分類知識寓教於樂 2020-12-25 11:15 來源:澎湃新聞·澎湃號·媒體
  • 每日支付寶小雞問答知識大科普:哪種動物一生都在換牙
    每日支付寶小雞問答知識大科普:哪種動物一生都在換牙時間:2020-05-29 00:27   來源:今日頭條   責任編輯:毛青青 川北在線核心提示:原標題:每日支付寶小雞問答知識大科普:哪種動物一生都在換牙 關於到現在每日支付寶小雞問答知識大科普:哪種動物一生都在換牙這個話題,相信很多小夥伴都是非常有興趣了解的吧
  • DNF職業問答QA,有問必答!第二期
    職業問答篇:Q:奶蘿穿95皮夾比板甲低多少面板A:穿皮甲的奶蘿很少呀,智力差距為154
  • 奇蹟暖暖5月11日知識問答活動答案大全 最新知識問答題目答案匯總
    奇蹟暖暖在5月11日更新了新一輪的奇蹟大陸知識問答活動問題,大家都在問答案呢,來和小編一起看看關於這個5月11日知識問答活動答案匯總介紹吧!  5月11日知識問答活動答案是什麼  提示:可以按Ctrl+F鍵來快速搜索題目  數字  1.問:2015年12月6日是暖暖系列幾周年紀念日?
  • 楊紫挑戰童年動畫冷知識問答 機智可愛超有趣
    近日,楊紫挑戰童年動畫冷知識問答與其同時,通過這個問答,也讓人get到了一個冷知識,楊紫是動畫電影《淘氣包馬小跳》中馬小跳的配音演員,也是非常令人意外和驚喜了。