国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

GCN-圖卷積神經(jīng)網(wǎng)絡(luò)算法講解(通俗版)

這篇具有很好參考價值的文章主要介紹了GCN-圖卷積神經(jīng)網(wǎng)絡(luò)算法講解(通俗版)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

由于博主學(xué)疏才淺,經(jīng)過一段時間學(xué)習(xí),只能做到基礎(chǔ)層面的理解,本文就較為通俗地講解一下圖卷積神經(jīng)網(wǎng)絡(luò)算法,下篇文章會講解代碼實(shí)現(xiàn)部分!

文章目錄

GCN-圖卷積神經(jīng)網(wǎng)絡(luò)算法介紹和算法原理

1.?GCN從何而來

2.?GCN是做什么的

3.?GCN算法的原理

3.1?GCN的結(jié)構(gòu)

3.2?GCN的傳播公式

總結(jié)


GCN-圖卷積神經(jīng)網(wǎng)絡(luò)算法介紹和算法原理

1.?GCN從何而來

GCN的概念首次提出于2017年的國際學(xué)習(xí)表征會議(ICLR),成文于2016年:

gcn,cnn,1024程序員節(jié),算法

神經(jīng)網(wǎng)絡(luò)在各種傳統(tǒng)任務(wù)上都體現(xiàn)出了驚人的效果,如:CNN卷積神經(jīng)網(wǎng)絡(luò)系列在圖像領(lǐng)域(例如圖像識別)的結(jié)果、RNN循環(huán)神經(jīng)網(wǎng)絡(luò)系列在序列數(shù)據(jù)(語言處理)上表現(xiàn)出的效果。

傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)中的卷積操作只能處理規(guī)則的數(shù)據(jù)結(jié)構(gòu),例如圖片或者語言,都屬于歐式空間的數(shù)據(jù),因此才有維度的概念,歐式空間的數(shù)據(jù)的特點(diǎn)就是結(jié)構(gòu)很規(guī)則。但是現(xiàn)實(shí)生活中,其實(shí)有很多很多不規(guī)則的數(shù)據(jù)結(jié)構(gòu),典型的就是圖結(jié)構(gòu),或稱拓?fù)浣Y(jié)構(gòu),如社交網(wǎng)絡(luò)、化學(xué)分子結(jié)構(gòu)、知識圖譜等等;即使是語言,實(shí)際上其內(nèi)部也是復(fù)雜的樹形結(jié)構(gòu),也是一種圖結(jié)構(gòu)。

圖的結(jié)構(gòu)一般來說是十分不規(guī)則的,可以認(rèn)為是無限維的一種數(shù)據(jù),所以它沒有平移不變性。每一個節(jié)點(diǎn)的周圍結(jié)構(gòu)可能都是獨(dú)一無二的,這種結(jié)構(gòu)的數(shù)據(jù),就讓傳統(tǒng)的CNN、RNN瞬間失效。而圖數(shù)據(jù)卻很少有相應(yīng)的模型供我們直接使用,所以GCN應(yīng)運(yùn)而生。

2.?GCN是做什么的

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

這里的圖數(shù)據(jù)指的不是圖片,而是這種具有圖結(jié)構(gòu)的數(shù)據(jù):

gcn,cnn,1024程序員節(jié),算法
就像"卷積"這個名字所指代的那樣,這個想法來自于圖像,之后引進(jìn)到圖(Graphs)中。于有固定的結(jié)構(gòu)的圖像相比時,圖(Graphs)就復(fù)雜得多。
gcn,cnn,1024程序員節(jié),算法

3.?GCN算法的原理

假設(shè)有一批圖數(shù)據(jù),其中有N個節(jié)點(diǎn)(node),每個節(jié)點(diǎn)都有自己的特征,假設(shè)特征一共有D個,我們設(shè)這些節(jié)點(diǎn)的特征組成一個N×D維的矩陣X,然后各個節(jié)點(diǎn)之間的關(guān)系也會形成一個N×N維的矩陣A,也稱為鄰接矩陣(adjacency matrix)。X和A便是我們模型的輸入。

GCN算法的步驟簡單可總結(jié)為:

第一步聚類

第二步更新

