graph embeddiing 發(fā)展脈絡(luò):
一、初期出現(xiàn)的算法:deep walk、line、node2vec、sdne、eges等,詳見2019-2020review5-embedding入門(http://www.itdecent.cn/p/993f80d1b959)
二、進(jìn)一步深化算法:圖神經(jīng)網(wǎng)絡(luò)
1、從綜述說起哈:
(1)圖神經(jīng)網(wǎng)絡(luò)的大致分類【1】:
圖神經(jīng)網(wǎng)絡(luò)(GNN) 被分成了 5 個(gè)類別:圖卷積網(wǎng)絡(luò)、圖注意力網(wǎng)絡(luò)、圖自編碼器、圖生成網(wǎng)絡(luò)和圖時(shí)空網(wǎng)絡(luò)。圖卷積網(wǎng)絡(luò)在捕捉架構(gòu)依存關(guān)系上扮演著核心角色:

(2)我們關(guān)注的是圖神經(jīng)網(wǎng)絡(luò)和網(wǎng)絡(luò)嵌入:
圖神經(jīng)網(wǎng)絡(luò)?vs. 網(wǎng)絡(luò)嵌入。對(duì)圖神經(jīng)網(wǎng)絡(luò)的研究與圖嵌入或網(wǎng)絡(luò)嵌入緊密相關(guān),這也是數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)社區(qū)日益關(guān)注的一個(gè)話題 。網(wǎng)絡(luò)嵌入旨在通過保留網(wǎng)絡(luò)拓?fù)浼軜?gòu)和節(jié)點(diǎn)內(nèi)容信息,將網(wǎng)絡(luò)頂點(diǎn)表示到低維向量空間中,以使任何后續(xù)的圖分析任務(wù)(如分類、聚類和推薦)都可以通過使用簡單的現(xiàn)成機(jī)器學(xué)習(xí)算法(如用于分類的支持向量機(jī))輕松執(zhí)行。許多網(wǎng)絡(luò)嵌入算法都是無監(jiān)督算法,它們大致可分為三組 ,即矩陣分解 、隨機(jī)游走和深度學(xué)習(xí)方法。用于網(wǎng)絡(luò)嵌入的深度學(xué)習(xí)方法同時(shí)還屬于圖神經(jīng)網(wǎng)絡(luò),包括基于圖自編碼器的算法(如 DNGR 和 SDNE)和具有無監(jiān)督訓(xùn)練的圖卷積神經(jīng)網(wǎng)絡(luò)(如 GraphSage)。下圖描述了網(wǎng)絡(luò)嵌入和圖神經(jīng)網(wǎng)絡(luò)的區(qū)別。

圖嵌入的無監(jiān)督學(xué)習(xí)。如果圖中無可用類別標(biāo)簽,我們可以在一個(gè)端到端框架中以完全無監(jiān)督的方式學(xué)習(xí)圖嵌入。這些算法通過兩種方式利用邊級(jí)(edge-level)信息。一種簡單的方法是采用自編碼器框架,其中編碼器使用圖卷積層將圖嵌進(jìn)潛在表征中,然后使用解碼器重構(gòu)圖結(jié)構(gòu) 。另一種方法是利用負(fù)采樣方法,采樣一部分節(jié)點(diǎn)對(duì)作為負(fù)對(duì)(negative pair),而圖中已有的節(jié)點(diǎn)作為正對(duì)(positive pair)。然后在卷積層之后應(yīng)用 logistic 回歸層,以用于端到端學(xué)習(xí)。
2、接下來開始重頭戲GCN:
(1)先從直觀上感受GCN
什么是圖卷積神經(jīng)網(wǎng)絡(luò)【2】

如何理解圖卷積算法?
第一步:發(fā)射(send)每一個(gè)節(jié)點(diǎn)將自身的特征信息經(jīng)過變換后發(fā)送給鄰居節(jié)點(diǎn)。這一步是在對(duì)節(jié)點(diǎn)的特征信息進(jìn)行抽取變換。
第二步:接收(receive)每個(gè)節(jié)點(diǎn)將鄰居節(jié)點(diǎn)的特征信息聚集起來。這一步是在對(duì)節(jié)點(diǎn)的局部結(jié)構(gòu)信息進(jìn)行融合。
第三步:變換(transform)把前面的信息聚集之后做非線性變換,增加模型的表達(dá)能力。
(2)再從框架圖感受GCN
來自論文的原汁原味的框架圖【3】:

具體來說,我們先看這個(gè)框架的大致idea:輸入一張圖,經(jīng)過一層層特征抽取以及變換,最后輸出一張圖。

(3)最后從公式上感受GCN
GCN,圖卷積神經(jīng)網(wǎng)絡(luò),實(shí)際上跟 CNN 的作用一樣,就是一個(gè)特征提取器,只不過它的對(duì)象是圖數(shù)據(jù)。GCN 精妙地設(shè)計(jì)了一種從圖數(shù)據(jù)中提取特征的方法,從而讓我們可以使用這些特征去對(duì)圖數(shù)據(jù)進(jìn)行節(jié)點(diǎn)分類(node classification)、圖分類(graph classification)、邊預(yù)測(link prediction),還可以順便得到圖的嵌入表示(graph embedding),可見用途廣泛。
從論文原文原汁原味感受公式:

公式的直觀感受:

用我們通俗的話翻譯一下:

公式特點(diǎn)說明:

GCN的一大特點(diǎn):

前期了解完畢,下面是詳細(xì)了解圖卷積算子~

待補(bǔ)充論文公式詳細(xì)推導(dǎo)過程。。。
參考文獻(xiàn)
1、圖神經(jīng)網(wǎng)絡(luò)概述第三彈:來自IEEE Fellow的GNN綜述
https://www.jiqizhixin.com/articles/2019-01-07-8
2、淺析圖卷積神經(jīng)網(wǎng)絡(luò)
https://zhuanlan.zhihu.com/p/37091549
3、論文原文 GRAPH CONVOLUTIONAL NETWORKS
https://tkipf.github.io/graph-convolutional-networks/
4、跳出公式,看清全局,圖神經(jīng)網(wǎng)絡(luò)(GCN)原理詳解
https://www.chainnews.com/articles/216961050590.htm
其他參考文獻(xiàn):
1、深度學(xué)習(xí)新星 | 圖卷積神經(jīng)網(wǎng)絡(luò)(GCN)有多強(qiáng)大?
https://zhuanlan.zhihu.com/p/37894842
2、如何理解 Graph Convolutional Network(GCN)?
https://www.zhihu.com/question/54504471
3、卷積運(yùn)算是什么?
https://www.zhihu.com/question/339496491
4、如何理解 Graph Convolutional Network(GCN)
https://www.zhihu.com/question/54504471

5、從圖(Graph)到圖卷積(Graph Convolution):漫談圖神經(jīng)網(wǎng)絡(luò)模型 (一)
https://www.cnblogs.com/SivilTaram/p/graph_neural_network_1.html