0
| 本文作者: 我在思考中 | 2021-08-06 10:51 |

認知是人獲取和應用知識的過程,知識圖譜是人對客觀世界認知的表示。人工智能系統如何實現知識的表示和推理?
在2021年世界人工智能大會上,由AI TIME組織的“圖神經網絡與認知智能前沿技術論壇”中,清華大學計算機系教授李涓子圍繞“知識圖譜與認知推理”做了主題報告,從問答系統的角度解釋了AI如何實現認知推理。

圖1:報告題目
李涓子指出,目前人工智能雖然在很多簡單問答數據集的問答能力上已經可以和人類相媲美,但是對復雜問答的問答能力還任重而道遠。
究其原因,李涓子認為:復雜問題的答案往往需要進行多跳的推理。為此,李涓子團隊將知識驅動和數據驅動相結合,提出了可解釋認知推理框架:將提問對象表示為圖結構,將復雜問題解析為由基本函數組合而成的程序,以表示推理過程,在圖結構上使用注意力機制進行模塊推理,使得每個模塊的輸出可以被人類所理解。

圖 2:認知推理框架
以下是報告全文,AI科技評論做了不改變原意的整理。
認知 VS 知識

圖 3:本體
認知是人獲取并應用知識的過程,知識圖譜是人表示客觀世界認知的一種形式。如圖 3 所示,Ogden 和 Richard 在1923 年提出了經典的語義三角模型。該模型表明,人類可以通過符號建立起人在認知過程中形成的世界模型。在人類的知識系統中,人們將客觀世界事物的認識概化和抽象為概念「Concept」,建立起概念和事物、概念和概念之間的關系,能夠將客觀世界中的實體和腦海中的概念對應起來,從而通過概念來認識和理解世界。「Form」(符號/詞)指向「Referent」(指稱物/事物)的虛線代表了人類使用符號為客觀世界中事物賦予語義的過程(即通過詞激活概念,再通過概念反映客觀事物)。

圖 4:知識圖譜與本體
在2012 年,谷歌曾用「知識圖譜」表示語義網絡,這種圖結構的表示中包含概念、實體,也包含它們之間的關系。由于這種方法在知識表征簡單和具有知識的大規模性,在語義搜索中得到很好的應用。因此人工智能研究社區針對知識圖譜開展了大量的應用和研究工作。

圖 5:各種知識圖譜
例如,研究人員已經構建起了各種通用/專用知識圖譜,這些知識圖譜在語義搜索、推薦系統,問答系統等應用場景下發揮了很大的作用。
人工智能的發展趨勢

圖 6:人工智能研究簡介
人工智能研究者們的目標是研究和設計智能系統,讓這些系統能夠像人一樣具有感知、推理、思考,并做出規劃和決策的能力。并且通過「圖靈測試」來測試系統是否具有智能。目前,人工智能研究已經發展出了許多子領域,例如:知識表示和推理、機器學習、計算機視覺、自然語言處理、機器人等。其中,知識的表示和推理在人工智能研究中具有很重要的地位。

圖 7:人工智能與知識
目前,我們正處在第三代人工智能的浪潮。第一代人工智能的標志是“符號主義”,圖靈獎獲得者西蒙和紐威爾提出實現智能的充分必要條件是構造出一個物理的符號系統。費根鮑姆也因為建立了以領域知識庫和推理構成的專家系統獲得圖靈獎。這一時沿著這個思路,研究者們開發出了一系列專家系統。這一時期,研究者認為實現智能系統不僅需要像人一樣解決問題的能力,還應該具有人們所具有的知識。
第二代人工智能的標志是當下流行的深度學習。深度學習作為連接主義的代表性方法,嘗試洞察以神經元和神經元之間的連接結構,從而獲得研究智能的啟發。第二代人工智能的關鍵之處在于利用大數據和強大算力和機器學習算法,即「數據+算法+算力」。目前,對深度神經網絡的大規模預訓練也在很多領域取得了很好的效果。
而第三代人工智能,需要在數據、算法、算力之外再向人工智能系統中引入知識。

