圖神經(jīng)網(wǎng)絡(luò)(GNN)的學(xué)習(xí)和GCN粗淺理解

前言:

2碗脊,3年前,我對于深度學(xué)習(xí)認知范圍僅限于CNN橄妆,RNN等傳統(tǒng)神經(jīng)網(wǎng)絡(luò)模型衙伶,學(xué)弟跟我說他在研究圖神經(jīng)網(wǎng)絡(luò)祈坠,我頓時一驚感覺神經(jīng)網(wǎng)絡(luò)的發(fā)展竟然如此之快。后來矢劲,他去阿里上班赦拘,阿里也是當(dāng)下使用圖神經(jīng)網(wǎng)絡(luò)最成熟的互聯(lián)網(wǎng)公司。現(xiàn)在芬沉,各大會議收錄了不少圖神經(jīng)網(wǎng)絡(luò)的論文躺同,我為了追趕潮流,也得看看圖神經(jīng)網(wǎng)絡(luò)的相關(guān)論文花嘶。理解這類論文要求數(shù)學(xué)基礎(chǔ)比較高笋籽,在知乎上有位清華的博士superbrother寫了很多對圖神經(jīng)網(wǎng)絡(luò)的理解,看了以后非常受益(當(dāng)然也不容易理解)椭员,其中涉及各種傅立葉變換等數(shù)學(xué)理解车海。當(dāng)然,有本書《深入淺出圖神經(jīng)網(wǎng)絡(luò)》也講了不少對于圖神經(jīng)網(wǎng)絡(luò)的理解隘击,在Github上也有對應(yīng)的代碼實現(xiàn)侍芝。

1 圖神經(jīng)網(wǎng)絡(luò)的介紹

很多書把圖神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)(CNN),循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)并列埋同。相對于CNN和RNN而言州叠,GNN的發(fā)展比較短但是在很多領(lǐng)域都有很好的應(yīng)用。因為圖數(shù)據(jù)有復(fù)雜的結(jié)構(gòu)凶赁,多樣化的屬性類型咧栗,可以模擬多種任務(wù)場景,比如社交網(wǎng)絡(luò)虱肄,調(diào)控網(wǎng)絡(luò)致板,生物分子結(jié)構(gòu)等。


社交網(wǎng)絡(luò)


基因網(wǎng)絡(luò)


蛋白質(zhì)功能網(wǎng)絡(luò)

1.1 Graph上的任務(wù):

節(jié)點分類:預(yù)測特定節(jié)點的類別

鏈接預(yù)測:預(yù)測兩個節(jié)點是否有聯(lián)系

社區(qū)檢測:識別密集聯(lián)系的節(jié)點群落

網(wǎng)絡(luò)相似性:兩個網(wǎng)絡(luò)的相似性

1.2 圖神經(jīng)網(wǎng)絡(luò)與其他神經(jīng)網(wǎng)絡(luò)的區(qū)別:

現(xiàn)在圖神經(jīng)網(wǎng)絡(luò)的大多數(shù)方法都是制推行學(xué)習(xí)咏窿,不能直接泛化到未知節(jié)點斟或。對于大多數(shù)情況圖會演化,當(dāng)網(wǎng)絡(luò)結(jié)構(gòu)改變以及新的節(jié)點出現(xiàn)集嵌,直推性學(xué)習(xí)需要重新訓(xùn)練萝挤,很難落地在需要快速生成未知節(jié)點embedding的機器學(xué)習(xí)系統(tǒng)上。

直推式(transductive)學(xué)習(xí):從特殊到特殊根欧,只考慮當(dāng)前數(shù)據(jù)數(shù)據(jù)怜珍。學(xué)習(xí)目標(biāo)是直接生成當(dāng)前節(jié)點的embedding,然后把每個節(jié)點embedding作為參數(shù)通過SGD優(yōu)化凤粗,例如Deepwalk酥泛,LINE;在訓(xùn)練過程中使用圖的拉普拉斯矩陣進行計算,如GCN揭璃。

歸納性(inductive)學(xué)習(xí):平常所說的機器學(xué)習(xí)任務(wù),從特殊到一般:目標(biāo)是為未知數(shù)據(jù)上有區(qū)分性亭罪。

2 圖神經(jīng)網(wǎng)絡(luò)的基本概念

2.1 圖的定義


圖結(jié)構(gòu)例

