一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一個(gè)更直觀的角度對(duì)當(dāng)前經(jīng)典流行的GNN網(wǎng)絡(luò)

新機(jī)器視覺(jué) ? 來(lái)源:極市平臺(tái) ? 作者:極市平臺(tái) ? 2021-06-18 11:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

近年來(lái),深度學(xué)習(xí)領(lǐng)域關(guān)于圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Networks,GNN)的研究熱情日益高漲,圖神經(jīng)網(wǎng)絡(luò)已經(jīng)成為各大深度學(xué)習(xí)頂會(huì)的研究熱點(diǎn)。GNN處理非結(jié)構(gòu)化數(shù)據(jù)時(shí)的出色能力使其在網(wǎng)絡(luò)數(shù)據(jù)分析、推薦系統(tǒng)、物理建模、自然語(yǔ)言處理和圖上的組合優(yōu)化問(wèn)題方面都取得了新的突破。圖神經(jīng)網(wǎng)絡(luò)有很多比較好的綜述[1][2][3]可以參考,更多的論文可以參考清華大學(xué)整理的GNN paper list[4] 。本篇文章將從一個(gè)更直觀的角度對(duì)當(dāng)前經(jīng)典流行的GNN網(wǎng)絡(luò),包括GCN、GraphSAGE、GAT、GAE以及graph pooling策略DiffPool等等做一個(gè)簡(jiǎn)單的小結(jié)。

筆者注:行文如有錯(cuò)誤或者表述不當(dāng)之處,還望批評(píng)指正!

一、為什么需要圖神經(jīng)網(wǎng)絡(luò)?

隨著機(jī)器學(xué)習(xí)、深度學(xué)習(xí)的發(fā)展,語(yǔ)音、圖像、自然語(yǔ)言處理逐漸取得了很大的突破,然而語(yǔ)音、圖像、文本都是很簡(jiǎn)單的序列或者網(wǎng)格數(shù)據(jù),是很結(jié)構(gòu)化的數(shù)據(jù),深度學(xué)習(xí)很善于處理該種類(lèi)型的數(shù)據(jù)(圖1)。

361203c0-cf69-11eb-9e57-12bb97331649.jpg

圖1然而現(xiàn)實(shí)世界中并不是所有的事物都可以表示成一個(gè)序列或者一個(gè)網(wǎng)格,例如社交網(wǎng)絡(luò)、知識(shí)圖譜、復(fù)雜的文件系統(tǒng)等(圖2),也就是說(shuō)很多事物都是非結(jié)構(gòu)化的。

3636433e-cf69-11eb-9e57-12bb97331649.jpg

圖2相比于簡(jiǎn)單的文本和圖像,這種網(wǎng)絡(luò)類(lèi)型的非結(jié)構(gòu)化的數(shù)據(jù)非常復(fù)雜,處理它的難點(diǎn)包括:

圖的大小是任意的,圖的拓?fù)浣Y(jié)構(gòu)復(fù)雜,沒(méi)有像圖像一樣的空間局部性

圖沒(méi)有固定的節(jié)點(diǎn)順序,或者說(shuō)沒(méi)有一個(gè)參考節(jié)點(diǎn)

圖經(jīng)常是動(dòng)態(tài)圖,而且包含多模態(tài)的特征

那么對(duì)于這類(lèi)數(shù)據(jù)我們?cè)撊绾谓D??能否將深度學(xué)習(xí)進(jìn)行擴(kuò)展使得能夠建模該類(lèi)數(shù)據(jù)呢?這些問(wèn)題促使了圖神經(jīng)網(wǎng)絡(luò)的出現(xiàn)與發(fā)展。

二. 圖神經(jīng)網(wǎng)絡(luò)是什么樣子的?

相比較于神經(jīng)網(wǎng)絡(luò)最基本的網(wǎng)絡(luò)結(jié)構(gòu)全連接層(MLP),特征矩陣乘以權(quán)重矩陣,圖神經(jīng)網(wǎng)絡(luò)多了一個(gè)鄰接矩陣。計(jì)算形式很簡(jiǎn)單,三個(gè)矩陣相乘再加上一個(gè)非線性變換(圖3)。

365740c0-cf69-11eb-9e57-12bb97331649.jpg

圖3因此一個(gè)比較常見(jiàn)的圖神經(jīng)網(wǎng)絡(luò)的應(yīng)用模式如下圖(圖4),輸入是一個(gè)圖,經(jīng)過(guò)多層圖卷積等各種操作以及激活函數(shù),最終得到各個(gè)節(jié)點(diǎn)的表示,以便于進(jìn)行節(jié)點(diǎn)分類(lèi)、鏈接預(yù)測(cè)、圖與子圖的生成等等任務(wù)。

3694975e-cf69-11eb-9e57-12bb97331649.jpg