圖 8:知識驅動的人工智能
以IBM Watson Deep QA和目前GPT—3為典型代表,說明第一代和第二代人工智能系統的優勢和存在問題。
IBM Watson 的 Deep QA 是符號主義的代表性應用之一。該問答系統在Jorpardy節目上戰勝了人類冠軍選手。系統有三個特點:(1)使用了大規模知識和非結構化資源(2)提出了一種有效融合問題理解、答案檢索、論據查找的問答框架(3)通過機器學習算法對查找到的上百個答案進行推理和融合。
該框架也存在不足之處。首先知識是稀疏的,系統中使用了維基百科等知識圖譜的結構化知識,然而最終的問題與知識圖譜直接匹配上答案只有約 2%。此外,該系統也缺少對細粒度知識的表達,導致知識圖譜和深度語義理解相互分裂開來。而我們認為,知識圖譜和深度語義理解應該被結合起來。

圖 9:數據驅動的人工智能(自然語言處理)
第二代深度學習的人工智能發展的代表當屬基于深度學習的大規模預訓練模型(例如,GPT-3),其在下游任務中無需經過特殊的訓練,就可以獲得很好地性能。例如,北京智源人工智能研究院發布了萬億參數的大規模預訓練模型——「悟道」,它在文本生成、寫詩等十余項任務上的性能已經超過了現在的 SOTA 模型。
當然,這種大規模預訓練模型仍然不夠智能。如圖 9 右下角所示,GPT-3的 在問答任務中,有時答非所問,有時會給出存在很明顯違背常識的答案。這說明,盡管大規模訓練模型建立了數據之間復雜的結構關系,但并不一定具有了認知能力。

圖 10:人工智能的未來
近年來,許多著名的學者都提出了對人工智能未來發展趨勢的構想。例如,有「深度學習」三駕馬車之稱的Hinton、Bengio 和 LeCun 提出,人工智能將會結合表征學習和復雜的推理。我國人工智能泰斗、清華大學張鈸院士指出,建立可解釋、魯棒的人工智能論和方法是十分必要的。

圖 11:三空間融合法
張鈸院士在《信息科學》期刊中給出了實現第三代人工智能的一種可能的理論框架——三空間法。其中,連續特征空間代表人的感知系統,離散語義符號空間代表認知系統,二者之間還存在一種連續的準語義空間。我們可以通過上升(raising)操作將連續空間中的特征表征遷移到準語義空間中,進而通過抽象操作將準語義空間中的表征遷移到離散語義符號空間中。反過來,我們可以通過嵌入、投影,將離散語義符號空間中的表征遷移到連續特征空間。這樣一來,我們就構建了一種感知、認知相結合的通道。

圖 12:系統 2 深度學習—認知
Bengio 等學者在今年6月的智源大會上提出,深度學習的發展正在經歷從系統1的深度學習到系統2的深度學習,要想實現認知計算,我們就要實現系統 2 的深度學習。諾貝爾經濟學獎獲得者丹尼爾卡尼曼提出,在人的認知系統中存在系統 1 和系統 2,其中系統 2 進行較慢的邏輯化、序列化的推理。Bengio 介紹了他們基于該思想在因果理解、分布外數據(OOD)泛化等方面開展的一系列工作。

圖 12:千腦理論
在美國工程院院士 Jeff Hawkins在北京智源大會上也介紹了他受腦皮層結構和工作機制的啟發提出的「千腦理論」,該理論可以將數字與符號相結合。該理論指出,人類大腦皮層的底層參數非常多,非常不穩定,存在稀疏性。人類的樹突結構具有連續的自監督學習能力,可以自動地不斷進行各種預測,并在預測任務中去學習各種模式。
Jeff Hawkins 還提到:如今的深度學習系統中并沒有恒定的知識表征,而人類的大腦中存在「參考系」的恒定表征(參考系處于大腦皮層的上層)。另外,由于人類大腦皮層中存在皮質柱結構,上千個皮質柱為對象構建出相互關聯的模型,才能建立起世界模型。
可解釋的認知推理

圖 13:問答系統
我們團隊從圖靈測試出發,嘗試在問答任務中探索可解釋的認知推理技術。換句話說,問答系統用戶提問的對象可能是圖片、文本,也可能是知識圖譜,可解釋的問答系統都能給出準確的答案。
目前,雖然現有的問答系統在簡單問答任務中,在很多數據集上達到了與人類相當的水平,但是在復雜問答任務中,和人類還相差甚遠。

圖 14:復雜問答和可解釋推理
原因是:復雜問題的答案,不僅需要多跳的推理,可能還需要需要進行計數、比較,甚至是邏輯運算的操作。如圖14 所示,當我們問到「兩個樂隊是否具有相同的人數」時。我們首先需要識別出兩個樂隊,明確每個樂隊有哪些成員,然后分別對兩個樂隊的成員進行計數。最后對計數結果進行比較。上述步驟其實也是一個可解釋的推理過程。

