作者 | 維克多
知識圖譜蘊含豐富的人類先驗知識,具有重要的學術價值和廣泛的應用前景。知識圖譜推理作為知識圖譜領域的核心技術,能夠極大地擴展現(xiàn)有知識的邊界,有力地輔助人類進行智能決策。2021年12月17日,中國科學技術大學教授,博士生導師,國家優(yōu)青王杰在 CNCC 2021 “知識為意,圖譜為形--基于圖機器學習的知識推理”專題論壇上做了《基于表示學習的知識圖譜推理技術——從簡單推理到復雜推理》的報告。在報告中,王杰結合知識圖譜近年來的研究趨勢與應用場景,聚焦從單一圖譜推理到聯(lián)合外部信息推理、從結構化輸入到自然語言輸入的層次遞進的推理場景,介紹基于表示學習的知識圖譜推理方向取得的進展。最后,王杰展望了知識圖譜推理技術未來發(fā)展所面臨的若干挑戰(zhàn)和機遇。例如,他提到:“當前廣泛使用的數(shù)據(jù)集無法準確地反映真實場景模型,現(xiàn)在的模型測試時基本采用封閉世界假設,不符合真實應用場景,會導致本該正確的結果被判斷為錯誤……現(xiàn)有知識圖譜只涉及文本信息,未來的發(fā)展趨勢是擴展到多模態(tài)信息。多模態(tài)知識圖譜依賴于多種模態(tài)數(shù)據(jù)的收集,其中關鍵問題是……”今天的演講題目是《基于表示學習的知識圖譜推理技術——從簡單推理到復雜推理》,分為背景介紹、簡單推理、復雜推理、未來展望等四個部分。知識圖譜的本質是大規(guī)模的語義網(wǎng)絡知識庫,表示對客觀世界實體的描述。如上圖左下角人物知識圖所示,每一個節(jié)點代表一個人物,邊代表人物之間的關系。而在計算機中,知識圖譜以三元組的形式存儲,包含頭實體、關系、尾實體。我們總希望得到大型的知識圖譜,因為在規(guī)模效應的作用下,會給應用效果帶來質變。知識圖譜可以分為兩類,一類是通用知識圖譜,面向通用領域的百科知識庫,另一類是領域知識圖譜,面向特定領域的行業(yè)知識庫。通用知識圖譜覆蓋面較廣,但所包含的知識層級體系較淺、粒度較粗、精度不高,領域知識圖譜則相反,其覆蓋面較窄,只面向某個特定領域,包含的知識深度和精度往往有更高的標準和質量。知識圖譜最早可以追溯到60年代的專家系統(tǒng),當時主要是依靠專家知識,通過人工進行構建,所以成本較高。經(jīng)過多年發(fā)展,知識圖譜逐漸轉向自動化構建,1998年提出的語義網(wǎng)絡和2006年提出的鏈接數(shù)據(jù)是“自動化”發(fā)展的關鍵節(jié)點。2012年,谷歌發(fā)布知識圖譜,并將其應用到搜索引擎當中。這時knowledge graph詞匯第一次被明確提出。目前,谷歌、百度等構建的知識圖譜已經(jīng)包含超千億級別的三元組,其背后所依賴的是大數(shù)據(jù)驅動下的自動知識獲取技術。知識圖譜屬于典型的交叉技術領域,包含眾多的技術要素:存儲、查詢、構建、獲取、推理、融合、問答、分析等等幾個方面。在眾多要素中,推理是核心的技術和任務。一方面,知識圖譜的存儲、查詢、構建與獲取,不僅僅是為了能夠描述客觀世界、總結人類先驗知識,更重要是為知識圖譜推理服務。另一方面,知識圖譜中的技術和任務都包含深度語義理解。例如融合技術中,需要利用推理技術對齊不同知識圖譜的實體;問答技術中需要推理技術拓展問句的語義;分析技術中需要推理技術幫助進一步挖掘圖數(shù)據(jù)中的信息。因此,凡包含深度語義理解的任務都涉及推理的過程。而知識圖譜的推理目標是利用知識圖譜中已經(jīng)存在的關系或事實推斷未知的關系和事實。換句話說,就是由已知的一個或者幾個判斷,推斷另一個未知的判斷。知識圖譜的推理有兩種形式:基于規(guī)則的推理、基于表示學習的推理。基于規(guī)則的推理是指基于本體邏輯的演繹推理,例如若A屬于B,B屬于C,則A屬于C。這種推理雖然可解釋性強,精度高,但需要事先寫清楚規(guī)則,所以在實際應用中不夠靈活。當涉及大規(guī)模數(shù)據(jù)時,可以使用統(tǒng)計方法總結歸納出規(guī)則,這也稱為歸納式的推理。基于表示學習的推理需要將實體以及實體之間的關系映射到向量空間,然后通過向量空間的操作進行建模邏輯關系。這種方式易于捕獲隱含的信息,但卻丟失了可解釋性。列舉一個基于表示學習的推理的工作原理。上圖中存在兩個三元組:<中國,首都,北京>;<美國,首都,華盛頓>。將其映射到向量空間之后會發(fā)現(xiàn),中國與北京這兩個向量之間的差值,接近美國與華盛頓之間的差值。然后定義一個函數(shù),希望三元組映射到向量空間之后,頭實體+關系的向量表示盡可能接近尾實體的向量表示。如上圖中的f(h,r,t)函數(shù),既可以是Loss函數(shù)也可以是打分函數(shù)。打分函數(shù)某種程度上是三元組為真的置信度,如上圖右下角的例子所示,根據(jù)打分值(置信度)確定“英國的首都是倫敦”。進一步,根據(jù)輸入,基于表示學習的知識圖譜推理分為簡單推理和復雜推理兩類。簡單推理類似鏈接預測,根據(jù)知識圖譜中已有實體和關系推理兩個給定實體的關系,其難點在于理解已有實體和關系的語義。復雜推理相對于簡單推理,其輸入更加復雜。根據(jù)輸入的不同,難點分別在于:- 建模關系間的語義結構,給定實體關系未在訓練模型中出現(xiàn)過。
- 建模非結構化問題,輸入數(shù)據(jù)包含人類口頭語等。
直觀理解簡單推理,例如有一個頭實體和一個尾實體,然后希望補齊與之對應關系,從而最大可能讓三元組成立。還是以人物知識圖譜為例,已知(訓練數(shù)據(jù))“蔣英的丈夫是錢學森,蔣英的父親是蔣百里”,請問錢學森和蔣百里之間是什么關系?為了較好解決這一鏈接預測問題,需要對知識圖譜中實體之間的關鍵性質進行建模。方式有三:語義近似、語義分層、語義融合。例如老虎是哺乳動物,老虎和獅子語義相近,就可以推理出獅子是哺乳動物;獅子屬于貓科動物,貓科動物屬于哺乳動物,根據(jù)語義分層現(xiàn)象可以推理出獅子是哺乳動物;語義融合是指結合知識圖譜以及非知識圖譜的非結構化文本描述,從而捕捉實體的潛在語義。語義近似
對于語義近似,目前的經(jīng)典方法是“基于張量分解的知識圖譜嵌入模型”,例如CP、RESCAL、ComplEx等等,此類方法的共同點是三元組為真的概率由內積定義。其存在的問題由上(右)圖所示,在向量空間中相近語義的實體具有不相近的表示。基于上述缺點,我們提出“面向張量分解的知識圖譜嵌入模型的正則項”,其思想在于讓語義相近的實體表示內積盡可能的大,距離盡可能的小。如上(左)圖所示,除了希望尾實體的向量盡可能落在黃色的虛線上,也希望尾實體的向量表示盡可能地落在橢圓(紅色區(qū)域)里。如何做到?添加基于對偶距離模型的正則項,用向量差的2范數(shù)表示原始內積。將“2范數(shù)”展開之后,會發(fā)現(xiàn)這一表達式也包含了原始內積,以及后面兩項2范數(shù)的平方。最后會得到對偶誘導正則項:由原來的內積+頭實體2范數(shù)+尾實體2范數(shù)。通過實驗發(fā)現(xiàn),“對偶誘導正則項”能夠有效促使相近語義實體具有相近表示,也可以顯著提升現(xiàn)有模型的推理性能。此外,它的優(yōu)點還在于給出了張量核2-范數(shù)的一個上界以及矩陣分解問題中跡范數(shù)正則的張量推廣。語義分層
語義分層是廣泛存在的,例如“棕櫚樹是樹”,“北京位于中國”。其中樹是更高層級,棕櫚樹是更低層級;中國是更高層級,北京是更低層級。如果按語義對實體進行分類,可以分為不同語義層級的實體,例如“哺乳動物”和“狗”,“移動”和“奔跑”;相同語義層級的實體,“玫瑰”和“牡丹”,“貨車”和“客車”。現(xiàn)有建模語義層級有兩個傳統(tǒng)工作,利用外部層級信息輔助建模,在一些特定的數(shù)據(jù)集里,實體和關系本身是帶有層級信息的。這種方法可以幫助理解實體的語義,但是并不能很好地區(qū)分不同層級的實體,最關鍵的是,并不是所有的數(shù)據(jù)集中都有額外的分層信息。還有一類方法主要考慮關系的語義層級,也就是將一個關系抽象成若干不同層級的子關系的復合,從而達到對語義層級的建模,但是這類方法需要對關系表示進行額外的聚類操作,其缺點在于無法全自動地從知識圖譜中學到具有層級性質的語義信息。為了建模知識圖譜的語義層級,可以將語義層級建模成樹結構,如上(左)圖所示,樹結構中節(jié)點的深度,能夠反映層級信息:越靠近根節(jié)點的節(jié)點,具有越高的層級;而具有相同深度的不同節(jié)點,具有相同的層級。進一步,可以用極坐標建模樹結構。極坐標由兩部分組成,半徑坐標反映點到原點的距離;角坐標可以用來區(qū)分同心圓上的不同位置。因此可以將點到原點的距離視作到根節(jié)點的距離,半徑坐標和角坐標就可以分別對應不同層級和相同層級的實體??偠灾?,將實體映射到極坐標系中,利用極坐標建模語義層級,可以利用模長( Modulus)和角度( Phase)兩部分進行建模 。為了建模不同實體之間的關系,不同實體模長之間的關系可以建模成伸縮變換,也就是頭實體的模長乘以關系變換(r)得到尾實體的模長,然后將角度之間的關系建模為旋轉變化,也即頭實體的角度根據(jù)不同的關系旋轉不同的角度后得到尾實體的角度。此類建模方式可以定義為上(右)圖中的距離函數(shù)。經(jīng)過實驗,此類方法能夠有效區(qū)分實體的語義層級。例如上圖的幾個例子,“CS與AI不同層級”、“ask與inquire相同層級”、“D與C不同層級”都能更清晰地進行分割。此外,頭尾實體層級相同,實驗證明可以利用角度進行區(qū)分。而在單步推理測試數(shù)據(jù)集上,此類方法已經(jīng)在推理性能上顯著超越其他方法,也被同行評價為“基于幾何的方法中表現(xiàn)最佳的模型”。語義融合
語義融合需要將圖譜與文本描述進行結合,既涉及結構化數(shù)據(jù)也涉及非結構化數(shù)據(jù),目前該領域還在探索。現(xiàn)有的趨勢是從知識嵌入向知識注入發(fā)展,前者是指傳統(tǒng)的KGE模型,僅從結構化的知識圖譜中獲得知識,體量龐大的文本數(shù)據(jù)不能被充分利用。而知識注入指KGE模型與預訓練模型協(xié)同訓練,能夠有效處理非結構化的數(shù)據(jù)。但缺陷在于,會由于預訓練模型巨大的傳輸量而帶來高額的計算成本,甚至成本太大而無法協(xié)同訓練。為了解決此問題,我們提出Hetero- Learner:融合異質知識的高效率學習器,將圖譜結構和文本描述嵌入成向量,并進行向量的有機拼接。經(jīng)過實驗表明,僅以同類模型 KEPLER3.6%的參數(shù)量取得 Wikidata5M上的SOTA結果。為了進一步提升性能,受人類認知推理的啟發(fā),我們提出Hetero- Reasoner。該模型方法“模擬”人類,首先根據(jù)推理對象的含義以及推理對象之間的聯(lián)系做出判斷和推理((對應Knowledge Learner)),然后從現(xiàn)象中歸納抽象的邏輯規(guī)則來輔助推理(對應Rule Miner),最后會回憶和反芻已有的知識來加強對推理和判斷的信心(對應Knowledge Distiller)。整體而言,該模型包括異質學習器、規(guī)則挖掘器和知識蒸餾器三個模塊,能有效地結合有結構的知識圖譜數(shù)據(jù)和無結構的文本數(shù)據(jù)進行推理。最終,在最近一次KDD CUP 2021 大規(guī)模知識圖譜比賽的“Link Prediction”賽道榮獲第三名,成為前三名中唯一一支成員均來自高校的隊伍。復雜推理主要集中在歸納式推理、多步推理、自然語言查詢三方面的工作。歸納式的推理和簡單推理有類似之處,都是進行鏈接預測的任務,但是歸納式推理測試數(shù)據(jù)集的實體和訓練數(shù)據(jù)集的實體不重合,因此難點在于如何將訓練數(shù)據(jù)集的知識遷移或泛化至測試數(shù)據(jù)集。歸納式推理的核心在于學習關系的語義結構。例如上圖左邊(紅樓夢)和右邊的知識圖譜中的人物并不重合。但兩者關系確實存在一些共同的特點。例如兩者都符合母親、父親、丈夫關系模式,都可以將其提取與應用。此類建模方式的經(jīng)典方法是基于規(guī)則學習的歸納式推理,這是在知識圖譜統(tǒng)計、歸納常出現(xiàn)的關系結構。我們設計了另一種歸納模式,即首先將原始圖譜的關系變?yōu)楣?jié)點,然后生成新的圖譜,其中關系和關系之間的邊代表兩個相鄰關系的連接模式。然后用圖神經(jīng)網(wǎng)絡訓練以關系為節(jié)點的圖,從而找到相關特性。如上圖所示,此方法在歸納推理性能上顯著超其他方法,相對于現(xiàn)有的方法提升都在5個點甚至10個點左右。多步推理
復雜結構化問題的輸入對應的復雜推理形式是多步推理。例如,對于查詢任務“列出安徽省內為211但非985高校的校長”,對于這一任務,可以通過傳統(tǒng)構建計算圖方法進行解決,但會遇到結構多樣、與或非邏輯運算等問題,從而帶來非常高的計算復雜度。再舉例子:在知識圖譜中推理得到中國東部省份的高校,隨著推理步驟的進行,實體的數(shù)目會從中國節(jié)點開始,呈指數(shù)級上升。為了解決這一問題,我們提出基于表示學習的方法,在適當?shù)南蛄靠臻g進行推理。基于表示學習的多步推理有兩個關鍵的步驟。第一,定義向量空間,第二,在向量空間中定義推理操作。具體而言,首先將實體和實體的集合映射到向量空間,實體用幾何圖形或者概率分布進行表示,然后在向量空間中通過相似度比較得到答案,從而避免巨大的計算開銷;之后,將推理操作定義為實體集合之間的變換,例如“與”對應實體集合的交;“或”對應實體集合的并;“非”對應實體集合的補。因此,在基于表示學習的多步推理模型中,給定問題結構,通過邏輯操作得到最終問題表示,然后通過實體表示和問題表示之間的距離,得到最終問題的答案。一般而言,問題答案是實體的集合,問題表示本質上是實體集合的表示。所以如何表示問題的集合就變得非常重要。傳統(tǒng)方法是使用“盒子”表示查詢,它雖然可以進行邏輯運算,但難以建?!胺恰标P系。我們提出ConeE, 二維錐(Cone)構成的向量空間。將實體定義為幅角為0,將集合定義為幅角不為0。由于錐體具有封閉性,所以容易進行“與或非”操作。目前,此項工作在多跳推理性能上顯著超越其他方法。自然語言查詢
自然語言查詢的難點在建模非結構化問題,其任務針對給定的自然語言問題作為輸入(區(qū)別于結構化查詢),通過知識圖譜多跳推理的方式給出答案。但隨著問題跳數(shù)增加,候選實體數(shù)量呈指數(shù)增長?,F(xiàn)有的GNN方法通過子圖裁剪以降低候選實體數(shù)量但犧牲了正確答案的召回率。為此,受人類認知理論啟發(fā),我們提出兩階段方法。第一階段對應系統(tǒng)1(無意識、直覺的、快思考),快速篩選,通過query-answer語義匹配打分;第二階段對應系統(tǒng)2(有意識、邏輯的、慢思考),通過貝葉斯網(wǎng)絡,基于推理路徑的打分。在問題“John Derek 參演電影的編輯有哪些?”中,運用我們設計方法的結果如所示,留下的實體相對而言數(shù)量比較少,而且置信度較高。進一步實驗表明,我們的方法在多跳數(shù)據(jù)集上性能顯著超越之前的SOTA方法。在知識圖譜上進行推理,除了基于表示學習的方法之外,還有一種基于規(guī)則的方法。雖然基于表示學習相比規(guī)則推理的方法,可以更好地建模知識圖譜中的潛在語義信息,但在真實的應用場景中,規(guī)則推理往往更受歡迎。原因是:它的精度高,可解釋性強。因此,接下來,學術界的目標應該是使表示學習推理模型在真實場景下的性能與規(guī)則推理模型媲美。另一方面,學術界模型評測應更加全面高效,以指導模型的設計使之更契合真實場景的需求。下面我從數(shù)據(jù)集和評測指標兩方面進行討論。首先,當前廣泛使用的數(shù)據(jù)集無法準確地反映真實場景模型,現(xiàn)有的模型測試時基本采用封閉世界假設,即不在知識圖譜中的三元組都是錯誤的,這顯然不符合真實應用場景,因此會導致本該正確的結果被判斷為錯誤。所以,如何用“候選數(shù)據(jù)集”的性能客觀反映模型性能,需要進一步探索。再者,當前廣泛使用的評測指標無法全面評估模型的優(yōu)劣。例如,測試集中正確三元組的排名越高,模型在這些評測指標上的表現(xiàn)就越好。然而,這是不全面的。此外,在封閉世界假設下,一些本應性能較好的模型在這些指標下也可能會有較差的表現(xiàn)。現(xiàn)有知識圖譜只涉及文本信息,未來發(fā)展趨勢是擴展到多模態(tài)信息。多模態(tài)知識圖譜的構建,依賴于多種模態(tài)數(shù)據(jù)的收集,其中關鍵問題是:如何進行不同模態(tài)數(shù)據(jù)之間的對齊。此外,也需要高性能的數(shù)據(jù)庫,幫助存儲多模態(tài)數(shù)據(jù),目前這方面國內已經(jīng)有企業(yè)開始攻關。
知識圖譜和預訓練語言模型的結合也是接下來的發(fā)展趨勢。預訓練語言模型已經(jīng)比較成熟,但在涉及特定領域的知識或者常識時,表現(xiàn)并不令人滿意。如何利用知識圖譜增強預訓練語言模型,或者怎樣用預訓練語言模型幫助更好地在知識圖譜上進行推理,也是接下來需要重點關注的方向。最后,知識圖譜與對話場景的結合也是我所期待的。用時序知識圖譜表示對話狀態(tài),相比傳統(tǒng)鍵值對的結構,可以更完整地跟蹤表示對話的狀態(tài)以及變化。
雷峰網(wǎng)(公眾號:雷峰網(wǎng))雷峰網(wǎng)
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權禁止轉載。詳情見轉載須知。