論文閱讀 | 知識圖譜構建
摘抄自 《知識圖譜構建技術綜述》 . 劉嶠等人 . 計算機研究與發展. 2016
根據 W3C的解釋,語義網路是一張資料構成的網路,語義網路技術向用戶提供的是一個查詢環境,其核心要義是以圖形的方式向用戶返回經過加工和推理的知識
而知識圖譜技術則是實現智慧化語義檢索的基礎和橋樑.
傳統搜尋引擎技術能夠根據使用者查詢快速排序網頁,提高資訊檢索的效率,然而,這種網頁檢索效率並不意味著使用者能夠快速準確地獲取資訊和知 識,對於搜尋引擎反饋的大量結果,還需要進行人工排查和篩選.
1 知識圖譜的定義與架構
1.1 定義
知識圖譜 是結構化的語義知識庫,用 於以符號形式描述物理世界中的概念及其相互關係.其基本組成單位是“實體-關係-實體”三元組,以 及實體及其相關屬性-值對,實體間通過關係相互聯結,構成網狀的知識結構
通過知識圖譜,可以實現 Web 從網頁連結向概念連結轉變,支援使用者按主題而不是字串檢索,從而真正實現語義檢索,基於知識圖譜的搜尋引擎,能夠以圖形方式向用戶反饋結構化的知識,使用者不必 瀏覽大量網頁,就可以準確定位和深度獲取知識.
定義1包含3層含義
- 知識圖譜本身是一個具有屬性的實體通過關係連結而成的網狀知識庫.從圖的角度來看,知識 圖譜在本質上是一種概念網路,其中的節點表示物 理世界的實體(或概念),而實體間的各種語義關係 則構成網路中的邊.由此,知識圖譜是對物理世界的 一種符號表達.
- 知識圖譜的研究價值在於,它是構建在當前 Web基礎之上的一層覆蓋網路, 藉助知識圖譜,能夠在 Web 網頁之上建立概念間的連結關係,從而以最小的代價將網際網路中積累的資訊組織起來
- 知識圖譜的應用價值在於,它能夠改變現有的資訊檢索方式,一方面通過推理實現概念檢索(相 對於現有的字串模糊匹配方式而言);另一方面以圖形化方式向用戶展示經過分類整理的結構化知識,從而使人們從人工過濾網頁尋找答案的模式中解脫出來
1.2 知識圖譜的架構
知識圖譜的架構,包括自身的 邏輯結構 和 技術架構
邏輯結構 可分為2個層次 :資料層和模式層
資料層 : 知識以事實(fact)為單位儲存在圖資料庫
模式層在資料層之上,是知識圖譜的核心。在模式層儲存的是經過提煉的知識,通常採用本體庫來管理知識圖譜的模式層藉助本體庫對公理、規則和約束條件的支援能力來規範實體、關係以及實體的 型別和屬性等物件之間的聯絡.本體庫在知識圖譜 中的地位相當於知識庫的模具,擁有本體庫的知識庫冗餘知識較少
知識圖譜的構建過程是從原始資料出發,採用一系列自動或半自動的技術手段,從原始資料中提取出知識要素(即事實),並將其存入知識庫的資料層和模式層的過程.
這是一個迭代更新的過程,根據知識獲取的邏輯,每一輪迭代包含3個階段:資訊抽取、知識融合以及知識加工
知識圖譜有自頂向下和自底向上2種構建方式.
- 所謂自頂向下構建是指藉助百科類網站等結構化資料來源,從高質量資料中提取本體和模式資訊,加 入到知識庫中;
- 所謂自底向上構建,則是藉助一定的技術手段,從公開採集的資料中提取出資源模式,選 擇其中置信度較高的新模式,經人工稽核之後,加入到知識庫中
2 知識圖譜的構建技術
採用自底向上的方式構建知識 圖譜的過程是一個迭代更新的過程,每一輪更新包 括3個步驟:
1)資訊抽取,即從各種型別的資料來源中 提取出實體(概念)、屬性以及實體間的相互關係,在 此基礎上形成本體化的知識表達;
2)知識融合,在獲 得新知識之後,需要對其進行整合,以消除矛盾和歧 義,比如某些實體可能有多種表達,某個特定稱謂也 許對應於多個不同的實體等;
3)知識加工,對於經過 融合的新知識,需要經過質量評估之後(部分需要人 工參與甄別),才能將合格的部分加入到知識庫中, 以確保知識庫的質量.新增資料之後,可以進行知識 推理、拓展現有知識、得到新知識.
2.1 資訊抽取
關鍵問題是如何從異構資料來源中自動抽取資訊得到候選知識單元
涉及的關鍵技術包括:實體抽取、關係抽取和屬性抽取
2.1.1 實體抽取
實體抽取,也稱為命名實體識別(named entity recognition,NER),是指從文字資料集中自動識別出命名實體.實體抽取的質量(準確率和召回率)對 後續的知識獲取效率和質量影響極大,因此是資訊 抽取中最為基礎和關鍵的部分
2.1.2 關係抽取
文字語料經過實體抽取,得到的是一系列離散 的命名實體,為了得到語義資訊,還需要從相關語料中提取出實體之間的關聯關係,通過關係將實體(概念)聯絡起來,才能夠形成網狀的知識結構.研究關係抽取技術的目的,就是解決如何從文字語料中抽取實體間的關係這一基本問題.
2.1.3 屬性抽取
屬性抽取的目標是從不同資訊源中採集特定實體的屬性資訊.例如針對某個公眾人物,可以從網路公開資訊中得到其暱稱、生日、國籍、教育背景等資訊.屬性抽取技術能夠從多種資料來源中彙集這些資訊,實現對實體屬性的完整勾畫
2.2 知識融合
通過資訊抽取,實現了從非結構化和半結構化資料中獲取實體、關係以及實體屬性資訊的目標,然而,這些結果中可能包含大量的冗餘和錯誤資訊,資料之間的關係也是扁平化的,缺乏層次性和邏輯性, 因此有必要對其進行清理和整合.知識融合包括 2 部分內容:實體連結和知識合併.通過知識融合,可以消除概念的歧義,剔除冗餘和錯誤概念,從而確保 知識的質量.
2.2.1 實體連結
實體連結(entity linking)是指對於從文字中抽 取得到的實體物件,將其連結到知識庫中對應的正確實體物件的操作.
實體連結的基本思想是首先根據給定的實體指稱項,從知識庫中選出一組候選實體物件,然後通過相似度計算將指稱項鍊接到正確的實體物件
實體連結的一般流程是:
1)從文字中通過實體 抽取得到實體指稱項;
2)進行實體消歧和共指消解, 判斷知識庫中的同名實體與之是否代表不同的含義 以及知識庫中是否存在其他命名實體與之表示相同 的含義;
3)在確認知識庫中對應的正確實體物件之 後,將該實體指稱項鍊接到知識庫中對應實體
2.2.1.1 實體消歧
實體消歧(entity disambiguation)是專門用於解決同名實體產生歧義問題的技術.在實際語言環 境中,經常會遇到某個實體指稱項對應於多個命名 實體物件的問題,例如“李娜”這個名詞(指稱項)可以對應於作為歌手的李娜這個實體,也可以對應於 作為網球運動員的李娜這個實體,通過實體消歧,就 可以根據當前的語境,準確建立實體連結.實體消歧 主要採用聚類法.
2.2.1.2 共指消解
共指消解(entity resolution)技術主要用於解決多個指稱項對應於同一實體物件的問題.例如在 一篇新聞稿中,“Barack Obama”,“president Obama”, “ the president ”等指稱項可能指向的是同一實體對 象,其中的許多代詞如“he”,“him”等,也可能指向 該實體物件.利用共指消解技術,可以將這些指稱項 關聯(合併)到正確的實體物件.由於該問題在資訊 檢索和自然語言處理等領域具有特殊的重要性,吸 引了大量的研究努力,因此學術界對該問題有多種 不同 的 表 述,典 型 的 包 括:對 象 對 齊 (object alignment)、實體匹配(entity matching)以及實體同 義(entity synonyms)
2.2.2 知識合併
在構建知識圖譜時,可以從第三方知識庫產品 或已有結構化資料獲取知識輸入
2.2.2.1 合併外部知識庫
將外部知識庫融合到本地知識庫需要處理2個層面的問題.
- 資料層的融合,包括實體的指稱、屬性、關係以及所屬類別等,主要的問題是如何避免例項以及關係的衝突問題,造成不必要的冗餘;
- 通過模式層的融合,將新得到的本體融入已有的本體庫中.
2.2.2.2 合併關係資料庫
在知識圖譜構建過程中,一個重要的高質量知識來源是企業或者機構自己的關係資料庫.為了將這些結構化的歷史資料融入到知識圖譜中,可以採用資源描述框架(RDF)作為資料模型.業界和學術界將這一資料轉換過程形象地稱為RDB2RDF,其 實質就是將關係資料庫的資料換成RDF的三元組資料
根據 W3C 的調查報告顯示,當前已經出現了大量RDB2RDF的開源工具 (如 Triplify,D2RServer, OpenLink Virtuoso, SparqlMap等),然而由於缺少標準規範,使得這些工具的推廣應用受到極大制約
.為此,W3C於 2012年推出了2種對映語言標準:Direct Mapping (A direct mapping of relational data to RDF)和 R2RML (RDB to RDF mapping language).
其中,Direct Mapping採用直接對映的方式,將關係資料庫表結構和資料直接輸出為RDF圖,在RDF圖中所用到的用於表示類和謂 詞的術語與關係資料庫中的表名和欄位名保持一致.
而R2RML則具有較高的靈活性和可定製性,允許為給定的資料庫結構定製詞彙表,可以將關係資料庫通過R2RML對映為RDF資料集,其中所用的術語如類的名稱,謂詞均來自定義詞彙表
2.3 知識加工
通過資訊抽取,可以從原始語料中提取出實體、 關係與屬性等知識要素.再經過知識融合,可以消除實體指稱項與實體物件之間的歧義,得到一系列基本的事實表達.然而,事實本身並不等於知識,要想最終獲得結構化、網路化的知識體系,還需要經歷知 識加工的過程.知識加工主要包括3方面內容:本體構建、知識推理和質量評估.
2.3.1 本體構建
本體(ontology)是對概念進行建模的規範,是 描述客觀世界的抽象模型,以形式化方式對概念及其之間的聯絡給出明確定義.本體的最大特點在於它是共享的,本體中反映的知識是一種明確定義的共識.雖然在不同時代和領域,學者們對本體曾經給出過不同的定義,但這些定義的內涵是一致的,即: 本體是同一領域內的不同主體之間進行交流的語義基礎. 本體是樹狀結構,相鄰層次的節點(概念)之間具有嚴格的“IsA”關係,這種單純的關係有助於知識推理,但卻不利於表達概念的多樣性.在知識圖譜中,本體位於模式層,用於描述概念層次體系是知識庫中知識的概念模板
2.3.2 知識推理
知識推理是指從知識庫中已有的實體關係資料出發,經過計算機推理,建立實體間的新關聯,從而拓展和豐富知識網路.知識推理是知識圖譜構建的重要手段和關鍵環節,通過知識推理,能夠從現有知 識中發現新的知識.例如已知(乾隆,父親,雍正)和 (雍正,父親,康熙),可以得到(乾隆,祖父,康熙)或 (康熙,孫子,乾隆).知識推理的物件並不侷限於實體間的關係,也可以是實體的屬性值、本體的概念層次關係等.例如已知某實體的生日屬性,可以通過推理得到該實體的年齡屬性.根據本體庫中的概念繼 承關係,也可以進行概念推理,例如已知(老虎,科, 貓科)和(貓科,目,食肉目),可以推出(老虎,目,食肉目).
2.3.3 質量評估
引入質量評估的意義在於:可以對知識的可信度進行量化,通過捨棄置信度較低的知識, 可以保障知識庫的質量
2.3.4 知識更新
從邏輯上看,知識庫的更新包括概念層的更新和資料層的更新.概念層的更新是指新增資料後獲得了新的概念,需要自動將新的概念新增到知識庫的概念層中.資料層的更新主要是新增或更新實體、 關係和屬性值,對資料層進行更新需要考慮資料來源 的可靠性、資料的一致性(是否存在矛盾或冗餘等問 題)等多方面因素.當前流行的方法是選擇百科類網 站等可靠資料來源,並選擇在各資料來源中出現頻率高 的事實和屬性加入知識庫.知識的更新也可以採用 眾包的模式(如Freebase),而對於概念層的更新,則 需要藉助專業團隊進行人工稽核.
知識圖譜的內容更新有2種方式:資料驅動下的全面更新和增量更新.所謂全面更新是指以更新後的全部資料為輸入,從零開始構建知識圖譜.這種方式比較簡單,但資源消耗大,而且需要耗費大量人力資源進行系統維護;而增量更新,則是以當前新增資料為輸入,向現有知識圖譜中新增新增知識.這種方式資源消耗小,但目前仍需要大量人工干預(定義規則等),因此實施起來十分困難
3 知識圖譜的應用
在智慧語義搜尋應用中,當用戶發起查詢時,搜尋引擎會藉助知識圖譜的幫助對使用者查詢的關鍵字進行解析和推理,進而將其對映到知識圖譜中的一 個或一組概念之上,然後根據知識圖譜中的概念層 次結構,向用戶返回圖形化的知識結構(其中包含指向資源頁面的超連結資訊),這就是我們在谷歌和百度的搜尋結果中看到的知識卡片.
在深度問答應用中,系統同樣會首先在知識圖譜的幫助下對使用者使用自然語言提出的問題進行語義分析和語法分析,進而將其轉化成結構化形式的查詢語句,然後在知識圖譜中查詢答案.對知識圖譜 的查詢通常採用基於圖的查詢語句(如SPARQL), 在查詢過程中,通常會基於知識圖譜對查詢語句進 行多次等價變換.例如,如果使用者提問:“如何判斷是 否感染了埃博拉病毒?”,則該查詢有可能被等價變 換成“感染埃博拉病毒的症狀有哪些?”,然後再進行 推理變換,最終形成等價的三元組查詢語句,如(埃博拉,症狀,?)和(埃博拉,徵兆,?)等,據此進行知識 圖譜查詢得到答案.深度問答應用經常會遇到知識 庫中沒有現成答案的情況,對此可以採用知識推理 技術給出答案.如果由於知識庫不完善而無法通過推理解答使用者的問題,深度問答系統 還可以利用搜索引擎向用戶反饋搜尋結果,同時根 據搜尋的結果更新知識庫,從而為回答後續的提問 提前做出準備.