圖 15:相關工作
目前,針對復雜問答任務,研究者已經嘗試用語義解析、圖神經網絡、多跳查詢等方法應對。然而,這些方法處理的知識的類型非常有限。例如,多步查詢方法大多處理的查詢是「鍵值對」的知識形式,圖神經網絡主要面向實體和實體關系類型的知識,對于其它類型的知識(例如,計數、屬性值)往往束手無策。更重要的是,上述方法缺乏可解釋性,無法解釋得到推理結果的過程。

圖 16:主要思路
為此,我們提出了基于圖的可解釋認知推理框架。框架以圖結構數據為基礎,將邏輯表達用作對復雜問題的分析過程,從而表示成顯式的推理路徑。注意“圖結構既可以是文本中的實體或實體之間的關系的表示的圖結構,可以是圖片的場景圖的圖結構,也可以是知識圖譜的圖結構。

在認知推理框架中,我們可以將提問的對象描述為圖的結構化數據,然后,在理解問題的過程中,將問題轉化為模塊化的描述。其中模塊化過程是一個可編程的函數組合,可以把它分解為圖上的最小粒度的操作函數序列;推理過程可以通過神經網絡實現,我們為每一個元函數構建了對應的神經模塊網絡。上述每一個過程都可以展示出來,這意味著能夠解釋推理過程,從而輸出相應的答案。
針對場景圖的可解釋顯式視覺推理

圖 18:視覺問答
基于上述框架,我們研究了視覺問答,即在圖片的場景圖上進行推理問答。視覺問答模型的輸入為圖片;問題為前文所述的復雜形式的自然語言問題;目標是要求問答系統直接給出準確的答案。

圖 19:可解釋的顯式神經模塊網絡
如圖 19 所示,我們可以通過場景圖表征一張圖片。可以利用現有的已生成的場景圖,也可以首先感知物體,進而構建場景圖;對于用戶提出的問題而言,通過對問題進行予以解析得到函數序列的表征;然后,在推理過程中將各個神經模塊網絡應用于場景圖。

圖 20:場景圖
這一視覺問答模型既可以用已有的場景圖作為輸入,也可以動態地通過目標檢測補全場景圖。

圖 21:元模塊
在此基礎之上,我們設計了四種元函數,從而實現神經模塊網絡來進行推理,每一個元函數都對應一個神經模塊網絡。整個程序可以由神經模塊網絡組合而來。

圖 22:CLEVR 數據集實驗結果
模型效果如何?在 CLEVR 數據集上,模型在相較于現有方法大大降低參數量的前提條件下,達到了 100% 的精度。如圖 22 右側所示,亮點代表了每一步執行的結果,我們的方法可以有效地得出推理過程的可解釋可視化結果。

圖 23:VQA 數據集
不僅是CLEVR 數據集,我們的模型在真實的 VQA 數據集上比現有的最好模型,在準確率上也高出了三個百分點。
面向復雜的基于知識的問答的可解釋編程

圖 24:基于知識的問答
我們也將該框架應用到了基于知識的問答(KBQA)任務中。目的是通過可編程、可解釋的程序來表示推理過程。該程序的輸入為知識圖譜和復雜問題,輸出為所需要的答案。例如,我們問「姚明和Vanessa Laine Bryant的配偶誰更高?」。對于這一個復雜問題,我們希望根據知識圖譜得到答案:「姚明」。

圖 25:現有的 KBQA 數據集
目前現有的大多數 KBQA 數據集的規模有限,而且問題中多是僅僅考慮關系信息,忽略了屬性信息等其他類型的知識,缺少需要復雜邏輯推理的問答。為此,我們提出了 KQA Pro 數據集,該數據集包含近 12 萬個經過篩選的高質量問題。

圖 26:主要思路
目前大多數與 KBQA 相關的研究都會把問題表示 SPARQL查詢。我們在認知推理框架的基礎上將其與對應的 SPARQL 建立聯系,并表示為函數的編程問題,通過組合元函數的操作建立推理過程。如圖 26 所示,如果我們要回答兩個人誰更高的問題,我們實際上會執行一個 SELECT 語句,首先查找到兩人的高度,然后對高度的數值進行比較。
在我們建立的數據集中,我們考慮了 9 種問題類型,并為知識庫的各種操作定義了 27 個基本函數,可以回答包含邏輯操作、比較等類型的問題,也可以回答「Yes orNo」的選擇問題。