圖4上面是一個(gè)對(duì)圖神經(jīng)網(wǎng)絡(luò)比較簡(jiǎn)單直觀的感受與理解,實(shí)際其背后的原理邏輯還是比較復(fù)雜的,這個(gè)后面再慢慢細(xì)說(shuō),接下來(lái)將以幾個(gè)經(jīng)典的GNN models為線來(lái)介紹圖神經(jīng)網(wǎng)絡(luò)的發(fā)展歷程

三、圖神經(jīng)網(wǎng)絡(luò)的幾個(gè)經(jīng)典模型與發(fā)展

1 . Graph Convolution Networks(GCN)[5]GCN可謂是圖神經(jīng)網(wǎng)絡(luò)的“開(kāi)山之作”,它首次將圖像處理中的卷積操作簡(jiǎn)單的用到圖結(jié)構(gòu)數(shù)據(jù)處理中來(lái),并且給出了具體的推導(dǎo),這里面涉及到復(fù)雜的譜圖理論,具體推到可以參考[6][7]。推導(dǎo)過(guò)程還是比較復(fù)雜的,然而最后的結(jié)果卻非常簡(jiǎn)單( 圖5)。

36a68f86-cf69-11eb-9e57-12bb97331649.jpg

圖5我們來(lái)看一下這個(gè)式子,天吶,這不就是聚合鄰居節(jié)點(diǎn)的特征然后做一個(gè)線性變換嗎?沒(méi)錯(cuò),確實(shí)是這樣,同時(shí)為了使得GCN能夠捕捉到K-hop的鄰居節(jié)點(diǎn)的信息,作者還堆疊多層GCN layers,如堆疊K層有:

36da215c-cf69-11eb-9e57-12bb97331649.png

上述式子還可以使用矩陣形式表示如下,

371b5e60-cf69-11eb-9e57-12bb97331649.jpg

其中是歸一化之后的鄰接矩陣,相當(dāng)于給層的所有節(jié)點(diǎn)的embedding做了一次線性變換,左乘以鄰接矩陣表示對(duì)每個(gè)節(jié)點(diǎn)來(lái)說(shuō),該節(jié)點(diǎn)的特征表示為鄰居節(jié)點(diǎn)特征相加之后的結(jié)果。(注意將換成矩陣就是圖3所說(shuō)的三矩陣相乘)那么GCN的效果如何呢?作者將GCN放到節(jié)點(diǎn)分類(lèi)任務(wù)上,分別在Citeseer、Cora、Pubmed、NELL等數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),相比于傳統(tǒng)方法提升還是很顯著的,這很有可能是得益于GCN善于編碼圖的結(jié)構(gòu)信息,能夠?qū)W習(xí)到更好的節(jié)點(diǎn)表示。

37356080-cf69-11eb-9e57-12bb97331649.jpg

圖6當(dāng)然,其實(shí)GCN的缺點(diǎn)也是很顯然易見(jiàn)的,第一,GCN需要將整個(gè)圖放到內(nèi)存和顯存,這將非常耗內(nèi)存和顯存,處理不了大圖;第二,GCN在訓(xùn)練時(shí)需要知道整個(gè)圖的結(jié)構(gòu)信息(包括待預(yù)測(cè)的節(jié)點(diǎn)), 這在現(xiàn)實(shí)某些任務(wù)中也不能實(shí)現(xiàn)(比如用今天訓(xùn)練的圖模型預(yù)測(cè)明天的數(shù)據(jù),那么明天的節(jié)點(diǎn)是拿不到的)。2. Graph Sample and Aggregate(GraphSAGE)[8]為了解決GCN的兩個(gè)缺點(diǎn)問(wèn)題,GraphSAGE被提了出來(lái)。在介紹GraphSAGE之前,先介紹一下Inductive learning和Transductive learning。注意到圖數(shù)據(jù)和其他類(lèi)型數(shù)據(jù)的不同,圖數(shù)據(jù)中的每一個(gè)節(jié)點(diǎn)可以通過(guò)邊的關(guān)系利用其他節(jié)點(diǎn)的信息。這就導(dǎo)致一個(gè)問(wèn)題,GCN輸入了整個(gè)圖,訓(xùn)練節(jié)點(diǎn)收集鄰居節(jié)點(diǎn)信息的時(shí)候,用到了測(cè)試和驗(yàn)證集的樣本,我們把這個(gè)稱(chēng)為T(mén)ransductive learning。然而,我們所處理的大多數(shù)的機(jī)器學(xué)習(xí)問(wèn)題都是Inductive learning,因?yàn)槲覀兛桃獾膶颖炯譃橛?xùn)練/驗(yàn)證/測(cè)試,并且訓(xùn)練的時(shí)候只用訓(xùn)練樣本。這樣對(duì)圖來(lái)說(shuō)有個(gè)好處,可以處理圖中新來(lái)的節(jié)點(diǎn),可以利用已知節(jié)點(diǎn)的信息為未知節(jié)點(diǎn)生成embedding,GraphSAGE就是這么干的。GraphSAGE是一個(gè)Inductive Learning框架,具體實(shí)現(xiàn)中,訓(xùn)練時(shí)它僅僅保留訓(xùn)練樣本到訓(xùn)練樣本的邊,然后包含Sample和Aggregate兩大步驟,Sample是指如何對(duì)鄰居的個(gè)數(shù)進(jìn)行采樣,Aggregate是指拿到鄰居節(jié)點(diǎn)的embedding之后如何匯聚這些embedding以更新自己的embedding信息。下圖展示了GraphSAGE學(xué)習(xí)的一個(gè)過(guò)程,