第三步循環(huán)

對于每個節(jié)點(diǎn),我們在聚類時從它的所有鄰居節(jié)點(diǎn)處獲取其特征信息,當(dāng)然也包括它自身的特征。

舉個例子

我們想通過聚類,估計出一個人的工資水平

因?yàn)橛幸痪浜苡忻碾u湯 『你朋友圈的平均工資就是你的工資』

先假設(shè):一個人所有朋友的工資平均值等于那個人的工資,利用社交網(wǎng)絡(luò)(graph圖)中的關(guān)聯(lián)信息(edge邊),我們可以得到節(jié)點(diǎn)的有效信息

gcn,cnn,1024程序員節(jié),算法

?當(dāng)前節(jié)點(diǎn)可以用相鄰節(jié)點(diǎn)推斷出來。我們先考慮用相鄰節(jié)點(diǎn)的加和來代表當(dāng)前節(jié)點(diǎn):

gcn,cnn,1024程序員節(jié),算法

如果圖中的邊沒有權(quán)重,Xj是每個節(jié)點(diǎn)的特征值, Aij也就是節(jié)點(diǎn)間的關(guān)系只能為0或1。當(dāng)一個節(jié)點(diǎn)不是i的鄰居節(jié)點(diǎn)時,Aij就是0。

那么我們將Aij寫成描述節(jié)點(diǎn)間關(guān)系的鄰接矩陣A,就能得到:

gcn,cnn,1024程序員節(jié),算法

但是沒有權(quán)重顯然不合適,因?yàn)榧偃缥液婉R云見過一面,相互僅是認(rèn)識,但是馬化騰和馬云是鐵哥們,那么將我與馬云間聯(lián)系的權(quán)重和馬化騰與馬云間聯(lián)系的權(quán)重都設(shè)為1就是不合理的,所以在處理問題時,Aij一定可以為0到1的任意值,這樣才可以科學(xué)的計算我的工資水平。

并且只考慮朋友的工資水平也是不科學(xué)的,比如有的人會拍領(lǐng)導(dǎo)馬屁,那么他的工資就會比沒有拍馬屁技能的同事高。

所以要想準(zhǔn)確評估他的工資,還要加上他自身的一些特征Xi。在矩陣?yán)锞褪羌由献赃B接矩陣I:

gcn,cnn,1024程序員節(jié),算法

截止目前,我們已經(jīng)結(jié)合節(jié)點(diǎn)特征,將朋友們的工資科學(xué)地進(jìn)行了求和,那么接下來就需要取平均值了

因?yàn)榭赡苣承┘夹g(shù)高薪大佬,朋友不多但是個個有錢,而某些人善于交際,狐朋狗友就很多,雖然狐朋狗友的工資低,但是也架不住多

所以需要求平均,求平均的公式:

gcn,cnn,1024程序員節(jié),算法

分母是節(jié)點(diǎn)個數(shù),分子就是節(jié)點(diǎn)特征,然后進(jìn)行求和。

到目前為止,我們就通過求平均,得到了一個人的工資水平,當(dāng)然簡單的求平均肯定是不完善的;

假如我的朋友只有一個大佬,那么我和大佬的關(guān)系網(wǎng)絡(luò)如果用平均算法的話就等同了,所以直接把B的特征賦給A肯定是不合適的

?gcn,cnn,1024程序員節(jié),算法

而GCN中的傳播公式就可以解決這個問題:

gcn,cnn,1024程序員節(jié),算法

3.1?GCN的結(jié)構(gòu)

GCN是一個多層的圖卷積神經(jīng)網(wǎng)絡(luò),每一個卷積層僅處理一階鄰域信息,通過疊加若干卷積層可以實(shí)現(xiàn)多階鄰域的信息傳遞

從輸入層開始,前向傳播經(jīng)過圖卷積層運(yùn)算,然后經(jīng)過softmax激活函數(shù)的運(yùn)算得到預(yù)測分類概率分布。

softmax的作用是將卷積網(wǎng)絡(luò)的輸出的結(jié)果進(jìn)行概率化,我直接將Softmax理解為依據(jù)公式運(yùn)算出樣本點(diǎn)的類別。