圖 27:KQA Pro 數據集的構建
在構建 KQA Pro 數據集的過程中,最終核心的部分是定義組合性的基本函數,以及通過組合這些基本函數構建推理的程序。我們把該過程稱為可編程的函數組合。在構造過程中,我們首先基于知識庫的模板生成大規模的問題,然后通過眾包重寫問題,再請其他人對重寫的問題進行驗證。

圖 28:知識抽取
在數據集的構造過程中,不失通用性,我們使用了常用的 FB15K 數據集中的對象關系屬性。在FB15K的基礎之上擴展了各種更加詳細的屬性,將其與 WikiData 進行關聯,并加入一些有歧義的實體。最終,得到的KQA Pro數據集包含了 700 多種概念,1 萬多個實體,實體具有 300 多種關系型的屬性,800 多種數值型、字符串型屬性,以及上百萬個三元組。

圖 29:問題生成
在生成問題的過程中,我們需要解決兩個問題:(1)保證問題的復雜性和多樣性(2)明確提出的問題,定位到對應的答案。具體而言,在生成問題時,通過在知識圖譜上進行采樣的方式,先確定準確答案所在位置,然后用遞歸組合的方式擴展問題,讓它成為一個復雜問題。

圖 30:問題生成——定位階段
我們的實體定位策略如圖 30 所示,先定位到實體對應的概念,然后用概念和屬性值進一步深度的擴展。例如,要定位某人口大于一定閾值的城市,可以通過關系擴展該問題,然后給出建立對應的嵌入式擴展問題的模式。

圖 31:提問階段
綜上,可以支持 9 種復雜問題的提問方式,包括了計數、比較、驗證和邏輯操作等豐富多樣的問題。

圖 31:重寫和評價
我們在亞馬遜AMT眾包平臺上讓標注者重寫機器生成的問題。針對每一個重寫出來的問題,還有另外 5 個標注者評價該問題是否與原問題的意思相同,并且評價該問題是否符合自然語言的表達。

圖 32:數據集簡介
KQA Pro 數據集的程序中函數的組成、問題類型的分布、問題的長度如圖 32 所示。

圖 33:采樣
我們還為每一個問答對設計了對應的 SPARQL 程序。在此基礎之上能夠構造有 10 種選項的選擇題,同時讓問答系統給出最終的標準答案。

圖 34:在 KQA Pro 數據集上測試現有模型的結果
構建好數據集后,我們在端到端的環境下只利用問題和答案訓練問答模型,測試現有的最好模型在我們的數據集上的性能。實驗結果表明,現有的方法在 KQA Pro 上性能比在其它數據集上差很多。這說明,KQA Pro 上的問答任務較為困難。

圖 35:多階段訓練實驗結果
我們觀察到,如果我們將這個端到端的過程分解為根據問題得到對問題的語義解析,再在此基礎之上生成答案,使用BART 模型對問題的解析正確率能達到 80% 以上。這說明,對問題的理解實際上是一個認知過程。這種多階段的方式比端到端訓練模型的方式效果要好很多,說明中間的語義解析十分重要。

圖 36:實驗結果
我們可以更加透明地將推理過程顯示出來。相較于 SPARQL,我們可以更清楚地知道推理出現了哪些錯誤。SPARQL 中涉及很多的變量,而我們可以很容易地在序列化執行過程中定位到問題,并對該問題進行修正。

圖 37:KQA Pro+
目前,我們將該框架應用于完整的 Wikidata 數據上,該數據集涉及到 2000 多個屬性。我們試圖利用屬性生成復雜問題,目前已經生成了上百萬問題。我們希望可以用自然語言問答 Wikidata 上生成的問題,對于任何存在于 Wikidata 上的知識,我們都可以得到正確的對問題的理解,生成用戶想要的答案。
結語:邁向認知推理

圖 38:結語
總結一下,知識驅動和數據驅動相結合的表征和推理是機器智能研究的重要基礎,我們提出了基于圖的可解釋認知推理框架。未來我們希望構建可擴展的通用推理函數庫,找到構建推理過程所需的基本函數,并構建這些函數的模塊神經網絡。今后,我們希望能夠考慮多模態的認知推理,并且實現增量性學習的推理過程。

雷鋒網雷鋒網雷鋒網
雷峰網特約稿件,未經授權禁止轉載。詳情見轉載須知。