37664ac4-cf69-11eb-9e57-12bb97331649.jpg

圖7第一步,對(duì)鄰居采樣第二步,采樣后的鄰居embedding傳到節(jié)點(diǎn)上來(lái),并使用一個(gè)聚合函數(shù)聚合這些鄰居信息以更新節(jié)點(diǎn)的embedding第三步,根據(jù)更新后的embedding預(yù)測(cè)節(jié)點(diǎn)的標(biāo)簽接下來(lái),我們?cè)敿?xì)的說(shuō)明一個(gè)訓(xùn)練好的GrpahSAGE是如何給一個(gè)新的節(jié)點(diǎn)生成embedding的(即一個(gè)前向傳播的過(guò)程),如下算法圖:

37757828-cf69-11eb-9e57-12bb97331649.jpg

首先,(line1)算法首先初始化輸入的圖中所有節(jié)點(diǎn)的特征向量,(line3)對(duì)于每個(gè)節(jié)點(diǎn),拿到它采樣后的鄰居節(jié)點(diǎn)后,(line4)利用聚合函數(shù)聚合鄰居節(jié)點(diǎn)的信息,(line5)并結(jié)合自身embedding通過(guò)一個(gè)非線性變換更新自身的embedding表示。注意到算法里面的,它是指聚合器的數(shù)量,也是指權(quán)重矩陣的數(shù)量,還是網(wǎng)絡(luò)的層數(shù),這是因?yàn)槊恳粚泳W(wǎng)絡(luò)中聚合器和權(quán)重矩陣是共享的。網(wǎng)絡(luò)的層數(shù)可以理解為需要最大訪問(wèn)的鄰居的跳數(shù)(hops),比如在圖7中,紅色節(jié)點(diǎn)的更新拿到了它一、二跳鄰居的信息,那么網(wǎng)絡(luò)層數(shù)就是2。為了更新紅色節(jié)點(diǎn),首先在第一層(k=1),我們會(huì)將藍(lán)色節(jié)點(diǎn)的信息聚合到紅色解節(jié)點(diǎn)上,將綠色節(jié)點(diǎn)的信息聚合到藍(lán)色節(jié)點(diǎn)上。在第二層(k=2)紅色節(jié)點(diǎn)的embedding被再次更新,不過(guò)這次用到的是更新后的藍(lán)色節(jié)點(diǎn)embedding,這樣就保證了紅色節(jié)點(diǎn)更新后的embedding包括藍(lán)色和綠色節(jié)點(diǎn)的信息,也就是兩跳信息。為了看的更清晰,我們將更新某個(gè)節(jié)點(diǎn)的過(guò)程展開(kāi)來(lái)看,如圖8分別為更新節(jié)點(diǎn)A和更新節(jié)點(diǎn)B的過(guò)程,可以看到更新不同的節(jié)點(diǎn)過(guò)程每一層網(wǎng)絡(luò)中聚合器和權(quán)重矩陣都是共享的。

3787f390-cf69-11eb-9e57-12bb97331649.jpg

圖8那么GraphSAGESample是怎么做的呢?GraphSAGE是采用定長(zhǎng)抽樣的方法,具體來(lái)說(shuō),定義需要的鄰居個(gè)數(shù),然后采用有放回的重采樣/負(fù)采樣方法達(dá)到。保證每個(gè)節(jié)點(diǎn)(采樣后的)鄰居個(gè)數(shù)一致,這樣是為了把多個(gè)節(jié)點(diǎn)以及它們的鄰居拼接成Tensor送到GPU中進(jìn)行批訓(xùn)練。那么GraphSAGE 有哪些聚合器呢?主要有三個(gè),

37a511d2-cf69-11eb-9e57-12bb97331649.jpg

