近年來,圖表示學(xué)習(xí)(Graph Embedding)和圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network, GNN)成為網(wǎng)絡(luò)數(shù)據(jù)分析與應(yīng)用的熱點(diǎn)研究問題,其特點(diǎn)是將深度神經(jīng)網(wǎng)絡(luò)技術(shù)用于網(wǎng)絡(luò)結(jié)構(gòu)的建模與計(jì)算,誕生了以 DeepWalk、LINE 和 node2vec 為代表的圖表示學(xué)習(xí)技術(shù),以 GCN 為代表的圖神經(jīng)網(wǎng)絡(luò),能夠利用分布式表示方案實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)中的節(jié)點(diǎn)、邊及其附帶的標(biāo)簽、屬性和文本等信息的建模,從而更好地利用網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行精細(xì)建模和深度推理,相關(guān)技術(shù)已經(jīng)被廣泛用于數(shù)據(jù)挖掘、社會(huì)網(wǎng)絡(luò)分析、推薦系統(tǒng)、自然語言處理、知識(shí)圖譜等領(lǐng)域。
為了推進(jìn)國內(nèi)在該領(lǐng)域的發(fā)展,由中國中文信息學(xué)會(huì)社會(huì)媒體處理專委會(huì)和北京智源人工智能研究院聯(lián)合主辦的“圖神經(jīng)網(wǎng)絡(luò)在線研討會(huì) 2020”于 3 月 29 日下午召開,邀請(qǐng)了宋國杰、沈華偉、唐杰、石川四位國內(nèi)著名學(xué)者介紹圖表示學(xué)習(xí)和圖神經(jīng)網(wǎng)絡(luò)的最新理論進(jìn)展和應(yīng)用探索。
清華大學(xué)計(jì)算機(jī)系教授、系副主任,中國中文信息學(xué)會(huì)社會(huì)媒體處理專委會(huì)常務(wù)副主任,智源研究院學(xué)術(shù)副院長唐杰老師進(jìn)行了主題為“圖表示學(xué)習(xí)和圖神經(jīng)網(wǎng)絡(luò)的最新理論進(jìn)展”的分享,主要介紹了圖神經(jīng)網(wǎng)絡(luò)及其在認(rèn)知推理方向的一些進(jìn)展。
唐杰老師主要研究興趣包括人工智能、認(rèn)知圖譜、數(shù)據(jù)挖掘、社交網(wǎng)絡(luò)和機(jī)器學(xué)習(xí),主持研發(fā)研究者社交網(wǎng)絡(luò)挖掘系統(tǒng) AMiner 等。
以下內(nèi)容是根據(jù)唐杰老師的演講進(jìn)行的總結(jié)。
這就是一個(gè)典型的多媒體的數(shù)據(jù),在兩個(gè)方面怎么做處理是我們當(dāng)下最關(guān)心的一些的問題。人工智能在這方面快速發(fā)展,總結(jié)一下:這個(gè)時(shí)代是一個(gè)感知的時(shí)代,AI 到目前為止基本上解決了所有的感知問題。如果回顧過去的話,會(huì)發(fā)現(xiàn)計(jì)算機(jī)主要是做一些存儲(chǔ)和計(jì)算的工作;如果展望未來的話,我們想倡導(dǎo)的應(yīng)該是在認(rèn)知方面怎么把計(jì)算、推理做到神經(jīng)網(wǎng)絡(luò)中。
現(xiàn)在這個(gè)感知時(shí)代最大的特點(diǎn)是算法。下面這張圖匯總了最近幾十年 AI 算法的一些進(jìn)展。
這張圖最上面的淺紫色的部分大致梳理了卷積神經(jīng)網(wǎng)絡(luò)的發(fā)展歷史。1953 年,感知機(jī)(Perceptron)被提出來。1986 年,多層感知機(jī)(Multi-Layer Perception,MLP)開始出現(xiàn)。1998 年,Yann Le Cun 提出手寫字體識(shí)別模型 LeNet 及卷積神經(jīng)網(wǎng)絡(luò)(CNN),但是當(dāng)時(shí) CNN 并沒有大規(guī)模被人關(guān)注,因?yàn)楫?dāng)時(shí)大火的支持向量機(jī)(SVM)壓住了 CNN 的風(fēng)頭。直到 2012 年,Geoffrey Hinton 的學(xué)生在 LeNet 的基礎(chǔ)上加上了 ReLU、Dropout 等內(nèi)容,實(shí)現(xiàn)了 AlexNet,把 CNN 的效率大規(guī)模提高,才推動(dòng)了這個(gè)方向的發(fā)展。
第二部分淡綠色部分的內(nèi)容表示自編碼(AutoEncoder),這部分不是今天的重點(diǎn),不再展開。
第三層淺黃色的部分可以被稱為循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)的發(fā)展。放大來看,它的理論和上面的一樣優(yōu)美,它其實(shí)就是一個(gè)概率統(tǒng)計(jì)模型,即把神經(jīng)網(wǎng)絡(luò)用圖的方式連接起來,雖然最早期的時(shí)候大家做的都是序列化的模型,如 RNN,或者是在語言模型(Language Model)上面做一些相關(guān)的工作,甚至是Seq2Seq,但是最近更多的工作是在圖上,如唐建他們有一篇文章就是把圖模型(Graphical Model)加上神經(jīng)網(wǎng)絡(luò),一起連接起來,于是就變成一個(gè)基于圖模型的神經(jīng)網(wǎng)絡(luò)(Graphical Model based Neural Network)。
如果結(jié)合最上面淺紫色的內(nèi)容和淺黃色的內(nèi)容,即把卷積神經(jīng)網(wǎng)絡(luò)加上圖模型,這形成我們今天經(jīng)常說的圖神經(jīng)網(wǎng)絡(luò)的基本思想。
可以看出來,圖神經(jīng)網(wǎng)絡(luò)有很長的歷史,是一個(gè)非常簡單的機(jī)器學(xué)習(xí)算法在圖上的一個(gè)自然地延伸。為什么現(xiàn)在大家覺得圖神經(jīng)網(wǎng)絡(luò)火得不行?好像所有的人都在研究圖神經(jīng)網(wǎng)絡(luò)?也有些人說這個(gè)東西是簡單地把某些東西用在另一個(gè)數(shù)據(jù)集上?其實(shí)機(jī)器學(xué)習(xí)所有的發(fā)展歷史都有這樣一個(gè)過程,它最早期都是從一個(gè)簡單的單樣本分析開始,然后逐步復(fù)雜化,最后再把樣本與樣本之間的關(guān)聯(lián)關(guān)系考慮進(jìn)來,如圖神經(jīng)網(wǎng)絡(luò)就是用一個(gè)簡單的思路把它結(jié)合起來。最早的線性條件隨機(jī)場(Conditional Random field,CRF)、最大熵馬爾可夫模型(Maximum Entropy Markov Model,MEMM)等模型的思路都是在原來的思路上擴(kuò)展的。GNN就是神經(jīng)網(wǎng)絡(luò)在圖上的一個(gè)自然地延伸。當(dāng)然,這一波自然延伸的結(jié)果是必然有下一波階躍。如原來在圖模型上有了 CRF、MEMM 以后,概率統(tǒng)計(jì)模型基本到了一個(gè)極致,后續(xù)延伸自然就到了下一個(gè)階段。
最下面是一個(gè)強(qiáng)化學(xué)習(xí)(Reinforcement Learning),這里也不再多講。
回到我們的背景。既然有 CNN、有大量網(wǎng)絡(luò)化的數(shù)據(jù),就可以做很多相關(guān)的研究。
首先,這些數(shù)據(jù)的規(guī)模非常大。如阿里巴巴、Facebook、新浪微博等積累了超大規(guī)模的社交網(wǎng)絡(luò)數(shù)據(jù),如果泛化來看,我們還有經(jīng)濟(jì)方面的網(wǎng)絡(luò)(Economic networks)、生物醫(yī)學(xué)方面的網(wǎng)絡(luò)(Biomedical networks)……甚至還有大腦中神經(jīng)元的網(wǎng)絡(luò)(Networks of neurons),這里面有很多相關(guān)的應(yīng)用,如果從機(jī)器學(xué)習(xí)的角度歸納一下相關(guān)的應(yīng)用,可以發(fā)現(xiàn)以下幾個(gè)核心的任務(wù)。
下面詳細(xì)展開介紹一下。
(1)點(diǎn)分類,做一個(gè)點(diǎn)的表示,然后做預(yù)測它的類型是什么。
(2)兩個(gè)點(diǎn)的鏈接生成,如兩個(gè)點(diǎn)之間有沒有可能生成一條邊,或者再放大來看,看有沒有可能找到一個(gè)子圖,或者找網(wǎng)絡(luò)相似度。這個(gè)方面在過去有很多相關(guān)的研究,今天我們會(huì)大概涉獵這些東西。這方面最早的研究可以追溯到 Geoffrey Hinton 研究的分布式表示(Distributed representation),但是這個(gè)概念在當(dāng)時(shí)被 SVM 壓制,一直沒有火起來,直到 2013 年 Tomas Mikolov 提出了非??焖俚乃惴?Word2vec,才迅速讓深度學(xué)習(xí)算法在文本分析領(lǐng)域快速落地。到了 2014 年,Bryan Perozzi 很巧妙地將 Word2vec 直接用到了神經(jīng)網(wǎng)絡(luò)中,開啟了在網(wǎng)絡(luò)中做表示學(xué)習(xí)的浪潮,后來唐建、Yann Le Cun、Max Welling 等都做出了大量的工作,最后整個(gè)這方面的研究形成了我們今天看到的 GNN,如果放到更高的層面去看,就是網(wǎng)絡(luò)表示學(xué)習(xí)這么一個(gè)領(lǐng)域。
在網(wǎng)絡(luò)表示學(xué)習(xí)中,DeepWalk 的思路是:既然節(jié)點(diǎn)沒有先后關(guān)系,就做一個(gè)先后關(guān)系。從任意一個(gè)節(jié)點(diǎn)開始,在上面跑一個(gè)隨機(jī)游走(Random Walk),跑完了以后可以形成了一個(gè)序列,形成一個(gè)和 DeepWalk 處理文本一樣的上下位信息,于是 v1 這個(gè)節(jié)點(diǎn)就由 v3、v4、v5、v6 作為它的上下位,剩下給一個(gè)隨機(jī)的低維表示,然后在上面進(jìn)行 SkipGram with Hierarchical softmax 的一個(gè)學(xué)習(xí),最后就可以得到一個(gè)希望的表示結(jié)果,如下圖所示。
這里做 SkipGram with Hierarchical softmax 是為了提高計(jì)算速度,不再詳細(xì)說明。最后的參數(shù)學(xué)習(xí)可以用一個(gè)基于梯度的學(xué)習(xí)很快做到。
這篇文章最初在當(dāng)時(shí)并沒有引起大規(guī)模的關(guān)注,但是它開啟了一個(gè)在網(wǎng)絡(luò)中做表示學(xué)習(xí)的新紀(jì)元。最初大家覺得在網(wǎng)絡(luò)中做表示學(xué)習(xí)是一件很麻煩的事,后來發(fā)現(xiàn)神經(jīng)網(wǎng)絡(luò)可以用在網(wǎng)絡(luò)中,可以學(xué)習(xí)每個(gè)節(jié)點(diǎn)的表示,并且學(xué)到的表示可能可以用于不同的網(wǎng)絡(luò),如 Blog Catalog,使得它的效果還不錯(cuò)。后來又試了其他的網(wǎng)絡(luò),如 Youtube 中的網(wǎng)絡(luò),發(fā)現(xiàn)效果也不錯(cuò)。后來就引起了大規(guī)模的相關(guān)的研究,討論怎么來提高在網(wǎng)絡(luò)上做表學(xué)習(xí)的效果。于是大家就分析 DeepWalk 的一些缺點(diǎn)。
首先它的上下文是固定的,而它的隨機(jī)游走并沒有考慮到網(wǎng)絡(luò)的特性,于是后面一大堆的研究,如 LINE 等。下圖中 5 和 6 這兩個(gè)節(jié)點(diǎn)根據(jù)我們?nèi)说男袨閬砜词呛芟嗨频摹? 和 6 有四個(gè)相近節(jié)點(diǎn)(1、2、3、4),但是 6 和 7 是直連的。如果用剛才的 DeepWalk,即 RandomWalk 在上面隨機(jī)游走,6 和 7 可能距離反而更近,它的相似度反而更高。
在探討之前,我們先快速說明一下 GCN 的本質(zhì)。GCN 的本質(zhì)其實(shí)就是在一個(gè)網(wǎng)絡(luò)中把鄰居節(jié)點(diǎn)的表示信息放到自己當(dāng)前節(jié)點(diǎn)上。比如說對(duì)于下圖中 v 節(jié)點(diǎn)來講,它有鄰居節(jié)點(diǎn) a、b、c、d、e,每一個(gè)節(jié)點(diǎn)可能都有一個(gè)表示(從 ha 到 he)。
怎么把鄰居節(jié)點(diǎn)的引表示通過某種方法或某種函數(shù)(如 f 函數(shù)可能是線性變化,也可能是個(gè)非線性變化),把它 Aggregate 到當(dāng)前節(jié)點(diǎn),得到 hv。當(dāng)然,從下圖所示的內(nèi)容里表示我們就可以看出一個(gè)結(jié)果:左邊給出了一個(gè)在鄰居節(jié)點(diǎn)身上做的卷積,得到對(duì)當(dāng)前節(jié)點(diǎn)進(jìn)行卷積的結(jié)果。
我們可以構(gòu)造出一個(gè)加上了非線性的激活函數(shù)的函數(shù),如下圖所示。是權(quán)重,是鄰居節(jié)點(diǎn)。是當(dāng)前節(jié)點(diǎn)的表示, v 是當(dāng)前節(jié)點(diǎn),另外還有一個(gè)非線性的激活函數(shù)。
基于這樣的思想,后來在最早的 GCN 相關(guān)的論文上也有很多的延續(xù),如 GraphSage。GraphSage 的思想非常簡單,它把原來單純的當(dāng)前節(jié)點(diǎn)和其他所有節(jié)點(diǎn)的聚合整合到一起了,變成當(dāng)前節(jié)點(diǎn)的表示和其他所有節(jié)點(diǎn)的表示連接在一起,如下圖所示。這樣的話效果反而提高了。
這個(gè)思路后來又被 GAT 給打敗了,GAT 是什么?我們現(xiàn)在 aggregate 的時(shí)候,也就是每個(gè)節(jié)點(diǎn)信息往中間節(jié)點(diǎn)傳的時(shí)候,它的權(quán)重不一樣。從 Social network 的角度來說,它的本質(zhì)就是影響力不一樣,就相當(dāng)于某個(gè)節(jié)點(diǎn)對(duì)其他的不同的節(jié)點(diǎn)的影響是不一樣的。怎么把這種影響力在網(wǎng)絡(luò)中度量,是社交網(wǎng)絡(luò)區(qū)別于其他很多網(wǎng)絡(luò)一個(gè)非常重要的方面。當(dāng)然,從數(shù)學(xué)上可以把 GCN 看作是下圖上方的式子,而 GAT 是下圖下方的式子,可以看到唯一的變化就是加上了一個(gè) Attention 參數(shù),這樣的話可以看一些初步的結(jié)果,加上 Attention 參數(shù)的效果確實(shí)比原有算法的效果要好。
我們現(xiàn)在再次問自己一個(gè)問題:所有的這些卷積網(wǎng)絡(luò)的本質(zhì)是什么?剛才說了,網(wǎng)絡(luò)表示學(xué)習(xí)的本質(zhì)是一個(gè)矩陣分解,那卷積網(wǎng)絡(luò)的本質(zhì)是什么?而且卷積網(wǎng)絡(luò)面臨著很多問題,除了我們經(jīng)常說的機(jī)器學(xué)習(xí)普遍存在的過擬合問題,這里還存在更重要的問題——過平滑及不健壯的問題。因?yàn)樵诰W(wǎng)絡(luò)中可能存在鏈接,甚至很多噪聲鏈接,這些鏈接可能會(huì)大幅影響效果,這個(gè)時(shí)候該怎么辦?
我們先來看一看下圖的分析。GCN 每一層的傳播在本質(zhì)上都是一個(gè)矩陣分解,從前面的分析可以看到,對(duì)矩陣分解其實(shí)可以進(jìn)一步做一定的分析,把矩陣分解變成一個(gè)信通問題。而借助信通的思路其實(shí)還有一個(gè)很有意思的擴(kuò)展,我們可以把網(wǎng)絡(luò)中的鄰接矩陣 A 做一定的變換,我們可以在前面做一定的信通的變換,在后面也可以做信通的變換。這樣的話整個(gè)網(wǎng)絡(luò)其實(shí)可以變成一個(gè) Signal Rescaling 的一個(gè)思路。
這樣的好處是可以把原來的每一層都做一個(gè)矩陣分解直接變換成相關(guān)的一些變化,我們可以把網(wǎng)絡(luò)中的節(jié)點(diǎn)的 status,或者網(wǎng)絡(luò)中的影響力全部嵌入卷積神經(jīng)網(wǎng)絡(luò)。這樣的話對(duì)每一層的卷積層都可以做一定的變換,它可以是多層的,甚至是可以做 Multi-head Propagation mechanism,還可以做 Multi-hop variants。如果我們?nèi)サ裘恳粚拥姆蔷€性函數(shù),事實(shí)上 Multi-hop variants 就和單純的 GCN 等價(jià)了。這樣一個(gè)分析的思路就把前面所有的注意力機(jī)制,如 Node attention、Edge attention、K-hop edge attention 或 Path attention 全部歸一化了起來。更優(yōu)美的是基于這樣的思想,其實(shí)我們在以后就可以不用研究刻意去研究 GCN 的這種結(jié)構(gòu)、架構(gòu),而是去研究在 GCN 里的不同的操作。我們可以基于剛才的函數(shù)對(duì)里面的 P、Q 做變換,或者對(duì) L 值直接做變換。這樣的話我們就可以對(duì)整個(gè) GCN 做三種操作:Rescale,Re-normalize、Propagate,如下圖所示。
甚至我們可以把所有的這些卷積網(wǎng)絡(luò)的方法全部用 signal Rescaling 的方法把它統(tǒng)一起來,而統(tǒng)一的思想就是以上的三個(gè)操作,就用三個(gè) operation 把所有的操作都給歸一化起來,如下圖所示。從這個(gè)角度上大家可以看到,在網(wǎng)絡(luò)表示學(xué)習(xí)方面,我們把它歸一化到矩陣分解,用矩陣分解把網(wǎng)絡(luò)表示學(xué)習(xí)都給歸一化起來了。而在卷積網(wǎng)絡(luò)中或者是叫圖神經(jīng)網(wǎng)絡(luò)(當(dāng)然更多的是卷積網(wǎng)絡(luò))中,我們就用三個(gè)操作+矩陣分解,用矩陣分解把形式化統(tǒng)一,然后用三個(gè)操作把不同的方法全部給統(tǒng)一起來。于是這個(gè)時(shí)候我們有了一個(gè)統(tǒng)一的框架,基本上都是矩陣分解加不同的一個(gè)操作(這里更多的是 signal Rescaling)這么一個(gè)思路,再把它統(tǒng)一起來。
我們還做了一些實(shí)驗(yàn)。我們發(fā)現(xiàn)結(jié)果也比以前確實(shí)要好,如下圖所示。
我們加上不同的操作以后,前面有 rescaling,post 叫 propagation,還有 normalization,我們用不同的操作加在上面可以組合成不同的方法。而這些不同的方法可以用一個(gè) AutoML 的方法來做 Tune,這樣就比原來歸一化表示的其他方法的效果都要好。從效果上我們可以得到更好的一個(gè)結(jié)果。這樣就可能解決“在數(shù)學(xué)上的分析很漂亮,我們都說是一個(gè) signal Rescaling 的問題,但是我們怎么讓結(jié)果真的比原來好很多,這個(gè)時(shí)候就有很大的一個(gè)麻煩”這個(gè)問題。關(guān)于這一部分的很多細(xì)節(jié)沈華偉老師講了很多,所以我在這里跳過一些,有興趣的可以查看相關(guān)的視頻。
接下來我們來看一下最近的一些思路。最近大家都知道自然語言處理及很多其他領(lǐng)域中,預(yù)訓(xùn)練已經(jīng)變成一個(gè)標(biāo)配了,BERT 從 2018 年底出現(xiàn)到現(xiàn)在已經(jīng)打敗了很多相關(guān)的一些方法,甚至已經(jīng)出現(xiàn)了關(guān)于 BERT 的一系列相關(guān)的方法(BERTology),如 XLNet, Roberta, ALBert, TinyBERT 等。在計(jì)算機(jī)視覺(CV)方向也有很多相關(guān)的研究,最近一個(gè)很重要的進(jìn)展就是 Contrastive Learning,即利用無監(jiān)督學(xué)習(xí)(Unsupervised Learning)的方法或者是一個(gè)非常簡單的 Contrastive Learning 的思路來做的效果更好。MoCo 在 2019 年年底出來,基本上一下子就做到無監(jiān)督學(xué)習(xí)的結(jié)果基本上就可以跟監(jiān)督學(xué)習(xí)(Supervised learning)的結(jié)果差不了太多。后來 Geoffrey Hinton 團(tuán)隊(duì)的 SimCLR 又打敗了 MoCo,最近 MoCo2 又把效果進(jìn)一步提高,打敗了 SimCLR。它們的核心思想都 Contrastive Learning,本質(zhì)上都是在用 self learning 來做表示學(xué)習(xí),類似于做一個(gè)預(yù)訓(xùn)練。
我認(rèn)為這方面是一個(gè)可能的方向,未來在這方面可能會(huì)有一些發(fā)展。但是怎么跟網(wǎng)絡(luò)化的數(shù)據(jù)、跟圖掛鉤,就是把圖跟預(yù)訓(xùn)練掛鉤,這方面其實(shí)還是一個(gè)很大的挑戰(zhàn)。所以總體來講,在 GNN 時(shí)代,如果光從算法的來考慮,我覺得值得考慮的其實(shí)有兩大核心的挑戰(zhàn):(1)怎么把預(yù)訓(xùn)練思路,包括剛才的 Contrastive Learning 和圖結(jié)合起來。其實(shí)現(xiàn)在還沒有一個(gè)特別里程碑式的進(jìn)展。(2)我們在這里面怎么解決它過平滑、過擬合、不健壯的問題。這幾個(gè)問題怎么解決是很難的問題。
我們現(xiàn)在再來看一看 GNN 怎么和推理結(jié)合起來。說到推理,可能有些人說這個(gè)問題太大了,所以我們先從一個(gè)非常簡單的問題(Multi-hop Question Answering,QA)來說。
這個(gè)問題是個(gè)自然語言處理的問題。假如我們要解決一個(gè)問題“找到一個(gè) 2003 年在洛杉磯的 Quality 咖啡館拍過電影的導(dǎo)演(Who is the director of the 2003 film which has scenes in it filmed at The Quality Cafe in Los Angeles)”。如果是人來解決這個(gè)問題的話,可能是先追溯相關(guān)的文檔,如 Quality 咖啡館的介紹文檔,洛杉磯的維基百科頁面等,我們可能會(huì)從中找到相關(guān)的電影,如 Old School,在這個(gè)電影的介紹文檔里面,我們可能會(huì)進(jìn)一步找到該電影的導(dǎo)演 Todd Phillips,經(jīng)過比對(duì)電影的拍攝時(shí)間 2003 年,最終確定答案是 Todd Phillips,具體流程如下圖所示。
但是計(jì)算機(jī)會(huì)怎么做?計(jì)算機(jī)不像人,計(jì)算機(jī)沒有這么聰明。如果我們用一個(gè)簡單的方法,也就是說我們用卷積神經(jīng)網(wǎng)絡(luò)的方法來做的話,應(yīng)該怎么做?我們可以用 BERT 或 XLNet,BERT 可以做到 512 的 Context 了,我們現(xiàn)在甚至可以做到 1024、2048 的 Context,當(dāng)然訓(xùn)練要求就更高了,甚至沒有足夠的機(jī)器來完成。但是這里面核心的一個(gè)問題不是說它能不能解的問題(當(dāng)然第 1 個(gè)方面是它能不能解),而是像人那樣解決這個(gè)問題,即需要人的推理過程,但 BERT 可能根本就解決不了。
第 2 個(gè)更難的是缺乏知識(shí)層面上的一個(gè)推理能力,尤其是缺乏可解釋性。我們到最后得到的一個(gè)可能的結(jié)果:BERT 給出了一個(gè)和真實(shí)結(jié)果比較相似的結(jié)果,說這就是答案,然后就結(jié)束了。要想完美解決這個(gè)問題,需要有一個(gè)推理路徑或者一個(gè)子圖,我們怎么在這方面來做這樣的事情?這很難。怎么辦呢?我們來看一看人的推理過程。人的推理過程是:人在拿到這個(gè)問題以后,首先可能找到 Quality 咖啡館相關(guān)的文檔,這是最好的一個(gè)文檔(因?yàn)槁迳即壥械南嚓P(guān)文檔不是一個(gè)好的初始文檔)。找到 Quality 咖啡館相關(guān)的文檔以后,我們可以從里面找到 old school 的相關(guān)文檔,然后從 old school 的文檔中可以找到 Todd Phillips。整個(gè)過程有好幾個(gè)步驟,如下圖所示。
我們怎么把步驟形式化成一個(gè)計(jì)算機(jī)或者說機(jī)器學(xué)習(xí)能做的事情就是我們下一步要探討的。
我們把這個(gè)問題跟認(rèn)知科學(xué)中的一個(gè)很重要的理論——雙通道理論(Dual Process Theory)結(jié)合起來。為什么和雙通道理論結(jié)合起來呢?人在做推理的時(shí)候,我們發(fā)現(xiàn)有兩個(gè)系統(tǒng):System 1 和 System 2。System 1 被叫作直覺系統(tǒng),直覺系統(tǒng)是說給定某個(gè)關(guān)系以后,只要算出相似度,就立馬把相似度給出來。比如當(dāng)大家聽到 3 月 29 號(hào)下午有一個(gè)圖神經(jīng)網(wǎng)絡(luò)的研討會(huì)時(shí),大家覺得有興趣,決定要聽一下。System 2 會(huì)做進(jìn)一步的推理、邏輯思考、決策。它可能會(huì)想下午還要帶小孩出去玩,或者下午還有另外一門課,這個(gè)課不能翹,于是你最后說算了,下午不去了,最后你就不參加了。所以 System 2 它是帶有邏輯思考的。
以上就是人思考問題的過程。AI 怎么跟人來結(jié)合?我們在去年探討這個(gè)問題的時(shí)候,正好 Yoshua Bengio 他們也在聊這個(gè)問題,他在去年的 NIPS 上更直接地講了:“深度學(xué)習(xí)應(yīng)該直接從 System 1 做到 System 2?,F(xiàn)在 System 1 主要是在做直覺式(Intuitive)的思考。而 System 2 應(yīng)該做一些邏輯加上一些推理,再加上一些 planning 的思考”如下圖所示。
找到以后,我們把它作為 Cognitive Graph 拿給 System 2 來做決策。System 2 就相當(dāng)于做直接做一個(gè) prediction,相當(dāng)于學(xué)一個(gè) prediction 的模型。用 GNN 直接來做預(yù)測。如果是答案就結(jié)束,如果不是答案,但是有用,就把它交給 System 1 來接著做。具體結(jié)構(gòu)如下圖所示。
機(jī)器學(xué)習(xí)原來是依靠某個(gè)信息做預(yù)測,這個(gè)時(shí)候可能沒有擴(kuò)展的信息,而依靠認(rèn)知圖譜,可以用 system 1 擴(kuò)展出來新的信息,如果拓展的信息精度不夠高,還可以通過做一層推理給出更多的信息,這個(gè)時(shí)候機(jī)器學(xué)習(xí)系統(tǒng)可以結(jié)合更多的信息再來做預(yù)測,這可能又進(jìn)一步提高了效果。當(dāng)機(jī)器學(xué)習(xí)系統(tǒng)做了一個(gè)錯(cuò)誤的預(yù)測以后,認(rèn)知圖譜還可以回溯錯(cuò)誤是怎么產(chǎn)生的。這個(gè)方面有很多相關(guān)的應(yīng)用。
有人可能會(huì)說,這個(gè)是不是只能做問答?不是的,它既可以做問答,也可以做知識(shí)圖譜的補(bǔ)齊,下圖左邊是一個(gè)知識(shí)圖譜,右邊是基于剛才的模型來做知識(shí)圖譜的一個(gè)補(bǔ)齊,這是一個(gè)基本的一個(gè)思路。
這就是認(rèn)知圖譜怎么和推理結(jié)合在一起。
未來我們有很多挑戰(zhàn),但是也有很多機(jī)遇。
張鈸院士在 2015 年提出人工智能基本上在做兩件事。
第一件事:做知識(shí)的表示和知識(shí)的推理。其實(shí)知識(shí)表示和知識(shí)推理在 20 世紀(jì) 50 年代第一個(gè)人工智能時(shí)代就已經(jīng)有了。當(dāng)時(shí)的推理就已經(jīng)很先進(jìn)了。但是一直沒有發(fā)展起來,一個(gè)原因就是規(guī)模小,另一個(gè)原因是固定、死板,不能自學(xué)習(xí)。這跟當(dāng)時(shí)的計(jì)算機(jī)計(jì)算能力差、缺乏大規(guī)模的數(shù)據(jù)有關(guān)系。
第二件事:第二波人工智能浪潮的興起是機(jī)器學(xué)習(xí)驅(qū)動(dòng)的,第三波人工智能浪潮(也就是這一次人工智能浪潮)是依靠深度學(xué)習(xí)把整個(gè)基于學(xué)習(xí)的人工智能推向了一個(gè)頂峰,所以我說這是一個(gè)感知時(shí)代的頂峰。
現(xiàn)在人工智能最大的問題缺乏可解釋性,而且缺乏健壯性。我剛才講了,存在一個(gè)噪聲可能就會(huì)導(dǎo)致整個(gè)網(wǎng)絡(luò)的表示學(xué)習(xí)的結(jié)果就不行了,甚至缺乏這種可信的結(jié)果和可擴(kuò)展的結(jié)果。這些方面都需要我們做進(jìn)一步的研究,所以當(dāng)時(shí)張?jiān)菏烤吞岢鲆龅谌斯ぶ悄堋ARPA 在 2017 年也做了 XAI 項(xiàng)目,提出一定要做可解釋性的機(jī)器學(xué)習(xí)。
2018 年,清華大學(xué)正式提出第三代人工智能的理論框架體系:(1)建立可解釋、健壯性的人工智能理論和方法。(2)發(fā)展安全、可靠、可信及可擴(kuò)展的人工智能技術(shù)。(3)推動(dòng)人工智能創(chuàng)新應(yīng)用。
結(jié)合剛才講到的內(nèi)容,我認(rèn)為:(1)數(shù)據(jù)和知識(shí)的融合是非常關(guān)鍵的,我們要考慮怎么把知識(shí)融合到數(shù)據(jù)里面。(2)我們怎么跟腦科學(xué)、腦啟發(fā)、腦認(rèn)知的方法結(jié)合起來。所以剛才我拋磚引玉給了一個(gè)思想,即我們用認(rèn)知圖譜這種思想,可能可以把人的常識(shí)知識(shí)和一些推理邏輯結(jié)合到深度學(xué)習(xí)中,甚至可以把一些知識(shí)的表示也結(jié)合到里面。這樣的話“認(rèn)知+推理”就是未來。這里面還有一個(gè)核心的基石:要建造萬億級(jí)的常識(shí)知識(shí)圖譜,這是我們必須要做的。這里面路還非常遠(yuǎn),我也非常歡迎大家一起加入來做這方面的研究和探討。
這里面再次拋磚引玉,提一下幾個(gè)相關(guān)的研究。(1)在推理方面有幾個(gè)相關(guān)的工作,如 DeepMind 的 graph_net 就把關(guān)系融合到網(wǎng)絡(luò)表示中,在網(wǎng)絡(luò)表示學(xué)習(xí)中發(fā)揮一定的作用。(2)最近的一篇文章把知識(shí)圖譜融合到了 BERT 中,這樣的話知識(shí)圖譜中就有了與 BERT 相關(guān)的一些東西,可以用這種知識(shí)圖譜來幫助 BERT 的預(yù)訓(xùn)練。當(dāng)然,我不是說它是最好的,但它們都提出了一個(gè)思路,講到了怎么把表示學(xué)習(xí)和 GNN 結(jié)合起來,這是很重要的一些事情。
下圖列出了一些相關(guān)的論文,還有一兩篇是我們沒有發(fā)表的文章,包括剛才說的 Signal Rescaling,其實(shí)我們在那篇文章里面做了很多數(shù)學(xué)分析。
聯(lián)系客服