假設(shè)我們構(gòu)造一個兩層的GCN,激活函數(shù)分別采用ReLU和Softmax,則整體的正向傳播的公式為:

gcn,cnn,1024程序員節(jié),算法

該模型實(shí)際是輸入層+隱藏層(圖卷積層,類似全連接層的作用)+SoftMax+輸出層構(gòu)成的,GCN模型可視化為:

gcn,cnn,1024程序員節(jié),算法

GCN輸入一個圖,通過若干層GCN每個node的特征從X變成了Z,但是,無論中間有多少層,node之間的連接關(guān)系,即鄰接矩陣A,都是共享的。?

3.2?GCN的傳播公式

GCN就是一個神經(jīng)網(wǎng)絡(luò)層,每一層GCN的輸入都是鄰接矩陣A和node的特征H,它的層與層之間的傳播方式是:

gcn,cnn,1024程序員節(jié),算法

下圖中的特征矩陣x相當(dāng)于公式中的H(最初的特征矩陣是給定的數(shù)據(jù)或通過tf-idf等方法轉(zhuǎn)向量得到的):

gcn,cnn,1024程序員節(jié),算法

這個公式中:

A波浪=A+I,I是單位矩陣,相當(dāng)于是無向圖G的鄰接矩陣加上自連接(就是每個頂點(diǎn)和自身加一條邊)

如此一來消息聚合時不僅能聚合來自其他結(jié)點(diǎn)的消息,還能聚合結(jié)點(diǎn)自身的消息。

gcn,cnn,1024程序員節(jié),算法??

D波浪是A波浪的度矩陣(degree matrix),公式為D波浪ii=∑j A波浪(無向圖里,節(jié)點(diǎn)的度就是節(jié)點(diǎn)連接的邊的個數(shù)。)

H是每一層的特征,對于輸入層的話,H就是X(初始就給定的)

σ是像Softmax、ReLU這樣的非線性激活函數(shù)

W就是每一層模型的參數(shù),也就是模型給節(jié)點(diǎn)特征乘上的權(quán)重,這是模型需要訓(xùn)練的參數(shù),即權(quán)值矩陣

他們之間的運(yùn)算,就是各矩陣相乘,部分內(nèi)容就長這樣:

?gcn,cnn,1024程序員節(jié),算法

gcn,cnn,1024程序員節(jié),算法

?其實(shí)我們需要重點(diǎn)關(guān)注的就是上面畫紅線的部分,也就是對稱歸一化的拉普拉斯矩陣,拉普拉斯矩陣是對稱矩陣,可以進(jìn)行特征分解(譜分解)

?gcn,cnn,1024程序員節(jié),算法

gcn,cnn,1024程序員節(jié),算法

回到最開始的問題,這個公式會考慮到B節(jié)點(diǎn)的度,那么A就不會分到B很多的特征,因?yàn)锳對B來說只是萬千朋友的一個,分母就變大了。


總結(jié)

GCN就是在平均法的基礎(chǔ)上,加入了針對每個節(jié)點(diǎn)度的歸一化。

GCN的每一層通過鄰接矩陣A和特征矩陣H(l)相乘得到每個頂點(diǎn)鄰居特征的匯總,然后再乘上一個參數(shù)矩陣W(l),加上激活函數(shù)σ做一次非線性變換得到聚合鄰接頂點(diǎn)特征的矩陣H(l+1)。

之所以鄰接矩陣A要加上一個單位矩陣I,是因?yàn)槲覀兿M谶M(jìn)行信息傳播的時候頂點(diǎn)自身的特征信息也得到保留。 而對鄰居矩陣A波浪進(jìn)行歸一化操作D^(-1/2)A*D是為了信息傳遞的過程中保持特征矩陣H的原有分布,防止一些度數(shù)高的頂點(diǎn)和度數(shù)低的頂點(diǎn)在特征分布上產(chǎn)生較大的差異。

總之就是GCN設(shè)計了一個很精妙的公式,用這個公式就可以很好地提取圖數(shù)據(jù)的特征。

提取出來的特征就可以用于節(jié)點(diǎn)分類,節(jié)點(diǎn)關(guān)系預(yù)測等工作。文章來源地址http://www.zghlxwxcb.cn/news/detail-791157.html