這里說(shuō)明的一點(diǎn)是Mean Aggregator和GCN的做法基本是一致的(GCN實(shí)際上是求和)。到此為止,整個(gè)模型的架構(gòu)就講完了,那么GraphSAGE是如何學(xué)習(xí)聚合器的參數(shù)以及權(quán)重矩陣呢?如果是有監(jiān)督的情況下,可以使用每個(gè)節(jié)點(diǎn)的預(yù)測(cè)lable和真實(shí)lable的交叉熵作為損失函數(shù)。如果是在無(wú)監(jiān)督的情況下,可以假設(shè)相鄰的節(jié)點(diǎn)的embedding表示盡可能相近,因此可以設(shè)計(jì)出如下的損失函數(shù),

37c57ed6-cf69-11eb-9e57-12bb97331649.jpg

那么GrpahSAGE的實(shí)際實(shí)驗(yàn)效果如何呢?作者在Citation、Reddit、PPI數(shù)據(jù)集上分別給出了無(wú)監(jiān)督和完全有監(jiān)督的結(jié)果,相比于傳統(tǒng)方法提升還是很明顯。

37d4d2fa-cf69-11eb-9e57-12bb97331649.jpg

至此,GraphSAGE介紹完畢。我們來(lái)總結(jié)一下,GraphSAGE的一些優(yōu)點(diǎn),(1)利用采樣機(jī)制,很好的解決了GCN必須要知道全部圖的信息問(wèn)題,克服了GCN訓(xùn)練時(shí)內(nèi)存和顯存的限制,即使對(duì)于未知的新節(jié)點(diǎn),也能得到其表示(2)聚合器和權(quán)重矩陣的參數(shù)對(duì)于所有的節(jié)點(diǎn)是共享的(3)模型的參數(shù)的數(shù)量與圖的節(jié)點(diǎn)個(gè)數(shù)無(wú)關(guān),這使得GraphSAGE能夠處理更大的圖(4)既能處理有監(jiān)督任務(wù)也能處理無(wú)監(jiān)督任務(wù)(就喜歡這樣解決了問(wèn)題,方法又簡(jiǎn)潔,效果還好的idea?。。。┊?dāng)然,GraphSAGE也有一些缺點(diǎn),每個(gè)節(jié)點(diǎn)那么多鄰居,GraphSAGE的采樣沒(méi)有考慮到不同鄰居節(jié)點(diǎn)的重要性不同,而且聚合計(jì)算的時(shí)候鄰居節(jié)點(diǎn)的重要性和當(dāng)前節(jié)點(diǎn)也是不同的。3. Graph Attention Networks(GAT)[9]為了解決GNN聚合鄰居節(jié)點(diǎn)的時(shí)候沒(méi)有考慮到不同的鄰居節(jié)點(diǎn)重要性不同的問(wèn)題,GAT借鑒了Transformer的idea,引入masked self-attention機(jī)制,在計(jì)算圖中的每個(gè)節(jié)點(diǎn)的表示的時(shí)候,會(huì)根據(jù)鄰居節(jié)點(diǎn)特征的不同來(lái)為其分配不同的權(quán)值。具體的,對(duì)于輸入的圖,一個(gè)graph attention layer如圖9所示,

37f22d3c-cf69-11eb-9e57-12bb97331649.jpg

圖9其中采用了單層的前饋神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn),計(jì)算過(guò)程如下(注意權(quán)重矩陣對(duì)于所有的節(jié)點(diǎn)是共享的):

38002c5c-cf69-11eb-9e57-12bb97331649.png

計(jì)算完attention之后,就可以得到某個(gè)節(jié)點(diǎn)聚合其鄰居節(jié)點(diǎn)信息的新的表示,計(jì)算過(guò)程如下:

384fd0c2-cf69-11eb-9e57-12bb97331649.png

為了提高模型的擬合能力,還引入了多頭的self-attention機(jī)制,即同時(shí)使用多個(gè)計(jì)算self-attention,然后將計(jì)算的結(jié)果合并(連接或者求和):

3885308c-cf69-11eb-9e57-12bb97331649.jpg

此外,由于GAT結(jié)構(gòu)的特性,GAT無(wú)需使用預(yù)先構(gòu)建好的圖,因此GAT既適用于Transductive Learning,又適用于Inductive Learning。那么GAT的具體效果如何呢?作者分別在三個(gè)Transductive Learning和一個(gè)Inductive Learning任務(wù)上進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如下:

38ddcc38-cf69-11eb-9e57-12bb97331649.jpg