對于圖瘦馍,我們有以下特征定義:對于圖G=(V,E),V為節(jié)點的集合,E為邊的集合应役,對于每個節(jié)點i,均有其特征x_{i},可以用矩陣X_{N*D}表示情组。其中N表示節(jié)點數(shù),D表示每個節(jié)點的特征數(shù)箩祥,也可以說是特征向量的維度院崇。

圖嵌入(Graph Embedding/Network Embedding),屬于表示學(xué)習(xí)的范疇袍祖,也可以叫為網(wǎng)絡(luò)嵌入底瓣,圖表示學(xué)習(xí),網(wǎng)絡(luò)表示學(xué)習(xí)等等蕉陋。

將圖中的節(jié)點表示為低維捐凭,實值,稠密的向量形式凳鬓,使得得到的向量形式可以在向量空間中具有表示以及推理的能力茁肠。例如用戶社交網(wǎng)絡(luò)得到節(jié)點表示就是每個用戶的表示向量,再用于節(jié)點分類等缩举。

將整個圖表示為低維垦梆,實值,稠密的向量形式仅孩,用來對整個圖結(jié)構(gòu)進行分類托猩。

2.2 圖嵌入的三種方式:

矩陣分解:基于矩陣分解的方法是將節(jié)點間的關(guān)系用矩陣的形式加以表達,然后分解該矩陣以得到嵌入向量杠氢。通常用于表示節(jié)點關(guān)系的矩陣包括鄰接矩陣站刑,拉普拉斯矩陣,節(jié)點轉(zhuǎn)移概率矩陣鼻百。

DeepWalk:DeepWalk是基于word2vec詞向量提出來的绞旅。word2vec在訓(xùn)練詞向量時,將詞料作為輸入數(shù)據(jù)温艇,而圖嵌入輸入的是整張圖因悲。DeepWalk把節(jié)點當(dāng)做單詞,把隨機游走得到的節(jié)點序列當(dāng)做句子勺爱,然后將其直接作為word2vec的輸入可以節(jié)點嵌入表示晃琳,同時利用節(jié)點的嵌入表示作為下游任務(wù)的初始化參數(shù)可以很高的優(yōu)化下游任務(wù)的效果。

基于隨機游走的方法最大的優(yōu)點是通過將圖轉(zhuǎn)化為序列的方法實現(xiàn)了大規(guī)模圖的表示學(xué)習(xí)。但是這類方法有兩個缺點:一是將圖轉(zhuǎn)化成序列集合卫旱,圖本身的結(jié)構(gòu)信息沒有被充分利用人灼;二是該學(xué)習(xí)框架很難自然地融合圖中的屬性信息。

Graph Neural Network:圖結(jié)合deep learning方法搭建的網(wǎng)絡(luò)統(tǒng)稱為圖神經(jīng)網(wǎng)絡(luò)GNN,其中包含著名的GCN(圖卷積神經(jīng)網(wǎng)絡(luò))和GAT(圖注意力網(wǎng)絡(luò))顾翼。

優(yōu)點:相較于分解類的方法只能在小圖上學(xué)習(xí)投放,GNN可以在大規(guī)模的圖上學(xué)習(xí);非常自然地融合了圖的屬性信息進行學(xué)習(xí)

2.3 圖相關(guān)矩陣的定義:


圖的度矩陣适贸,鄰接矩陣和拉普拉斯矩陣

度矩陣D只有對角線上有值灸芳,為該節(jié)點的度,其余為0拜姿;鄰接矩陣A只有在有邊鏈接的兩個節(jié)點之間為1烙样,其余地方為0;拉普拉斯矩陣L為D-A。

第一種L=D-A定義為Laplacian矩陣更專業(yè)的名稱為Combinatorial Laplacian

第二種

L^{sys}=D^{-1/2}LD^{-1/2}定義為Symmetric normalized Laplacian,這為歸一化形式的拉普拉斯矩陣蕊肥,取值范圍

第三種

L^{rw}=D^{-1}L定義為Random walk normalized Laplacian

3. 圖卷積神經(jīng)網(wǎng)絡(luò)

圖卷積神經(jīng)網(wǎng)絡(luò)可以類比于卷積神經(jīng)網(wǎng)絡(luò)在圖像處理的位置谒获。用隨機的共享的卷積核得到像素點的加權(quán)和從而提取到某種特定的特征,然后用反向傳播來優(yōu)化卷積核參數(shù)就可以自動的提取特征晴埂,這是CNN提取特征的機制究反。

