开心六月综合激情婷婷|欧美精品成人动漫二区|国产中文字幕综合色|亚洲人在线成视频

    1. 
      
        <b id="zqfy3"><legend id="zqfy3"><fieldset id="zqfy3"></fieldset></legend></b>
          <ul id="zqfy3"></ul>
          <blockquote id="zqfy3"><strong id="zqfy3"><dfn id="zqfy3"></dfn></strong></blockquote>
          <blockquote id="zqfy3"><legend id="zqfy3"></legend></blockquote>
          打開APP
          userphoto
          未登錄

          開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

          開通VIP
          認(rèn)知推理:從圖表示學(xué)習(xí)和圖神經(jīng)網(wǎng)絡(luò)的最新理論看AI的未來(lái) | 附報(bào)告PPT下載

          近年來(lái),圖表示學(xué)習(xí)(Graph Embedding)和圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network, GNN)成為網(wǎng)絡(luò)數(shù)據(jù)分析與應(yīng)用的熱點(diǎn)研究問(wè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)、自然語(yǔ)言處理、知識(shí)圖譜等領(lǐng)域。

          為了推進(jìn)國(guó)內(nèi)在該領(lǐng)域的發(fā)展,由中國(guó)中文信息學(xué)會(huì)社會(huì)媒體處理專委會(huì)和北京智源人工智能研究院聯(lián)合主辦的“圖神經(jīng)網(wǎng)絡(luò)在線研討會(huì) 2020”于 3 月 29 日下午召開,邀請(qǐng)了宋國(guó)杰、沈華偉、唐杰、石川四位國(guó)內(nèi)著名學(xué)者介紹圖表示學(xué)習(xí)和圖神經(jīng)網(wǎng)絡(luò)的最新理論進(jìn)展和應(yīng)用探索。

          清華大學(xué)計(jì)算機(jī)系教授、系副主任,中國(guó)中文信息學(xué)會(huì)社會(huì)媒體處理專委會(huì)常務(wù)副主任,智源研究院學(xué)術(shù)副院長(zhǎng)
          唐杰老師進(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é)。


          引言

          我們正在經(jīng)歷第三次人工智能浪潮,世界上很多國(guó)家都推出了相應(yīng)的戰(zhàn)略和發(fā)展規(guī)劃。但也有人說(shuō)第三次人工智能浪潮已經(jīng)接近尾聲,馬上就要到達(dá)“冰點(diǎn)”,第四次浪潮已經(jīng)在醞釀之中。關(guān)于下一次浪潮的具體內(nèi)容,今天暫時(shí)不做過(guò)多的討論,我們先剖析一下這次浪潮的具體情況。

          AI 這幾年發(fā)展很快,其中一個(gè)重要原因是產(chǎn)業(yè)界的很多研究者、資源加入進(jìn)來(lái),一起推動(dòng) AI 的發(fā)展,如谷歌的 AlphaGo 和無(wú)人駕駛汽車。國(guó)內(nèi)的相關(guān)企業(yè)也在蓬勃發(fā)展,從我的角度來(lái)說(shuō),我們做的事和硬件的關(guān)聯(lián)沒(méi)那么緊密,很多的是偏軟件的東西,比如在圖片識(shí)別過(guò)程中,我們更關(guān)注怎么將其中的語(yǔ)義信息抽取、識(shí)別出來(lái),怎么把文本的語(yǔ)義信息和圖片的語(yǔ)義信息混合起來(lái)做計(jì)算等。比如下圖,通過(guò)將一張狗的圖片減去關(guān)鍵詞“dog”,再加上關(guān)鍵詞“cat”,從而將貓的圖片識(shí)別出來(lái)。

          這就是一個(gè)典型的多媒體的數(shù)據(jù),在兩個(gè)方面怎么做處理是我們當(dāng)下最關(guān)心的一些的問(wèn)題。人工智能在這方面快速發(fā)展,總結(jié)一下:這個(gè)時(shí)代是一個(gè)感知的時(shí)代,AI 到目前為止基本上解決了所有的感知問(wèn)題。如果回顧過(guò)去的話,會(huì)發(fā)現(xiàn)計(jì)算機(jī)主要是做一些存儲(chǔ)和計(jì)算的工作;如果展望未來(lái)的話,我們想倡導(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)被提出來(lái)。1986 年,多層感知機(jī)(Multi-Layer Perception,MLP)開始出現(xiàn)。1998 年,Yann Le Cun 提出手寫字體識(shí)別模型 LeNet 及卷積神經(jīng)網(wǎng)絡(luò)(CNN),但是當(dāng)時(shí) CNN 并沒(méi)有大規(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ā)展。放大來(lái)看,它的理論和上面的一樣優(yōu)美,它其實(shí)就是一個(gè)概率統(tǒng)計(jì)模型,即把神經(jīng)網(wǎng)絡(luò)用圖的方式連接起來(lái),雖然最早期的時(shí)候大家做的都是序列化的模型,如 RNN,或者是在語(yǔ)言模型(Language Model)上面做一些相關(guān)的工作,甚至是Seq2Seq,但是最近更多的工作是在圖上,如唐建他們有一篇文章就是把圖模型(Graphical Model)加上神經(jīng)網(wǎng)絡(luò),一起連接起來(lái),于是就變成一個(gè)基于圖模型的神經(jīng)網(wǎng)絡(luò)(Graphical Model based Neural Network)。

          如果結(jié)合最上面淺紫色的內(nèi)容和淺黃色的內(nèi)容,即
          把卷積神經(jīng)網(wǎng)絡(luò)加上圖模型,這形成我們今天經(jīng)常說(shuō)的圖神經(jīng)網(wǎng)絡(luò)的基本思想

          可以看出來(lái),圖神經(jīng)網(wǎng)絡(luò)有很長(zhǎng)的歷史,是一個(gè)非常簡(jiǎn)單的機(jī)器學(xué)習(xí)算法在圖上的一個(gè)自然地延伸。為什么現(xiàn)在大家覺(jué)得圖神經(jīng)網(wǎng)絡(luò)火得不行?好像所有的人都在研究圖神經(jīng)網(wǎng)絡(luò)?也有些人說(shuō)這個(gè)東西是簡(jiǎn)單地把某些東西用在另一個(gè)數(shù)據(jù)集上?其實(shí)機(jī)器學(xué)習(xí)所有的發(fā)展歷史都有這樣一個(gè)過(guò)程,它最早期都是從一個(gè)簡(jiǎn)單的單樣本分析開始,然后逐步復(fù)雜化,最后再把樣本與樣本之間的關(guān)聯(lián)關(guān)系考慮進(jìn)來(lái),如圖神經(jīng)網(wǎng)絡(luò)就是用一個(gè)簡(jiǎn)單的思路把它結(jié)合起來(lái)。最早的線性條件隨機(jī)場(chǎng)(Conditional Random field,CRF)、最大熵馬爾可夫模型(Maximum Entropy Markov Model,MEMM)等模型的思路都是在原來(lái)的思路上擴(kuò)展的。
          GNN就是神經(jīng)網(wǎng)絡(luò)在圖上的一個(gè)自然地延伸。當(dāng)然,這一波自然延伸的結(jié)果是必然有下一波階躍。如原來(lái)在圖模型上有了 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ù),如果泛化來(lái)看,我們還有經(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ù)測(cè)它的類型是什么。

          (2)兩個(gè)點(diǎn)的鏈接生成,如兩個(gè)點(diǎn)之間有沒(méi)有可能生成一條邊,或者再放大來(lái)看,看有沒(méi)有可能找到一個(gè)子圖,或者找網(wǎng)絡(luò)相似度。這個(gè)方面在過(guò)去有很多相關(guān)的研究,今天我們會(huì)大概涉獵這些東西。這方面最早的研究可以追溯到 Geoffrey Hinton 研究的分布式表示(Distributed representation),但是這個(gè)概念在當(dāng)時(shí)被 SVM 壓制,一直沒(méi)有火起來(lái),直到 2013 年 Tomas Mikolov 提出了非常快速的算法 Word2vec,才迅速讓深度學(xué)習(xí)算法在文本分析領(lǐng)域快速落地。到了 2014 年,Bryan Perozzi 很巧妙地將 Word2vec 直接用到了神經(jīng)網(wǎng)絡(luò)中,開啟了在網(wǎng)絡(luò)中做表示學(xué)習(xí)的浪潮,后來(lái)唐建、Yann Le Cun、Max Welling 等都做出了大量的工作,最后整個(gè)這方面的研究形成了我們今天看到的 GNN,如果放到更高的層面去看,就是網(wǎng)絡(luò)表示學(xué)習(xí)這么一個(gè)領(lǐng)域。

          回顧網(wǎng)絡(luò)表示學(xué)習(xí)
          首先回歸一下網(wǎng)絡(luò)表示學(xué)習(xí)。網(wǎng)絡(luò)表示學(xué)習(xí)在本質(zhì)上就是給定一個(gè)網(wǎng)絡(luò),我們要學(xué)習(xí)里面每一個(gè)節(jié)點(diǎn)在低維空間上的一個(gè)表示。我們希望當(dāng)網(wǎng)絡(luò)在低維空間時(shí),如果兩個(gè)節(jié)點(diǎn)之間的距離很近,它們就一定比較相似,如果它們不是同一個(gè)類型的節(jié)點(diǎn),距離就應(yīng)該比較遠(yuǎn)。

          這個(gè)問(wèn)題為什么比較難呢?這是因?yàn)椋海?)如果我們用 CNN 或者相關(guān)的算法在圖片上做學(xué)習(xí),由于圖片是典型的二維的、有上下之分,每個(gè)點(diǎn)上、下、前、后、左、右是什么很清楚,但是在網(wǎng)絡(luò)中,它是一個(gè)復(fù)雜的拓?fù)浣Y(jié)構(gòu),甚至沒(méi)辦法用上、下描述,只能用拓?fù)浣Y(jié)構(gòu)來(lái)說(shuō)明,或者說(shuō)兩個(gè)節(jié)點(diǎn)的距離有多遠(yuǎn),而沒(méi)有一個(gè)嚴(yán)格的空間的概念。(2)節(jié)點(diǎn)之間沒(méi)有文本那樣的先后關(guān)系;(3) 整個(gè)網(wǎng)絡(luò)是非常動(dòng)態(tài)的,并且可能有一些相關(guān)的信息、相關(guān)的屬性。比如做一個(gè)人的行為分析的話,某個(gè)節(jié)點(diǎn)可能有很多的屬性信息,還有很多網(wǎng)絡(luò)結(jié)構(gòu)的屬性和信息,我們可以把網(wǎng)絡(luò)結(jié)構(gòu)的表示學(xué)出來(lái),還可以把網(wǎng)絡(luò)屬性的表示學(xué)出來(lái),這就有兩種不同的表示。有時(shí)候人們可能還發(fā)出一些圖片、語(yǔ)音等其他媒體的信息,怎么把這些表示都學(xué)出來(lái)非常困難。

          最早在網(wǎng)絡(luò)上做表示學(xué)習(xí)是把整個(gè)研究規(guī)約到一個(gè)很簡(jiǎn)單的 Word2vec 問(wèn)題上,就是我說(shuō)的 DeepWalk 的思路,即用 word2vec 的思路來(lái)做網(wǎng)絡(luò)的表示學(xué)習(xí)。這個(gè)思路非常簡(jiǎn)單,即 word2vec 就是上下位,如果上下位相同的單詞,他的意思就比較相似,于是學(xué)出來(lái)的表示也比較相似,如下圖所示。

          在網(wǎng)絡(luò)表示學(xué)習(xí)中,DeepWalk 的思路是:既然節(jié)點(diǎn)沒(méi)有先后關(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ì)說(shuō)明。最后的參數(shù)學(xué)習(xí)可以用一個(gè)基于梯度的學(xué)習(xí)很快做到。

          這篇文章最初在當(dāng)時(shí)并沒(méi)有引起大規(guī)模的關(guān)注,但是它開啟了一個(gè)在網(wǎng)絡(luò)中做表示學(xué)習(xí)的新紀(jì)元。最初大家覺(jué)得在網(wǎng)絡(luò)中做表示學(xué)習(xí)是一件很麻煩的事,后來(lái)發(fā)現(xiàn)神經(jīng)網(wǎng)絡(luò)可以用在網(wǎng)絡(luò)中,可以學(xué)習(xí)每個(gè)節(jié)點(diǎn)的表示,并且學(xué)到的表示可能可以用于不同的網(wǎng)絡(luò),如 Blog Catalog,使得它的效果還不錯(cuò)。后來(lái)又試了其他的網(wǎng)絡(luò),如 Youtube 中的網(wǎng)絡(luò),發(fā)現(xiàn)效果也不錯(cuò)。后來(lái)就引起了大規(guī)模的相關(guān)的研究,討論怎么來(lái)提高在網(wǎng)絡(luò)上做表學(xué)習(xí)的效果。于是大家就分析 DeepWalk 的一些缺點(diǎn)。

          首先它的上下文是固定的,而它的隨機(jī)游走并沒(méi)有考慮到網(wǎng)絡(luò)的特性,于是后面一大堆的研究,如 LINE 等。下圖中 5 和 6 這兩個(gè)節(jié)點(diǎn)根據(jù)我們?nèi)说男袨閬?lái)看是很相似的。5 和 6 有四個(gè)相近節(jié)點(diǎn)(1、2、3、4),但是 6 和 7 是直連的。如果用剛才的 DeepWalk,即 RandomWalk 在上面隨機(jī)游走,6 和 7 可能距離反而更近,它的相似度反而更高。

          但是根據(jù)人的直覺(jué),5 和 6 顯然更相似,于是 LINE 就加上了一個(gè)二階的相似度,有一階有二階。后來(lái)研究者又把它擴(kuò)展到一個(gè)異構(gòu)網(wǎng)絡(luò)(PTE)上,即這個(gè)網(wǎng)絡(luò)不是單純的一個(gè)網(wǎng)絡(luò),而是一個(gè)異構(gòu)網(wǎng)絡(luò)。后來(lái)有人又給它加上了社交的屬性(Social Information)。在 RandomWalk 中,左邊三角形 x1vt 是一個(gè)閉合三角形,而右邊是一個(gè)開合的三角形,開合的三角形和閉合的三角形的相似度或者 RandomWalk 的度應(yīng)該不一樣,于是就加上了這么一個(gè) biased RandomWalk。把 Performance 在社交的數(shù)據(jù)又進(jìn)一步提高。


          剛才給大家講了這么多 Natural in Bedding 的一些很基本的算法都是感知的,它們本質(zhì)上到底是什么呢?沈華偉(中國(guó)科學(xué)院計(jì)算技術(shù)研究所研究員)老師講的圖神經(jīng)網(wǎng)絡(luò)給出了一個(gè)很好的解釋,其實(shí)它們?cè)?/strong>本質(zhì)上都是在做信通的處理。

          通過(guò)數(shù)學(xué)分析我們發(fā)現(xiàn)最簡(jiǎn)單的網(wǎng)絡(luò)表示學(xué)習(xí)本質(zhì)上都是在做一個(gè)矩陣分解,在做一個(gè)奇異值分解Singular Value Decomposition,SVD,只是分解的形式不一樣,如下圖所示。DeepWalk 分解的是第 1 個(gè)式子,LINE 分解的是第 2 個(gè)式子,PTE 分解了一個(gè)異構(gòu)的網(wǎng)絡(luò),node2vec 分解了一個(gè)更復(fù)雜的網(wǎng)絡(luò),因?yàn)樗锩婵紤]到了三個(gè)節(jié)點(diǎn)形成的矩陣。


          這樣的話我們就可以把剛才給大家看的 DeepWalk 的過(guò)程給定網(wǎng)絡(luò),找到這種隨機(jī)游走的 Context,然后再做 Skip Graphs,直接把這兩步組合在一起就變成一個(gè)矩陣分解,通過(guò)這個(gè)矩陣分解可以直接得到最后的結(jié)果。這里面我們給出了一個(gè)嚴(yán)格的數(shù)學(xué)分析,最后就發(fā)現(xiàn)這個(gè) DeepWalk 在本質(zhì)上就在分析下圖下方的東西。


          更有意思的 LINE 也是在分解一個(gè)矩陣,而且這個(gè)矩陣和 DeepWalk 隨機(jī)游走的矩陣比起來(lái),兩個(gè)式子非常相似,但又不一樣。仔細(xì)看一下會(huì)發(fā)現(xiàn),如果把 DeepWalk(其實(shí)就是 Windows Size,也就是我們的上下文的長(zhǎng)度)設(shè)成 1,它在本質(zhì)上一下子就等于 LINE 了。于是從這個(gè)角度上來(lái)說(shuō),LINE 就變成 DeepWalk 的一個(gè)特例。我剛才講到 PTE 是把 LINE 擴(kuò)展到了異構(gòu)網(wǎng)絡(luò),從某種角度上來(lái)說(shuō),你把異構(gòu)網(wǎng)絡(luò)變成一個(gè)同構(gòu)網(wǎng)絡(luò),變成一個(gè)超級(jí)大的同構(gòu)網(wǎng)絡(luò)。于是 PTE 又可以變成一個(gè) LINE 的特例,從某種角度上來(lái)說(shuō),PTE 又變成了一個(gè) DeepWalk 的一個(gè)特例。


          此外,node2vec 是一個(gè) Biased Random Walks。原來(lái)我們是說(shuō)隨機(jī)游走從u這個(gè)節(jié)點(diǎn)往任何節(jié)點(diǎn)的隨機(jī)游走都是一樣的,如下圖所示。但是現(xiàn)在 node2vec 給出了另外一個(gè)思路:讓寬度優(yōu)先的隨機(jī)游走,可能跟深度優(yōu)先的隨機(jī)游走的概率不要一樣?;蛘吆?jiǎn)單說(shuō),閉合三角形跟開合三角形的隨機(jī)游走的概率不一樣,于是在本質(zhì)上就相當(dāng)于做了兩件事:一個(gè)是 local 的隨機(jī)游走,一個(gè)是 global 的隨機(jī)游走。因?yàn)殚_合的它更容易游走到其他的那些子領(lǐng)域,你比如說(shuō)左邊是個(gè)子領(lǐng)域,右邊是另一個(gè)子領(lǐng)域,于是它相當(dāng)于開合的就游走到兩個(gè)子領(lǐng)域里面去了,而閉合的就更容易在同樣一個(gè)子領(lǐng)域里面流走。這就是 node2vec 很巧妙的地方。node2vec 的思路非常簡(jiǎn)單,優(yōu)美的地方是我們同樣可以通過(guò)一個(gè)數(shù)據(jù)分析,把它歸約到一個(gè)矩陣分解上。


          這樣就把剛才的矩陣分解統(tǒng)一起來(lái)了。我們可以說(shuō)所有的這種網(wǎng)絡(luò)表示學(xué)習(xí)或者說(shuō)很多表示學(xué)習(xí)算法都可以歸約到一個(gè)簡(jiǎn)單的矩陣分解,或者說(shuō) SVD 的一個(gè)過(guò)程。

          但是這樣又出現(xiàn)了新的問(wèn)題:我們現(xiàn)在怎么來(lái)做 GNN 或者圖神經(jīng)網(wǎng)絡(luò)呢?畢竟在圖神經(jīng)網(wǎng)絡(luò)中要結(jié)合網(wǎng)絡(luò)化的信息,如剛才提到的網(wǎng)絡(luò)表示學(xué)習(xí)結(jié)合的是一個(gè)上下文信息,用上下文信息做這種網(wǎng)絡(luò)表示學(xué)習(xí),怎么真的把這種網(wǎng)絡(luò)結(jié)構(gòu)化的信息利用上,而且要讓他速度特別快呢?

          我們首先做了一個(gè)很巧妙的事情,我們做了一個(gè)被稱為 ProNE 的算法,如下圖所示。


          這個(gè)算法是什么呢?首先,構(gòu)造一個(gè)非常稀疏的矩陣;然后,在這個(gè)稀疏矩陣?yán)锩嬗脛偛诺姆椒ㄗ鲆粋€(gè)矩陣分解,做一個(gè) SVD 分解;最后,在 SVD 分解的基礎(chǔ)上做普傳播,也就是說(shuō)我們來(lái)做傳播,于是每一個(gè)節(jié)點(diǎn)傳播的東西就變成了表示學(xué)習(xí)學(xué)到的結(jié)果,而不是傳播本身。于是就相當(dāng)于把表示學(xué)習(xí)學(xué)到的低維表示在圖上做傳播。

          大家可以想象一下,如果我們做一個(gè)特別快速的 SVD 分解(如做一個(gè)線性的算法,基本做到點(diǎn)和邊成線性關(guān)系),同時(shí),把剛才學(xué)到的低維表示在所有的邊上做傳播,事實(shí)上跟這個(gè)邊又呈線性關(guān)系,于是整個(gè)算法可以做成一個(gè)跟網(wǎng)絡(luò)節(jié)點(diǎn)和邊呈線性關(guān)系的一個(gè)算法,這樣的話整個(gè)算法的模型會(huì)就可以做得非??臁S腥颂岬秸f(shuō)這個(gè)可能復(fù)雜度很高,對(duì)此我要再解釋一下,如果我們做一個(gè)非??焖俚?SVD 分解,我們可以做一個(gè)線性算法,比原來(lái)傳統(tǒng)的 SVD 算法快兩個(gè)數(shù)量級(jí),它基本上是個(gè)線性關(guān)系。舉一個(gè)例子。下圖是我們跑出來(lái)的一個(gè)結(jié)果。我們是 ProNE 加上普傳播得到的一個(gè)結(jié)果,可以看到結(jié)果比原來(lái)最快的LINE快一個(gè)數(shù)量級(jí),比 node2vec 快兩個(gè)數(shù)量級(jí)。而且我們最近還發(fā)現(xiàn)另外一個(gè)算法,它可以比原來(lái) randomize 的 TSVD 分解還要再快一個(gè)數(shù)量級(jí),甚至加上譜傳播都可以比其他兩個(gè)速度還要快。


          而且在超大規(guī)模的網(wǎng)絡(luò)中,比如說(shuō)百萬(wàn)級(jí)的網(wǎng)絡(luò)上,我們基本上幾分鐘就可以把它全部跑完,把網(wǎng)絡(luò)表示的結(jié)果全部跑完。更有意思的是效果還可以做的非常好。大家可以看一下下面這個(gè)效果,我們基本上不用任何的普傳播,只用 SMF 時(shí),即只用稀疏矩陣分解的時(shí)候,就可以做到跟原來(lái)的算法得到的效果差不多。如果用了的話,就比原來(lái)的算法明顯好得多。這樣就很優(yōu)美。我們可以在擁有上億的點(diǎn)的圖上,用單機(jī)花 29 個(gè)小時(shí)跑出一個(gè)結(jié)果,比原來(lái)的結(jié)果的精度還要好、速度還比較快。

          以上就是快速回顧了一下網(wǎng)絡(luò)表示學(xué)習(xí)的一些東西。這里主要是講的 NetMF(也就是矩陣分解)及傳播的一些東西,如下圖所示。下圖中間這一部分沒(méi)有講,大家有興趣也可以去看一下。我們主要是把 NetMF 做了稀疏化,做了一個(gè)理論分析,給大家可以在理論上做了一個(gè)保證。


          現(xiàn)在是 GNN 的時(shí)代
          今天想跟大家分享一下更重要的是:現(xiàn)在其實(shí)是在一個(gè) GNN 的時(shí)代。GNN 從 2017 年 Max Welling 的論文發(fā)表出來(lái)以后,已經(jīng)越來(lái)越火,越來(lái)越多人提出了很多問(wèn)題,說(shuō)現(xiàn)在已經(jīng)進(jìn)入一個(gè) GNN 的“坑”。那么,GNN 的本質(zhì)是什么呢?核心、簡(jiǎn)單來(lái)講,GNN 希望把原來(lái)的淺層的這種網(wǎng)絡(luò)變得更加深層。

          這個(gè)問(wèn)題現(xiàn)在其實(shí)是個(gè)悖論。首先,很多人說(shuō)我們要把原來(lái)的 Shallow 的神經(jīng)網(wǎng)絡(luò)變成深度的神經(jīng)網(wǎng)絡(luò),這樣可能會(huì)提高效果,但是這導(dǎo)致了兩個(gè)嚴(yán)重的問(wèn)題。

          第一個(gè)嚴(yán)重的問(wèn)題是網(wǎng)絡(luò)到底要多深才算深?比如說(shuō)在網(wǎng)絡(luò)中,假如我們真的做了很多深層次的話,如果每一次深層次的都是在做一個(gè)鄰居節(jié)點(diǎn)的傳播,這時(shí)候深層次、很深的網(wǎng)絡(luò)會(huì)導(dǎo)致這個(gè)信息就擴(kuò)散整個(gè)網(wǎng)絡(luò)了,這個(gè)時(shí)候就導(dǎo)致一個(gè)過(guò)平滑(over-smooth)的問(wèn)題,而不是過(guò)擬合 (Overfitting)。另外一個(gè)問(wèn)題就是整個(gè)網(wǎng)絡(luò)的深度學(xué)習(xí)假如都像剛才都是矩陣分解,如果沒(méi)有一個(gè)非線性的變化,所有的矩陣分解就讓它深度下去,它其實(shí)本質(zhì)上還是一個(gè)矩陣分解。這個(gè)到底是怎么回事呢?我們?cè)谶@里做一定的分析。在 GNN 中我們其實(shí)分解的就是下圖這樣一個(gè)簡(jiǎn)單的矩陣。這是一個(gè)鄰接矩陣,H 是上一層的隱變量,W 是權(quán)重,激活函數(shù)是非線性的。其實(shí)之前有研究已經(jīng)證明了,GCN 如果沒(méi)有這個(gè)激活函數(shù)的話,整個(gè) GCN 其實(shí)可以退化成一個(gè)非常簡(jiǎn)單的矩陣,而且效果還有可能更好。所以這也是一個(gè)悖論,等一下我們也在后面再探討一下。

          在探討之前,我們先快速說(shuō)明一下 GCN 的本質(zhì)。GCN 的本質(zhì)其實(shí)就是在一個(gè)網(wǎng)絡(luò)中把鄰居節(jié)點(diǎn)的表示信息放到自己當(dāng)前節(jié)點(diǎn)上。比如說(shuō)對(duì)于下圖中 v 節(jié)點(diǎn)來(lái)講,它有鄰居節(jié)點(diǎn) a、b、c、d、e,每一個(gè)節(jié)點(diǎn)可能都有一個(gè)表示(從 ha 到 he)。


          怎么把鄰居節(jié)點(diǎn)的引表示通過(guò)某種方法或某種函數(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ù)。

          基于這樣的思想,后來(lái)在最早的 GCN 相關(guān)的論文上也有很多的延續(xù),如 GraphSage。GraphSage 的思想非常簡(jiǎn)單,它把原來(lái)單純的當(dāng)前節(jié)點(diǎn)和其他所有節(jié)點(diǎn)的聚合整合到一起了,變成當(dāng)前節(jié)點(diǎn)的表示和其他所有節(jié)點(diǎn)的表示連接在一起,如下圖所示。這樣的話效果反而提高了。

          這個(gè)思路后來(lái)又被 GAT 給打敗了,GAT 是什么?我們現(xiàn)在 aggregate 的時(shí)候,也就是每個(gè)節(jié)點(diǎn)信息往中間節(jié)點(diǎn)傳的時(shí)候,它的權(quán)重不一樣。從 Social network 的角度來(lái)說(shuō),它的本質(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)在再次問(wèn)自己一個(gè)問(wèn)題:所有的這些卷積網(wǎng)絡(luò)的本質(zhì)是什么?剛才說(shuō)了,網(wǎng)絡(luò)表示學(xué)習(xí)的本質(zhì)是一個(gè)矩陣分解,那卷積網(wǎng)絡(luò)的本質(zhì)是什么?而且卷積網(wǎng)絡(luò)面臨著很多問(wèn)題,除了我們經(jīng)常說(shuō)的機(jī)器學(xué)習(xí)普遍存在的過(guò)擬合問(wèn)題,這里還存在更重要的問(wèn)題——過(guò)平滑及不健壯的問(wèn)題。因?yàn)樵诰W(wǎng)絡(luò)中可能存在鏈接,甚至很多噪聲鏈接,這些鏈接可能會(huì)大幅影響效果,這個(gè)時(shí)候該怎么辦?

          我們先來(lái)看一看下圖的分析。GCN 每一層的傳播在本質(zhì)上都是一個(gè)矩陣分解,從前面的分析可以看到,對(duì)矩陣分解其實(shí)可以進(jìn)一步做一定的分析,把矩陣分解變成一個(gè)信通問(wèn)題。而借助信通的思路其實(shí)還有一個(gè)很有意思的擴(kuò)展,我們可以把網(wǎng)絡(luò)中的鄰接矩陣 A 做一定的變換,我們可以在前面做一定的信通的變換,在后面也可以做信通的變換。這樣的話整個(gè)網(wǎng)絡(luò)其實(shí)可以變成一個(gè) Signal Rescaling 的一個(gè)思路。

          這樣的好處是可以把原來(lái)的每一層都做一個(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 全部歸一化了起來(lái)。更優(yōu)美的是基于這樣的思想,其實(shí)我們?cè)谝院缶涂梢圆挥醚芯靠桃馊パ芯?GCN 的這種結(jié)構(gòu)、架構(gòu),而是去研究在 GCN 里的不同的操作。我們可以基于剛才的函數(shù)對(duì)里面的 P、Q 做變換,或者對(duì) L 值直接做變換。這樣的話我們就可以對(duì)整個(gè) GCN 做三種操作:Rescale,Re-normalize、Propagate,如下圖所示。

          前面是前者,我們可以做加在 pre 上,也就是說(shuō)我們?cè)谧隼绽狗纸庵?,可以先做一個(gè) Rescale 把 P 升上去,也可以在做完拉普拉斯分解以后做 Re-normalize,還可以進(jìn)一步再做一個(gè) Post Propagation。于是我們自然就把 P、L、Q 給分解了。分解完了最大的好處是 GCN 就是一個(gè)簡(jiǎn)單的拉普拉斯矩陣的分解,而 GAT 既包括分解,也包括 normalization,還包括 Rescaling。而 ASGCN 同樣可以被歸約成一個(gè) normalization,加上一個(gè) propagation。大家可以看到這三個(gè)操作在不同的方法中,事實(shí)上都相當(dāng)于這三個(gè)原子操作的一個(gè)組合。

          我們還可以進(jìn)一步看,GraphSAGE 就相當(dāng)于構(gòu)造了一個(gè) L,它沒(méi)有做 Rescaling,而是先做了一個(gè) normalization,再做了一個(gè) propagation。而 FastGCN 先做了 normalization,再做了一個(gè) propagation,如下圖所示。

          甚至我們可以把所有的這些卷積網(wǎng)絡(luò)的方法全部用 signal Rescaling 的方法把它統(tǒng)一起來(lái),而統(tǒng)一的思想就是以上的三個(gè)操作,就用三個(gè) operation 把所有的操作都給歸一化起來(lái),如下圖所示。從這個(gè)角度上大家可以看到,在網(wǎng)絡(luò)表示學(xué)習(xí)方面,我們把它歸一化到矩陣分解,用矩陣分解把網(wǎng)絡(luò)表示學(xué)習(xí)都給歸一化起來(lái)了。而在卷積網(wǎng)絡(luò)中或者是叫圖神經(jīng)網(wǎng)絡(luò)(當(dāng)然更多的是卷積網(wǎng)絡(luò))中,我們就用三個(gè)操作+矩陣分解,用矩陣分解把形式化統(tǒng)一,然后用三個(gè)操作把不同的方法全部給統(tǒng)一起來(lái)。于是這個(gè)時(shí)候我們有了一個(gè)統(tǒng)一的框架,基本上都是矩陣分解加不同的一個(gè)操作(這里更多的是 signal Rescaling)這么一個(gè)思路,再把它統(tǒng)一起來(lái)。


          我們還做了一些實(shí)驗(yàn)。我們發(fā)現(xiàn)結(jié)果也比以前確實(shí)要好,如下圖所示。

          我們加上不同的操作以后,前面有 rescaling,post 叫 propagation,還有 normalization,我們用不同的操作加在上面可以組合成不同的方法。而這些不同的方法可以用一個(gè) AutoML 的方法來(lái)做 Tune,這樣就比原來(lái)歸一化表示的其他方法的效果都要好。從效果上我們可以得到更好的一個(gè)結(jié)果。這樣就可能解決“在數(shù)學(xué)上的分析很漂亮,我們都說(shuō)是一個(gè) signal Rescaling 的問(wèn)題,但是我們?cè)趺醋尳Y(jié)果真的比原來(lái)好很多,這個(gè)時(shí)候就有很大的一個(gè)麻煩”這個(gè)問(wèn)題。關(guān)于這一部分的很多細(xì)節(jié)沈華偉老師講了很多,所以我在這里跳過(guò)一些,有興趣的可以查看相關(guān)的視頻。

          接下來(lái)我們來(lái)看一下最近的一些思路。最近大家都知道自然語(yǔ)言處理及很多其他領(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ī)視覺(jué)(CV)方向也有很多相關(guān)的研究,最近一個(gè)很重要的進(jìn)展就是 Contrastive Learning,即利用無(wú)監(jiān)督學(xué)習(xí)(Unsupervised Learning)的方法或者是一個(gè)非常簡(jiǎn)單的 Contrastive Learning 的思路來(lái)做的效果更好。MoCo 在 2019 年年底出來(lái),基本上一下子就做到無(wú)監(jiān)督學(xué)習(xí)的結(jié)果基本上就可以跟監(jiān)督學(xué)習(xí)(Supervised learning)的結(jié)果差不了太多。后來(lái) Geoffrey Hinton 團(tuán)隊(duì)的 SimCLR 又打敗了 MoCo,最近 MoCo2 又把效果進(jìn)一步提高,打敗了 SimCLR。它們的核心思想都 Contrastive Learning,本質(zhì)上都是在用 self learning 來(lái)做表示學(xué)習(xí),類似于做一個(gè)預(yù)訓(xùn)練。

          我認(rèn)為這方面是一個(gè)可能的方向,未來(lái)在這方面可能會(huì)有一些發(fā)展。但是怎么跟網(wǎng)絡(luò)化的數(shù)據(jù)、跟圖掛鉤,就是把圖跟預(yù)訓(xùn)練掛鉤,這方面其實(shí)還是一個(gè)很大的挑戰(zhàn)。所以總體來(lái)講,在 GNN 時(shí)代,如果光從算法的來(lái)考慮,我覺(jué)得值得考慮的其實(shí)有兩大核心的挑戰(zhàn):(1)怎么把預(yù)訓(xùn)練思路,包括剛才的 Contrastive Learning 和圖結(jié)合起來(lái)。其實(shí)現(xiàn)在還沒(méi)有一個(gè)特別里程碑式的進(jìn)展。(2)我們?cè)谶@里面怎么解決它過(guò)平滑、過(guò)擬合、不健壯的問(wèn)題。這幾個(gè)問(wèn)題怎么解決是很難的問(wèn)題。

          GNN+推理會(huì)產(chǎn)生什么


          我們現(xiàn)在再來(lái)看一看 GNN 怎么和推理結(jié)合起來(lái)。說(shuō)到推理,可能有些人說(shuō)這個(gè)問(wèn)題太大了,所以我們先從一個(gè)非常簡(jiǎn)單的問(wèn)題(Multi-hop Question Answering,QA)來(lái)說(shuō)。

          這個(gè)問(wèn)題是個(gè)自然語(yǔ)言處理的問(wèn)題。假如我們要解決一個(gè)問(wèn)題“找到一個(gè) 2003 年在洛杉磯的 Quality 咖啡館拍過(guò)電影的導(dǎo)演(Who is the director of the 2003 film which has scenes in it filmed at The Quality Cafe in Los Angeles)”。如果是人來(lái)解決這個(gè)問(wèn)題的話,可能是先追溯相關(guān)的文檔,如 Quality 咖啡館的介紹文檔,洛杉磯的維基百科頁(yè)面等,我們可能會(huì)從中找到相關(guān)的電影,如 Old School,在這個(gè)電影的介紹文檔里面,我們可能會(huì)進(jìn)一步找到該電影的導(dǎo)演 Todd Phillips,經(jīng)過(guò)比對(duì)電影的拍攝時(shí)間 2003 年,最終確定答案是 Todd Phillips,具體流程如下圖所示。

          但是計(jì)算機(jī)會(huì)怎么做?計(jì)算機(jī)不像人,計(jì)算機(jī)沒(méi)有這么聰明。如果我們用一個(gè)簡(jiǎn)單的方法,也就是說(shuō)我們用卷積神經(jīng)網(wǎng)絡(luò)的方法來(lái)做的話,應(yīng)該怎么做?我們可以用 BERT 或 XLNet,BERT 可以做到 512 的 Context 了,我們現(xiàn)在甚至可以做到 1024、2048 的 Context,當(dāng)然訓(xùn)練要求就更高了,甚至沒(méi)有足夠的機(jī)器來(lái)完成。但是這里面核心的一個(gè)問(wèn)題不是說(shuō)它能不能解的問(wèn)題(當(dāng)然第 1 個(gè)方面是它能不能解),而是像人那樣解決這個(gè)問(wèn)題,即需要人的推理過(guò)程,但 BERT 可能根本就解決不了。

          第 2 個(gè)更難的是缺乏知識(shí)層面上的一個(gè)推理能力,尤其是缺乏可解釋性。我們到最后得到的一個(gè)可能的結(jié)果:BERT 給出了一個(gè)和真實(shí)結(jié)果比較相似的結(jié)果,說(shuō)這就是答案,然后就結(jié)束了。要想完美解決這個(gè)問(wèn)題,需要有一個(gè)推理路徑或者一個(gè)子圖,我們?cè)趺丛谶@方面來(lái)做這樣的事情?這很難。怎么辦呢?我們來(lái)看一看人的推理過(guò)程。人的推理過(guò)程是:人在拿到這個(gè)問(wèn)題以后,首先可能找到 Quality 咖啡館相關(guān)的文檔,這是最好的一個(gè)文檔(因?yàn)槁迳即壥械南嚓P(guān)文檔不是一個(gè)好的初始文檔)。找到 Quality 咖啡館相關(guān)的文檔以后,我們可以從里面找到 old school 的相關(guān)文檔,然后從 old school 的文檔中可以找到 Todd Phillips。整個(gè)過(guò)程有好幾個(gè)步驟,如下圖所示。

          我們?cè)趺窗巡襟E形式化成一個(gè)計(jì)算機(jī)或者說(shuō)機(jī)器學(xué)習(xí)能做的事情就是我們下一步要探討的。

          我們把這個(gè)問(wèn)題跟認(rèn)知科學(xué)中的一個(gè)很重要的理論——雙通道理論(Dual Process Theory)結(jié)合起來(lái)。為什么和雙通道理論結(jié)合起來(lái)呢?人在做推理的時(shí)候,我們發(fā)現(xiàn)有兩個(gè)系統(tǒng):System 1 和 System 2。System 1 被叫作直覺(jué)系統(tǒng),直覺(jué)系統(tǒng)是說(shuō)給定某個(gè)關(guān)系以后,只要算出相似度,就立馬把相似度給出來(lái)。比如當(dāng)大家聽到 3 月 29 號(hào)下午有一個(gè)圖神經(jīng)網(wǎng)絡(luò)的研討會(huì)時(shí),大家覺(jué)得有興趣,決定要聽一下。System 2 會(huì)做進(jìn)一步的推理、邏輯思考、決策。它可能會(huì)想下午還要帶小孩出去玩,或者下午還有另外一門課,這個(gè)課不能翹,于是你最后說(shuō)算了,下午不去了,最后你就不參加了。所以 System 2 它是帶有邏輯思考的。

          以上就是人思考問(wèn)題的過(guò)程。AI 怎么跟人來(lái)結(jié)合?我們?cè)谌ツ晏接戇@個(gè)問(wèn)題的時(shí)候,正好 Yoshua Bengio 他們也在聊這個(gè)問(wèn)題,他在去年的 NIPS 上更直接地講了:“深度學(xué)習(xí)應(yīng)該直接從 System 1 做到 System 2?,F(xiàn)在 System 1 主要是在做直覺(jué)式(Intuitive)的思考。而 System 2 應(yīng)該做一些邏輯加上一些推理,再加上一些 planning 的思考”如下圖所示。

          他直接說(shuō)的是說(shuō)要做 System 2 深度學(xué)習(xí)。我們當(dāng)時(shí)其實(shí)還沒(méi)有直接提 System 2 的深度學(xué)習(xí)。我們講的是“機(jī)器學(xué)習(xí)跟人的邏輯思考,甚至加上常識(shí)知識(shí)圖譜,兩結(jié)合起來(lái)”。在這個(gè)基礎(chǔ)上,我們?cè)谌ツ昶鋵?shí)跟 Yoshua Bengio 他們同時(shí)發(fā)了兩篇文章。

          我們當(dāng)時(shí)做了什么?我們就用 System 1 來(lái)做知識(shí)擴(kuò)展,來(lái)做直覺(jué)的知識(shí)擴(kuò)展;用 System 2 來(lái)做決策,我們就把它叫作
          認(rèn)知圖譜Cognitive Graph。這個(gè)思想用剛才那個(gè)例子來(lái)說(shuō)大概是下面這樣。


          首先,回到剛才那個(gè)問(wèn)題,我們可以很快找到這個(gè)問(wèn)題中的實(shí)體,這個(gè)很簡(jiǎn)單,可以用實(shí)體識(shí)別或者用自然語(yǔ)言處理做到。System 1 可以利用知識(shí)圖譜或 BERT、通過(guò) Quality 咖啡館自動(dòng)做擴(kuò)展,如說(shuō)我們可以找到 old school Gone in 60 seconds 這兩部電影。然后 System 2 在這上面來(lái)做決策。old school 是我們要的答案嗎?Gone in 60 seconds 是我們要的答案嗎?如果不是,System 2 就考慮要不要把信息回放到 System 1 中,給 System 1 做擴(kuò)展。System 1 可能繼續(xù)做擴(kuò)展,比如 old school 是 Todd Phillips 導(dǎo)演的,System 2 對(duì)此進(jìn)一步做決策說(shuō) Todd Phillips 就是要找的,于是分析就停止了。這就是一個(gè)基本的認(rèn)知圖譜的思想。

          最后怎么實(shí)現(xiàn)呢?對(duì)于 System 1,我們剛才說(shuō)做擴(kuò)展,如果我們回到深度學(xué)習(xí),這就跟 Yoshua Bengio 的思路基本上結(jié)合起來(lái)了。System 1 還可以用表示學(xué)習(xí)的各種方法,如可以用 BERT、ProNE、NetFM 甚至 DeepWalk 等方法。我們可以做一個(gè)簡(jiǎn)單的相似度的擴(kuò)展,于是我們就有了 System 1。

          System 1 是做知識(shí)的擴(kuò)展,System 2 是做決策和推理的。對(duì) System 2 該怎處理呢?我們把 System 2 做成下圖所示的樣子。System 2 里面核心的東西有一個(gè)推理和決策功能,于是我們就用卷積神經(jīng)網(wǎng)絡(luò)或者圖神經(jīng)網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)。這里面相當(dāng)于匯聚了所有的信息,它把 System 1 中的拿出來(lái)的各種信息匯聚過(guò)來(lái),判斷這個(gè)是不是我需要的答案,最后做決策。于是我們就把兩個(gè)神經(jīng)網(wǎng)絡(luò)系統(tǒng)給整合到一起了,我們把它叫做認(rèn)知圖譜(Cognitive Graph)。


          在具體實(shí)現(xiàn)方面,System 1 可以用 BERT 做幾個(gè) top-k 的 negative threshold 的相似度的查找,如下圖所示。


          找到以后,我們把它作為 Cognitive Graph 拿給 System 2 來(lái)做決策。System 2 就相當(dāng)于做直接做一個(gè) prediction,相當(dāng)于學(xué)一個(gè) prediction 的模型。用 GNN 直接來(lái)做預(yù)測(cè)。如果是答案就結(jié)束,如果不是答案,但是有用,就把它交給 System 1 來(lái)接著做。具體結(jié)構(gòu)如下圖所示。

          以上就是一個(gè)基本的思路。

          后來(lái)我們?cè)谌ツ甑臅r(shí)候去參加了 SQuAD 的 HotpotQA 的一個(gè)多跳的競(jìng)賽。就在這個(gè)競(jìng)賽中,當(dāng)時(shí)我們一下子拿到了第 1 名,而且在第 1 名的位置上保持了三個(gè)月。大家可以看一下下圖這個(gè)結(jié)果可以發(fā)現(xiàn)更有意思的事:CogQA(CogGraph)的結(jié)果比當(dāng)時(shí)的 BERT 好 50%。CogQA 可以做到 49%,而當(dāng)時(shí)的 BERT 在 F1 值上最好的結(jié)果是 31%。更優(yōu)美的是它給出了一個(gè)很強(qiáng)的可解釋性,我前面介紹了可解釋性非常重要,尤其是在多跳的情況下。首先,對(duì)多跳的效果的提升是很明顯的,如 hop 跳得如果越高的話,即跳出越多的話,CogQA 的結(jié)果就明顯的比原來(lái)的方法要好得多。其次,它的可解釋性非常強(qiáng)。比如我給你一個(gè)答案,這個(gè)答案是 40,如下圖左下角所示。這個(gè)事實(shí)大家可以看到,而我可以告訴你為什么能拿到 40。我是先找到這 Ken Pruitt,然后再找到 Florida Senate,最后找到 40。這里有一個(gè)可解釋、可追溯的這么一個(gè)結(jié)果,一下就把可解釋性大幅提高。它甚至可以從本質(zhì)上幫助機(jī)器學(xué)習(xí)。


          機(jī)器學(xué)習(xí)原來(lái)是依靠某個(gè)信息做預(yù)測(cè),這個(gè)時(shí)候可能沒(méi)有擴(kuò)展的信息,而依靠認(rèn)知圖譜,可以用 system 1 擴(kuò)展出來(lái)新的信息,如果拓展的信息精度不夠高,還可以通過(guò)做一層推理給出更多的信息,這個(gè)時(shí)候機(jī)器學(xué)習(xí)系統(tǒng)可以結(jié)合更多的信息再來(lái)做預(yù)測(cè),這可能又進(jìn)一步提高了效果。當(dāng)機(jī)器學(xué)習(xí)系統(tǒng)做了一個(gè)錯(cuò)誤的預(yù)測(cè)以后,認(rèn)知圖譜還可以回溯錯(cuò)誤是怎么產(chǎn)生的。這個(gè)方面有很多相關(guān)的應(yīng)用。

          有人可能會(huì)說(shuō),這個(gè)是不是只能做問(wèn)答?不是的,它既可以做問(wèn)答,也可以做知識(shí)圖譜的補(bǔ)齊,下圖左邊是一個(gè)知識(shí)圖譜,右邊是基于剛才的模型來(lái)做知識(shí)圖譜的一個(gè)補(bǔ)齊,這是一個(gè)基本的一個(gè)思路。

          這就是認(rèn)知圖譜怎么和推理結(jié)合在一起。

          GNN 的挑戰(zhàn)與未來(lái)


          未來(lái)我們有很多挑戰(zhàn),但是也有很多機(jī)遇。

          張鈸院士在 2015 年提出人工智能基本上在做兩件事。

          第一件事:做知識(shí)的表示和知識(shí)的推理。其實(shí)知識(shí)表示和知識(shí)推理在 20 世紀(jì) 50 年代第一個(gè)人工智能時(shí)代就已經(jīng)有了。當(dāng)時(shí)的推理就已經(jīng)很先進(jìn)了。但是一直沒(méi)有發(fā)展起來(lái),一個(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è)頂峰,所以我說(shuō)這是一個(gè)感知時(shí)代的頂峰。


          現(xiàn)在人工智能最大的問(wèn)題缺乏可解釋性,而且缺乏健壯。我剛才講了,存在一個(gè)噪聲可能就會(huì)導(dǎo)致整個(gè)網(wǎng)絡(luò)的表示學(xué)習(xí)的結(jié)果就不行了,甚至缺乏這種可信的結(jié)果和可擴(kuò)展的結(jié)果。這些方面都需要我們做進(jìn)一步的研究,所以當(dāng)時(shí)張?jiān)菏烤吞岢鲆龅谌斯ぶ悄?。DARPA 在 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)我們?cè)趺锤X科學(xué)、腦啟發(fā)、腦認(rèn)知的方法結(jié)合起來(lái)。所以剛才我拋磚引玉給了一個(gè)思想,即我們用認(rèn)知圖譜這種思想,可能可以把人的常識(shí)知識(shí)和一些推理邏輯結(jié)合到深度學(xué)習(xí)中,甚至可以把一些知識(shí)的表示也結(jié)合到里面。這樣的話“認(rèn)知+推理”就是未來(lái)。這里面還有一個(gè)核心的基石:要
          建造萬(wàn)億級(jí)的常識(shí)知識(shí)圖譜,這是我們必須要做的。這里面路還非常遠(yuǎn),我也非常歡迎大家一起加入來(lái)做這方面的研究和探討。

          這里面再次拋磚引玉,提一下幾個(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í)圖譜來(lái)幫助 BERT 的預(yù)訓(xùn)練。當(dāng)然,我不是說(shuō)它是最好的,但它們都提出了一個(gè)思路,講到了怎么把表示學(xué)習(xí)和 GNN 結(jié)合起來(lái),這是很重要的一些事情。

          下圖列出了一些相關(guān)的論文,還有一兩篇是我們沒(méi)有發(fā)表的文章,包括剛才說(shuō)的 Signal Rescaling,其實(shí)我們?cè)谀瞧恼吕锩孀隽撕芏鄶?shù)學(xué)分析。

          本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
          打開APP,閱讀全文并永久保存 查看更多類似文章
          猜你喜歡
          類似文章
          生活服務(wù)
          分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
          綁定賬號(hào)成功
          后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
          如果VIP功能使用有故障,
          可點(diǎn)擊這里聯(lián)系客服!

          聯(lián)系客服