無(wú)論是在Transductive Learning還是在Inductive Learning的任務(wù)上,GAT的效果都要優(yōu)于傳統(tǒng)方法的結(jié)果。至此,GAT的介紹完畢,我們來(lái)總結(jié)一下,GAT的一些優(yōu)點(diǎn),(1)訓(xùn)練GCN無(wú)需了解整個(gè)圖結(jié)構(gòu),只需知道每個(gè)節(jié)點(diǎn)的鄰居節(jié)點(diǎn)即可(2)計(jì)算速度快,可以在不同的節(jié)點(diǎn)上進(jìn)行并行計(jì)算(3)既可以用于Transductive Learning,又可以用于Inductive Learning,可以對(duì)未見(jiàn)過(guò)的圖結(jié)構(gòu)進(jìn)行處理(仍然是簡(jiǎn)單的idea,解決了問(wèn)題,效果還好?。。。┑酱耍覀兙徒榻B完了GNN中最經(jīng)典的幾個(gè)模型GCN、GraphSAGE、GAT,接下來(lái)我們將針對(duì)具體的任務(wù)類(lèi)別來(lái)介紹一些流行的GNN模型與方法。四、無(wú)監(jiān)督的節(jié)點(diǎn)表示學(xué)習(xí)(Unsupervised Node Representation)由于標(biāo)注數(shù)據(jù)的成本非常高,如果能夠利用無(wú)監(jiān)督的方法很好的學(xué)習(xí)到節(jié)點(diǎn)的表示,將會(huì)有巨大的價(jià)值和意義,例如找到相同興趣的社區(qū)、發(fā)現(xiàn)大規(guī)模的圖中有趣的結(jié)構(gòu)等等。

390f7e54-cf69-11eb-9e57-12bb97331649.jpg

圖10這其中比較經(jīng)典的模型有GraphSAGE、Graph Auto-Encoder(GAE)等,GraphSAGE就是一種很好的無(wú)監(jiān)督表示學(xué)習(xí)的方法,前面已經(jīng)介紹了,這里就不贅述,接下來(lái)將詳細(xì)講解后面兩個(gè)。

Graph Auto-Encoder(GAE)[10]

在介紹Graph Auto-Encoder之前,需要先了解自編碼器(Auto-Encoder)、變分自編碼器(Variational Auto-Encoder),具體可以參考[11],這里就不贅述。理解了自編碼器之后,再來(lái)理解變分圖的自編碼器就容易多了。如圖11輸入圖的鄰接矩陣和節(jié)點(diǎn)的特征矩陣,通過(guò)編碼器(圖卷積網(wǎng)絡(luò))學(xué)習(xí)節(jié)點(diǎn)低維向量表示的均值和方差,然后用解碼器(鏈路預(yù)測(cè))生成圖。

391f11ac-cf69-11eb-9e57-12bb97331649.png

圖11編碼器(Encoder)采用簡(jiǎn)單的兩層GCN網(wǎng)絡(luò),解碼器(Encoder)計(jì)算兩點(diǎn)之間存在邊的概率來(lái)重構(gòu)圖,損失函數(shù)包括生成圖和原始圖之間的距離度量,以及節(jié)點(diǎn)表示向量分布和正態(tài)分布的KL-散度兩部分。具體公式如圖12所示:

39606a62-cf69-11eb-9e57-12bb97331649.jpg

圖12另外為了做比較,作者還提出了圖自編碼器(Graph Auto-Encoder),相比于變分圖的自編碼器,圖自編碼器就簡(jiǎn)單多了,Encoder是兩層GCN,Loss只包含Reconstruction Loss。那么兩種圖自編碼器的效果如何呢?作者分別在Cora、Citeseer、Pubmed數(shù)據(jù)集上做Link prediction任務(wù),實(shí)驗(yàn)結(jié)果如下表,圖自編碼器(GAE)和變分圖自編碼器(VGAE)效果普遍優(yōu)于傳統(tǒng)方法,而且變分圖自編碼器的效果更好;當(dāng)然,Pumed上GAE得到了最佳結(jié)果??赡苁且?yàn)镻umed網(wǎng)絡(luò)較大,在VGAE比GAE模型復(fù)雜,所以更難調(diào)參。

396ee786-cf69-11eb-9e57-12bb97331649.jpg

五、Graph PoolingGraph pooling是GNN中很流行的一種操作,目的是為了獲取一整個(gè)圖的表示,主要用于處理圖級(jí)別的分類(lèi)任務(wù),例如在有監(jiān)督的圖分類(lèi)、文檔分類(lèi)等等。

398f9472-cf69-11eb-9e57-12bb97331649.jpg