到了這里,關(guān)于GCN-圖卷積神經(jīng)網(wǎng)絡(luò)算法講解(通俗版)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 深入淺出【圖卷積神經(jīng)網(wǎng)絡(luò)GCN】從 鄰接矩陣、特征值矩陣、單位陣、度矩陣 入手,深刻理解融合鄰居節(jié)點(diǎn)(信息) | GCN從公式到代碼實(shí)現(xiàn) 全過程 | 在Cora數(shù)據(jù)集上實(shí)現(xiàn)節(jié)點(diǎn)分類任務(wù)

    ? 這個世界雖然破破爛爛,可總有一些人在縫縫補(bǔ)補(bǔ),以耀眼的光芒照耀這片大地。 ? ??作者主頁: 追光者♂?? ???????? ??個人簡介: ? ??[1] 計算機(jī)專業(yè)碩士研究生?? ? ??[2] 2022年度博客之星人工智能領(lǐng)域TOP4?? ? ??[3] 阿里云社區(qū)特邀專家博主?? ? ??[4] CSDN-人

    2024年02月13日
    瀏覽(28)
  • 圖神經(jīng)網(wǎng)絡(luò)(二)—GCN-pytorch版本代碼詳解

    圖神經(jīng)網(wǎng)絡(luò)(二)—GCN-pytorch版本代碼詳解

    寫在前面… 在研究生的工作中使用到了圖神經(jīng)網(wǎng)絡(luò),所以平時會看一些與圖神經(jīng)網(wǎng)絡(luò)相關(guān)的論文和代碼。寫這個系列的目的是為了幫助自己再理一遍算法的基本思想和流程,如果同時也能對其他人提供幫助是極好的~博主也是在學(xué)習(xí)過程中,有些地方有誤還請大家批評指正!

    2023年04月15日
    瀏覽(25)
  • 四十八.圖卷積網(wǎng)絡(luò)(GCN)

    CNN 在圖像識別等任務(wù)中具有重要作用,主要是因?yàn)?CNN 利用了圖片(信號)在其域中的局部平移不變性。由于圖結(jié)構(gòu)不存在平移不變性,所以 CNN 無法直接在圖上進(jìn)行卷積。 CNN 之所以能成為圖像領(lǐng)域的明珠卻很少應(yīng)用于其他領(lǐng)域原因是:「圖片是一個規(guī)整的二維矩陣」,無論

    2024年02月14日
    瀏覽(20)
  • 三種圖神經(jīng)網(wǎng)絡(luò)(GGNN GCN GAT)關(guān)于入侵檢測系統(tǒng)的應(yīng)用

    消息傳遞是指在圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network,GNN)中,從節(jié)點(diǎn)向鄰居節(jié)點(diǎn)傳遞信息的過程。這個過程通常被稱為“ 消息傳遞步驟 ”或“信息傳播步驟”。 在消息傳遞步驟中,每個節(jié)點(diǎn)將自身的特征和鄰居節(jié)點(diǎn)的特征合并,并計算出一個新的節(jié)點(diǎn)表示,然后將這個新的節(jié)點(diǎn)

    2024年02月04日
    瀏覽(31)
  • Pytorch+PyG實(shí)現(xiàn)GCN(圖卷積網(wǎng)絡(luò))

    Pytorch+PyG實(shí)現(xiàn)GCN(圖卷積網(wǎng)絡(luò))

    大家好,我是阿光。 本專欄整理了《圖神經(jīng)網(wǎng)絡(luò)代碼實(shí)戰(zhàn)》,內(nèi)包含了不同圖神經(jīng)網(wǎng)絡(luò)的相關(guān)代碼實(shí)現(xiàn)(PyG以及自實(shí)現(xiàn)),理論與實(shí)踐相結(jié)合,如GCN、GAT、GraphSAGE等經(jīng)典圖網(wǎng)絡(luò),每一個代碼實(shí)例都附帶有完整的代碼。 正在更新中~ ? ?? 我的項(xiàng)目環(huán)境: 平臺:Windows10 語言環(huán)

    2024年01月17日
    瀏覽(17)
  • 圖卷積網(wǎng)絡(luò)(Graph Convolution Network,GCN)

    圖卷積網(wǎng)絡(luò)(Graph Convolution Network,GCN)

    目錄 一、前言 二、GCN原理 三、GCN用于節(jié)點(diǎn)分類 四、總結(jié) 在圖神經(jīng)網(wǎng)絡(luò)出現(xiàn)之前,一般的神經(jīng)網(wǎng)絡(luò)只能對常規(guī)的歐式數(shù)據(jù)進(jìn)行處理,其特點(diǎn)就是節(jié)點(diǎn)有固定的排列規(guī)則和順序,如2維網(wǎng)格和1維序列。 ?近幾年來,將深度學(xué)習(xí)應(yīng)用到處理和圖結(jié)構(gòu)數(shù)據(jù)相關(guān)的任務(wù)中越來越受

    2024年02月04日
    瀏覽(17)
  • 【AI基本模型】圖卷積網(wǎng)絡(luò)GCN簡化原理

    【AI基本模型】圖卷積網(wǎng)絡(luò)GCN簡化原理

    目錄 一、說明 二、圖卷積網(wǎng)絡(luò) 三、圖卷積網(wǎng)絡(luò)是如何工作的? 四、如何手動計算圖卷積網(wǎng)絡(luò)(GCN)? 4.1 構(gòu)建網(wǎng)絡(luò) 4.2 開始執(zhí)行訓(xùn)練(參見上圖)? 五、圖卷積網(wǎng)絡(luò)的應(yīng)用 ????????圖卷積網(wǎng)絡(luò) (GCN) 于 2017 年推出,已成為分析和解釋結(jié)構(gòu)為圖的數(shù)據(jù)的強(qiáng)大工具。對于非

    2024年04月27日
    瀏覽(26)
  • T-GCN:用于交通流預(yù)測的時序圖卷積網(wǎng)絡(luò)

    T-GCN:用于交通流預(yù)測的時序圖卷積網(wǎng)絡(luò)

    ?1.文章信息 本次介紹的文章是2020年發(fā)表在IEEE 智能交通系統(tǒng)匯刊上的《T-GCN: A Temporal Graph Convolutional Network for Traffic Prediction》。 2.摘要 為了同時捕獲空間和時間依賴性,本文提出了一種新的基于神經(jīng)網(wǎng)絡(luò)的交通流預(yù)測方法——時間圖卷積網(wǎng)絡(luò)(T-GCN)模型,該模型將圖卷積網(wǎng)絡(luò)

    2024年02月16日
    瀏覽(20)
  • 【圖神經(jīng)網(wǎng)絡(luò) 02】圖卷積

    【圖神經(jīng)網(wǎng)絡(luò) 02】圖卷積

    圖卷積獲取特征需要:各節(jié)點(diǎn)輸入特征、網(wǎng)絡(luò)結(jié)構(gòu)圖。 圖卷積是半監(jiān)督任務(wù),不需要全部標(biāo)簽,少量標(biāo)簽也能訓(xùn)練,計算損失時只考慮有標(biāo)簽。 ?針對橙色節(jié)點(diǎn),計算特征:平均其鄰居特征(包括自身)后傳入神經(jīng)網(wǎng)絡(luò)。 GCN也可以做多層,每一層輸入的還是節(jié)點(diǎn)特征。 ?

    2024年02月09日
    瀏覽(26)
  • 葡萄書--關(guān)系圖卷積神經(jīng)網(wǎng)絡(luò)

    葡萄書--關(guān)系圖卷積神經(jīng)網(wǎng)絡(luò)

    同質(zhì)圖指的是圖中的節(jié)點(diǎn)類型和關(guān)系類型都僅有一種 異質(zhì)圖是指圖中的節(jié)點(diǎn)類型或關(guān)系類型多于一種 知識圖譜包含實(shí)體和實(shí)體之間的關(guān)系,并以三元組的形式存儲(頭實(shí)體, 關(guān)系, 尾實(shí)體,即異質(zhì)圖定義的邊) 一般來說,知識圖譜補(bǔ)全有兩種任務(wù):鏈路預(yù)測和實(shí)體分類 如果

    2024年04月22日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包