現(xiàn)實中很多重要的數(shù)據(jù)都是用圖的結(jié)構(gòu)存儲,例如社交網(wǎng)絡(luò)信息儒洛,知識圖譜精耐,蛋白質(zhì)網(wǎng)絡(luò),萬維網(wǎng)等琅锻。這些圖網(wǎng)絡(luò)卦停,不是整齊的矩陣形式,而是非結(jié)構(gòu)化信息恼蓬。

省略從傅立葉變換到拉普拉斯算子到拉普拉斯矩陣的數(shù)學(xué)推導(dǎo)

對于任何一個圖卷積層都可以寫成一個非線性函數(shù)

H^{l+1}=f(H^{l},A)?

H^{0}=X代表第一層的輸入惊完,X\in R^{N*D},N為圖的節(jié)點個數(shù),D為每個節(jié)點特征处硬,A為鄰接矩陣小槐。

一種通常的實現(xiàn)方法

H^{l+1}=\sigma(D^{-1/2}\widehat{A}D^{-1/2}H^{l}W^{l})

\widehat{A}=A+I

D為\widehat{A}的度矩陣;H是每一層的特征荷辕,對于輸入層凿跳,H就是X;\sigma是激活函數(shù)。


GCN神經(jīng)網(wǎng)絡(luò)


構(gòu)建一個兩層的GCN疮方,激活函數(shù)分別采用ReLU和Softmax控嗜,整正向傳播公式為

Z=f(X,A)=softmax(\widehat{A}ReLU(\widehat{A}XW^{(0)})W^{(1)})

針對于所有帶標(biāo)簽的節(jié)點計算cross entropy損失函數(shù)

L=-\sum_{l\in y_L}\sum_{f=1}^{F}Y_{lf} lnZ_{lf}

這可以訓(xùn)練一個node classification的模型。由于即使只有很少的標(biāo)簽也可以訓(xùn)練骡显,所以把這種方法稱為半監(jiān)督分類疆栏。同理曾掂,可以改變損失函數(shù)適用于graph classification,link prediction等問題。

Reference:

郁蓁的機器學(xué)習(xí)筆記?https://www.zhihu.com/column/c_1173319214768201728

superbrother?https://www.zhihu.com/people/superbrother-58/posts

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末壁顶,一起剝皮案震驚了整個濱河市珠洗,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌若专,老刑警劉巖险污,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異富岳,居然都是意外死亡,警方通過查閱死者的電腦和手機拯腮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門窖式,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人动壤,你說我怎么就攤上這事萝喘。” “怎么了琼懊?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵阁簸,是天一觀的道長。 經(jīng)常有香客問我哼丈,道長启妹,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任醉旦,我火速辦了婚禮饶米,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘车胡。我一直安慰自己檬输,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布匈棘。 她就那樣靜靜地躺著丧慈,像睡著了一般。 火紅的嫁衣襯著肌膚如雪主卫。 梳的紋絲不亂的頭發(fā)上逃默,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天,我揣著相機與錄音队秩,去河邊找鬼笑旺。 笑死,一個胖子當(dāng)著我的面吹牛馍资,可吹牛的內(nèi)容都是我干的筒主。 我是一名探鬼主播关噪,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼乌妙!你這毒婦竟也來了使兔?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤藤韵,失蹤者是張志新(化名)和其女友劉穎虐沥,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體泽艘,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡欲险,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了匹涮。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片天试。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖然低,靈堂內(nèi)的尸體忽然破棺而出喜每,到底是詐尸還是另有隱情,我是刑警寧澤雳攘,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布带兜,位于F島的核電站,受9級特大地震影響吨灭,放射性物質(zhì)發(fā)生泄漏刚照。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一喧兄、第九天 我趴在偏房一處隱蔽的房頂上張望涩咖。 院中可真熱鬧,春花似錦繁莹、人聲如沸檩互。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽闸昨。三九已至,卻和暖如春薄风,著一層夾襖步出監(jiān)牢的瞬間饵较,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工遭赂, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留循诉,地道東北人。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓撇他,卻偏偏與公主長得像茄猫,于是被迫代替她去往敵國和親狈蚤。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,792評論 2 345