圖13Graph pooling的方法有很多,如簡(jiǎn)單的max pooling和mean pooling,然而這兩種pooling不高效而且忽視了節(jié)點(diǎn)的順序信息;這里介紹一種方法:Differentiable Pooling (DiffPool)。1.DiffPool[12]在圖級(jí)別的任務(wù)當(dāng)中,當(dāng)前的很多方法是將所有的節(jié)點(diǎn)嵌入進(jìn)行全局池化,忽略了圖中可能存在的任何層級(jí)結(jié)構(gòu),這對(duì)于圖的分類(lèi)任務(wù)來(lái)說(shuō)尤其成問(wèn)題,因?yàn)槠淠繕?biāo)是預(yù)測(cè)整個(gè)圖的標(biāo)簽。針對(duì)這個(gè)問(wèn)題,斯坦福大學(xué)團(tuán)隊(duì)提出了一個(gè)用于圖分類(lèi)的可微池化操作模塊——DiffPool,可以生成圖的層級(jí)表示,并且可以以端到端的方式被各種圖神經(jīng)網(wǎng)絡(luò)整合。DiffPool的核心思想是通過(guò)一個(gè)可微池化操作模塊去分層的聚合圖節(jié)點(diǎn),具體的,這個(gè)可微池化操作模塊基于GNN上一層生成的節(jié)點(diǎn)嵌入以及分配矩陣,以端到端的方式分配給下一層的簇,然后將這些簇輸入到GNN下一層,進(jìn)而實(shí)現(xiàn)用分層的方式堆疊多個(gè)GNN層的想法。(圖14)

39b7ccf8-cf69-11eb-9e57-12bb97331649.jpg

圖14那么這個(gè)節(jié)點(diǎn)嵌入和分配矩陣是怎么算的?計(jì)算完之后又是怎么分配給下一層的?這里就涉及到兩部分內(nèi)容,一個(gè)是分配矩陣的學(xué)習(xí),一個(gè)是池化分配矩陣。

分配矩陣的學(xué)習(xí)

這里使用兩個(gè)分開(kāi)的GNN來(lái)生成分配矩陣和每一個(gè)簇節(jié)點(diǎn)新的嵌入,這兩個(gè)GNN都是用簇節(jié)點(diǎn)特征矩陣和粗化鄰接矩陣作為輸入,

39cf39c4-cf69-11eb-9e57-12bb97331649.jpg

池化分配矩陣

計(jì)算得到分配矩陣和每一個(gè)簇節(jié)點(diǎn)新的嵌入之后,DiffPool層根據(jù)分配矩陣,對(duì)于圖中的每個(gè)節(jié)點(diǎn)/簇生成一個(gè)新的粗化的鄰接矩陣與新的嵌入矩陣,

39dd0054-cf69-11eb-9e57-12bb97331649.jpg

總的來(lái)看,每層的DiffPool其實(shí)就是更新每一個(gè)簇節(jié)點(diǎn)的嵌入和簇節(jié)點(diǎn)的特征矩陣,如下公式:

3a07c5b4-cf69-11eb-9e57-12bb97331649.png

至此,DiffPool的基本思想就講完了。那么效果如何呢?作者在多種圖分類(lèi)的基準(zhǔn)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),如蛋白質(zhì)數(shù)據(jù)集(ENZYMES,PROTEINS,D&D),社交網(wǎng)絡(luò)數(shù)據(jù)集(REDDIT-MULTI-12K),科研合作數(shù)據(jù)集(COLLAB),實(shí)驗(yàn)結(jié)果如下:

3a366338-cf69-11eb-9e57-12bb97331649.jpg

其中,GraphSAGE是采用全局平均池化;DiffPool-DET是一種DiffPool變體,使用確定性圖聚類(lèi)算法生成分配矩陣;DiffPool-NOLP是DiffPool的變體,取消了鏈接預(yù)測(cè)目標(biāo)部分。總的來(lái)說(shuō),DiffPool方法在GNN的所有池化方法中獲得最高的平均性能。為了更好的證明DiffPool對(duì)于圖分類(lèi)十分有效,論文還使用了其他GNN體系結(jié)構(gòu)(Structure2Vec(s2v)),并且構(gòu)造兩個(gè)變體,進(jìn)行對(duì)比實(shí)驗(yàn),如下表:

3a554596-cf69-11eb-9e57-12bb97331649.jpg

可以看到DiffPool的顯著改善了S2V在ENZYMES和D&D數(shù)據(jù)集上的性能。

3a8c43ca-cf69-11eb-9e57-12bb97331649.jpg

而且DiffPool可以自動(dòng)的學(xué)習(xí)到恰當(dāng)?shù)拇氐臄?shù)量。至此,我們來(lái)總結(jié)一下DiffPool的優(yōu)點(diǎn),(1)可以學(xué)習(xí)層次化的pooling策略(2)可以學(xué)習(xí)到圖的層次化表示(3)可以以端到端的方式被各種圖神經(jīng)網(wǎng)絡(luò)整合然而,注意到,DiffPool也有其局限性,分配矩陣需要很大的空間去存儲(chǔ),空間復(fù)雜度為,為池化層的層數(shù),所以無(wú)法處理很大的圖。

責(zé)任編輯:lq

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 神經(jīng)網(wǎng)絡(luò)

    關(guān)注

    42

    文章

    4814

    瀏覽量

    103697
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5561

    瀏覽量

    122811
  • GNN
    GNN
    +關(guān)注

    關(guān)注

    1

    文章

    31

    瀏覽量

    6566

原文標(biāo)題:圖神經(jīng)網(wǎng)絡(luò)入門(mén)必讀: 一文帶你梳理GCN, GraphSAGE, GAT, GAE, Pooling, DiffPool

文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺(jué)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    20個(gè)經(jīng)典模擬電路及詳細(xì)分析答案

    20個(gè)經(jīng)典的模擬電路詳解及分析,希望能幫到在嵌入式領(lǐng)域的工作者。 純分享貼,有需要可以直接下載附件獲取文檔! (如果內(nèi)容有幫助可以關(guān)注、點(diǎn)贊、評(píng)論支持下哦~)
    發(fā)表于 04-23 16:32

    個(gè)EMC抗干擾的經(jīng)典案例

    前言從輻射角度總結(jié)來(lái)說(shuō),形成天線效應(yīng)的可能有三種情況;從輻射抗干擾角度來(lái)說(shuō),單極子天線和環(huán)形天線需要重點(diǎn)尋找及關(guān)注,定向的找到這些等效天線或許就能解決問(wèn)題。下面以?xún)善咐榻B。二手持抗干擾測(cè)試在手
    的頭像 發(fā)表于 04-22 11:33 ?709次閱讀
    兩<b class='flag-5'>個(gè)</b>EMC抗干擾的<b class='flag-5'>經(jīng)典</b>案例

    國(guó)產(chǎn)RISC-V車(chē)規(guī)芯片當(dāng)前現(xiàn)狀分析 ——從市場(chǎng)與技術(shù)角度出發(fā)

    RISC-V車(chē)規(guī)芯片的現(xiàn)狀。通過(guò)梳理國(guó)內(nèi)主要廠商的布局與產(chǎn)品特點(diǎn),探討當(dāng)前面臨的機(jī)遇與挑戰(zhàn),并對(duì)未來(lái)發(fā)展趨勢(shì)進(jìn)行展望,旨在為相關(guān)從業(yè)者、研究人員以及關(guān)注國(guó)產(chǎn)芯片發(fā)展的各界人士提供參考。 、引言 ()汽車(chē)產(chǎn)業(yè)變革與芯片需求
    的頭像 發(fā)表于 03-27 16:19 ?589次閱讀

    20個(gè)經(jīng)典電路分享

    ? 20個(gè)經(jīng)典電路,工程師平均懂10個(gè),你拖后腿了嗎? 引言 對(duì)模擬電路的掌握分為三個(gè)層次。 初級(jí)層次是熟練記住這二十個(gè)電路,清楚這二十個(gè)電路的作用。只要是電子愛(ài)好者,只要是學(xué)習(xí)自動(dòng)化
    的頭像 發(fā)表于 02-10 18:19 ?4022次閱讀
    20<b class='flag-5'>個(gè)</b><b class='flag-5'>經(jīng)典</b>電路分享

    SOLIDWORKS 2025直觀的用戶界面

    在工程設(shè)計(jì)領(lǐng)域,SOLIDWORKS作為三維CAD軟件的佼佼者,直致力于通過(guò)技術(shù)創(chuàng)新提升用戶體驗(yàn)。隨著SOLIDWORKS 2025版本的發(fā)布,其在界面設(shè)計(jì)上的直觀性與易用性再次成為行業(yè)關(guān)注的焦點(diǎn)
    的頭像 發(fā)表于 12-12 17:22 ?688次閱讀

    經(jīng)典圖神經(jīng)網(wǎng)絡(luò)(GNNs)的基準(zhǔn)分析研究

    本文簡(jiǎn)要介紹了經(jīng)典圖神經(jīng)網(wǎng)絡(luò)(GNNs)的基準(zhǔn)分析研究,發(fā)表在 NeurIPS 2024。 文章回顧了經(jīng)典 GNNs 模型在節(jié)點(diǎn)分類(lèi)任務(wù)上的表現(xiàn),結(jié)果發(fā)現(xiàn)過(guò)去 SOTA 圖學(xué)習(xí)模型報(bào)告的性能優(yōu)越
    的頭像 發(fā)表于 11-27 09:16 ?801次閱讀
    <b class='flag-5'>經(jīng)典</b>圖神經(jīng)<b class='flag-5'>網(wǎng)絡(luò)</b>(GNNs)的基準(zhǔn)分析研究

    文看懂刻蝕角度與ICP-RIE射頻功率的關(guān)系

    的重要指標(biāo)之。理想的側(cè)壁角度接近90°,垂直于襯底,但是大多數(shù)情況下的側(cè)壁角度是傾斜的,即錐形。 垂直或傾斜的刻蝕角度均有其應(yīng)用的場(chǎng)景,垂直角度
    的頭像 發(fā)表于 11-24 10:54 ?1470次閱讀

    從時(shí)域和頻域兩個(gè)角度對(duì)信號(hào)進(jìn)行分析

    般來(lái)說(shuō),我們會(huì)從時(shí)域和頻域兩個(gè)角度,分別對(duì)信號(hào)進(jìn)行分析。 時(shí)域 時(shí)域是真實(shí)世界存在的域,按時(shí)間順序呈現(xiàn)。例如,在某個(gè)時(shí)鐘信號(hào)的時(shí)域圖中,可以觀察到兩個(gè)重要的參數(shù),波形的周期和上升沿:
    的頭像 發(fā)表于 11-19 10:18 ?3372次閱讀
    從時(shí)域和頻域兩<b class='flag-5'>個(gè)</b><b class='flag-5'>角度</b>對(duì)信號(hào)進(jìn)行分析

    SONiC網(wǎng)絡(luò)操作系統(tǒng)中的安全啟動(dòng)

    NVIDIA 的技術(shù)可幫助組織構(gòu)建和維護(hù)安全、可擴(kuò)展和高性能的網(wǎng)絡(luò)基礎(chǔ)設(shè)施。NVIDIA 在引領(lǐng) AI 技術(shù)的前沿,每天都在推動(dòng)安全方面的進(jìn)步,對(duì)保障網(wǎng)絡(luò)安全采取的更直接的方法之就是
    的頭像 發(fā)表于 11-13 11:45 ?897次閱讀
    SONiC<b class='flag-5'>網(wǎng)絡(luò)</b>操作系統(tǒng)中的安全啟動(dòng)

    光纖的折彎角度限制是多少

    光纖的折彎角度限制因光纖類(lèi)型而異。以下是關(guān)于光纖折彎角度限制的詳細(xì)分析: 、單模光纖的折彎角度限制 最大折彎角度:?jiǎn)文9饫w的最大折彎
    的頭像 發(fā)表于 11-11 11:07 ?2795次閱讀

    電子產(chǎn)品方案開(kāi)發(fā)公司常用的15個(gè)單片機(jī)經(jīng)典電路分享!

    、成本低廉等優(yōu)勢(shì),廣泛應(yīng)用于工業(yè)自動(dòng)化、家電、通信、醫(yī)療設(shè)備等多個(gè)領(lǐng)域。英銳恩的技術(shù)工程師介紹電子產(chǎn)品方案開(kāi)發(fā)公司常用的15個(gè)單片機(jī)經(jīng)典電路圖,供大家參考。 1、外部供電電源電路: 2、光耦: 3
    發(fā)表于 09-25 14:43

    如何控制普通電機(jī)的轉(zhuǎn)動(dòng)角度

    控制普通電機(jī)的轉(zhuǎn)動(dòng)角度個(gè)涉及多個(gè)領(lǐng)域的技術(shù)問(wèn)題,包括電機(jī)控制理論、傳感器技術(shù)、微控制器編程等。 1. 電機(jī)類(lèi)型和選擇 首先,需要確定使用的電機(jī)類(lèi)型。常見(jiàn)的電機(jī)類(lèi)型包括直流電機(jī)(DC)、步進(jìn)電機(jī)
    的頭像 發(fā)表于 09-03 10:42 ?1934次閱讀

    個(gè)socket對(duì)應(yīng)個(gè)連接嗎

    在探討“個(gè)socket對(duì)應(yīng)個(gè)連接”這命題時(shí),我們首先需要明確socket的基本概念和它在網(wǎng)絡(luò)
    的頭像 發(fā)表于 08-16 10:55 ?938次閱讀

    使用SOLIDWORKS的直觀體驗(yàn)

    在工業(yè)設(shè)計(jì)領(lǐng)域,SOLIDWORKS無(wú)疑是顆璀璨的明珠,它不僅以?xún)?yōu)越的性能和強(qiáng)大的功能贏得了市場(chǎng)的廣泛認(rèn)可,更以其直觀易用的操作界面和用戶體驗(yàn),成為了無(wú)數(shù)工程師和設(shè)計(jì)師的心頭好。作為名長(zhǎng)期使用SOLIDWORKS的用戶,我深
    的頭像 發(fā)表于 07-24 15:07 ?626次閱讀
    使用SOLIDWORKS的<b class='flag-5'>直觀</b>體驗(yàn)

    方向角度傳感器故障怎么解決

    傳感器的工作原理 方向角度傳感器通常采用霍爾效應(yīng)原理,通過(guò)測(cè)量磁場(chǎng)的變化來(lái)確定物體相對(duì)于參考方向的角度。傳感器內(nèi)部有個(gè)磁敏感元件,當(dāng)磁場(chǎng)發(fā)生變化時(shí),元件會(huì)產(chǎn)生
    的頭像 發(fā)表于 07-22 16:57 ?1258次閱讀