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

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

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

詳解圖神經(jīng)網(wǎng)絡(luò)的數(shù)學(xué)原理1

jf_78858299 ? 來源:人工智能大講堂 ? 作者:人工智能大講堂 ? 2023-03-17 09:58 ? 次閱讀

深度學(xué)習(xí)(Graph Deep Learning) 多年來一直在加速發(fā)展。許多現(xiàn)實(shí)生活問題使GDL成為萬能工具:在社交媒體、藥物發(fā)現(xiàn)、芯片植入、預(yù)測(cè)、生物信息學(xué)等方面都顯示出了很大的前景。

本文將流行的圖神經(jīng)網(wǎng)絡(luò)及其數(shù)學(xué)細(xì)微差別的進(jìn)行詳細(xì)的梳理和解釋,圖深度學(xué)習(xí)背后的思想是學(xué)習(xí)具有節(jié)點(diǎn)和邊的圖的結(jié)構(gòu)和空間特征,這些節(jié)點(diǎn)和邊表示實(shí)體及其交互。

圖片

在我們進(jìn)入圖神經(jīng)網(wǎng)絡(luò)之前,讓我們先來探索一下計(jì)算機(jī)科學(xué)中的圖是什么。

圖G(V,E)是包含一組頂點(diǎn)(節(jié)點(diǎn))i∈v和一組連接頂點(diǎn)i和j的邊eij∈E的數(shù)據(jù)結(jié)構(gòu),如果連接兩個(gè)節(jié)點(diǎn)i和j,則eij=1,否則eij=0??梢詫⑦B接信息存儲(chǔ)在鄰接矩陣A中:

圖片

我假設(shè)本文中的圖是無加權(quán)的(沒有邊權(quán)值或距離)和無向的(節(jié)點(diǎn)之間沒有方向關(guān)聯(lián)),并且假設(shè)這些圖是同質(zhì)的(單一類型的節(jié)點(diǎn)和邊;相反的是“異質(zhì)”)。

圖與常規(guī)數(shù)據(jù)的不同之處在于,它們具有神經(jīng)網(wǎng)絡(luò)必須尊重的結(jié)構(gòu);不利用它就太浪費(fèi)了。下面的圖是一個(gè)社交媒體圖的例子,節(jié)點(diǎn)是用戶,邊是他們的互動(dòng)(比如關(guān)注/點(diǎn)贊/轉(zhuǎn)發(fā))。

圖片

對(duì)于圖像來說,圖像本身就是一個(gè)圖!這是一種叫做“網(wǎng)格圖”的特殊變體,其中對(duì)于所有內(nèi)部節(jié)點(diǎn)和角節(jié)點(diǎn),來自節(jié)點(diǎn)的外向邊的數(shù)量是恒定的。在圖像網(wǎng)格圖中存在一些一致的結(jié)構(gòu),允許對(duì)其執(zhí)行簡單的類似卷積的操作。

圖像可以被認(rèn)為是一種特殊的圖,其中每個(gè)像素都是一個(gè)節(jié)點(diǎn),并通過虛線與周圍的其他像素連接。當(dāng)然,以這種方式查看圖像是不切實(shí)際的,因?yàn)檫@意味著需要一個(gè)非常大的圖。例如,32×32×3的一個(gè)簡單的CIFAR-10圖像會(huì)有3072個(gè)節(jié)點(diǎn)和1984條邊。對(duì)于224×224×3的較大ImageNet圖像,這些數(shù)字會(huì)更大。

圖片

與圖片相比,圖的不同的節(jié)點(diǎn)與其他節(jié)點(diǎn)的連接數(shù)量不同,并且沒有固定的結(jié)構(gòu),但是就是這種結(jié)構(gòu)為圖增加了價(jià)值。

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

單個(gè)圖神經(jīng)網(wǎng)絡(luò)(GNN)層有一堆步驟,在圖中的每個(gè)節(jié)點(diǎn)上會(huì)執(zhí)行:

這些組成了對(duì)圖形進(jìn)行學(xué)習(xí)的構(gòu)建塊,GDL的創(chuàng)新都是在這3個(gè)步驟的進(jìn)行的改變。

節(jié)點(diǎn)

節(jié)點(diǎn)表示一個(gè)實(shí)體或?qū)ο?,如用戶或原子。因此?jié)點(diǎn)具有所表示實(shí)體的一系列屬性。這些節(jié)點(diǎn)屬性形成了節(jié)點(diǎn)的特征(即“節(jié)點(diǎn)特征”或“節(jié)點(diǎn)嵌入”)。

通常,這些特征可以用Rd中的向量表示. 這個(gè)向量要么是潛維嵌入,要么是以每個(gè)條目都是實(shí)體的不同屬性的方式構(gòu)造的。

例如,在社交媒體圖中,用戶節(jié)點(diǎn)具有可以用數(shù)字表示的年齡、性別、政治傾向、關(guān)系狀態(tài)等屬性。在分子圖中,原子節(jié)點(diǎn)可能具有化學(xué)性質(zhì),如對(duì)水的親和力、力、能量等,也可以用數(shù)字表示。

這些節(jié)點(diǎn)特征是GNN的輸入,每個(gè)節(jié)點(diǎn)i具有關(guān)聯(lián)的節(jié)點(diǎn)特征xi∈Rd和標(biāo)簽yi(可以是連續(xù)的,也可以是離散的,就像單獨(dú)編碼一樣)。

圖片

邊也可以有特征aij∈Rd '例如,在邊緣有意義的情況下(如原子之間的化學(xué)鍵)。我們可以把下面的分子想象成一個(gè)圖,其中原子是節(jié)點(diǎn),鍵是邊。雖然原子節(jié)點(diǎn)本身有各自的特征向量,但邊可以有不同的邊特征,編碼不同類型的鍵(單鍵、雙鍵、三鍵)。不過為了簡單起見,在本文中我將省略邊的特性。

圖片

現(xiàn)在我們知道了如何在圖中表示節(jié)點(diǎn)和邊,讓我們從一個(gè)具有一堆節(jié)點(diǎn)(具有節(jié)點(diǎn)特征)和邊的簡單圖開始。

圖片

消息傳遞

gnn以其學(xué)習(xí)結(jié)構(gòu)信息的能力而聞名。通常,具有相似特征或?qū)傩缘墓?jié)點(diǎn)相互連接(比如在社交媒體中)。GNN利用學(xué)習(xí)特定節(jié)點(diǎn)如何以及為什么相互連接,GNN會(huì)查看節(jié)點(diǎn)的鄰域。

鄰居Ni,節(jié)點(diǎn)I的集合定義為通過邊與I相連的節(jié)點(diǎn)j的集合。形式為Ni={j: eij∈E}。

圖片

一個(gè)人被他所處的圈子所影響。類似地GNN可以通過查看其鄰居Ni中的節(jié)點(diǎn)i來了解很多關(guān)于節(jié)點(diǎn)i的信息。為了在源節(jié)點(diǎn)i和它的鄰居節(jié)點(diǎn)j之間實(shí)現(xiàn)這種信息共享,gnn進(jìn)行消息傳遞。

對(duì)于GNN層,消息傳遞被定義為獲取鄰居的節(jié)點(diǎn)特征,轉(zhuǎn)換它們并將它們“傳遞”給源節(jié)點(diǎn)的過程。對(duì)于圖中的所有節(jié)點(diǎn),并行地重復(fù)這個(gè)過程。這樣,在這一步結(jié)束時(shí),所有的鄰域都將被檢查。

讓我們放大節(jié)點(diǎn)6并檢查鄰域N6={1,3,4}。我們?nèi)∶總€(gè)節(jié)點(diǎn)特征x1、x3和x4,用函數(shù)F對(duì)它們進(jìn)行變換,函數(shù)F可以是一個(gè)簡單的神經(jīng)網(wǎng)絡(luò)(MLP或RNN),也可以是仿射變換F(xj)=Wj?xj+b。簡單地說,“消息”是來自源節(jié)點(diǎn)的轉(zhuǎn)換后的節(jié)點(diǎn)特征。

圖片

F 可以是簡單的仿射變換或神經(jīng)網(wǎng)絡(luò)?,F(xiàn)在我們?cè)O(shè)F(xj)=Wj?xj為了方便計(jì)算 ? 表示簡單的矩陣乘法。

聚合

現(xiàn)在我們有了轉(zhuǎn)換后的消息{F(x1),F(xiàn)(x3),F(xiàn)(x4)}傳遞給節(jié)點(diǎn)6,下面就必須以某種方式聚合(“組合”)它們。有很多方法可以將它們結(jié)合起來。常用的聚合函數(shù)包括:

圖片

假設(shè)我們使用函數(shù)G來聚合鄰居的消息(使用sum、mean、max或min)。最終聚合的消息可以表示為:

圖片

更新

使用這些聚合消息,GNN層就要更新源節(jié)點(diǎn)i的特性。在這個(gè)更新步驟的最后,節(jié)點(diǎn)不僅應(yīng)該知道自己,還應(yīng)該知道它的鄰居。這是通過獲取節(jié)點(diǎn)i的特征向量并將其與聚合的消息相結(jié)合來操作的,一個(gè)簡單的加法或連接操作就可以解決這個(gè)問題。

使用加法

圖片

其中σ是一個(gè)激活函數(shù)(ReLU, ELU, Tanh), H是一個(gè)簡單的神經(jīng)網(wǎng)絡(luò)(MLP)或仿射變換,K是另一個(gè)MLP,將加法的向量投影到另一個(gè)維度。

使用連接:

圖片

為了進(jìn)一步抽象這個(gè)更新步驟,我們可以將K看作某個(gè)投影函數(shù),它將消息和源節(jié)點(diǎn)嵌入一起轉(zhuǎn)換:

圖片

初始節(jié)點(diǎn)特征稱為xi,在經(jīng)過第一GNN層后,我們將節(jié)點(diǎn)特征變?yōu)閔i。假設(shè)我們有更多的GNN層,我們可以用hli表示節(jié)點(diǎn)特征,其中l(wèi)是當(dāng)前GNN層索引。同樣,顯然h0i=xi(即GNN的輸入)。

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

    關(guān)注

    452

    文章

    50008

    瀏覽量

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

    關(guān)注

    42

    文章

    4726

    瀏覽量

    100319
  • 數(shù)學(xué)
    +關(guān)注

    關(guān)注

    0

    文章

    99

    瀏覽量

    19202
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    matlab 神經(jīng)網(wǎng)絡(luò) 數(shù)學(xué)建模數(shù)值分析

    matlab神經(jīng)網(wǎng)絡(luò) 數(shù)學(xué)建模數(shù)值分析 精通的可以討論下
    發(fā)表于 09-18 15:14

    matlab 中亮劍數(shù)學(xué) 全面掌握控制 神經(jīng)網(wǎng)絡(luò)就在腳下

    `如果想學(xué)控制,你的數(shù)學(xué)就是造詣,神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)離散數(shù)學(xué)數(shù)學(xué)建模實(shí)際問題分析,如何matlab求解,這里給你解答,這里是數(shù)學(xué)視頻,偏導(dǎo)數(shù)分
    發(fā)表于 07-30 11:46

    關(guān)于開關(guān)磁阻電機(jī)的matlab BP神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)建模方面的資料

    求大神們 給點(diǎn)關(guān)于開關(guān)磁阻電機(jī)的matlab BP神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)建模方面的資料
    發(fā)表于 11-17 11:16

    卷積神經(jīng)網(wǎng)絡(luò)入門資料

    卷積神經(jīng)網(wǎng)絡(luò)入門詳解
    發(fā)表于 02-12 13:58

    【PYNQ-Z2試用體驗(yàn)】神經(jīng)網(wǎng)絡(luò)基礎(chǔ)知識(shí)

    學(xué)習(xí)和認(rèn)知科學(xué)領(lǐng)域,是一種模仿生物神經(jīng)網(wǎng)絡(luò)(動(dòng)物的中樞神經(jīng)系統(tǒng),特別是大腦)的結(jié)構(gòu)和功能的數(shù)學(xué)模型或計(jì)算模型,用于對(duì)函數(shù)進(jìn)行估計(jì)或近似。神經(jīng)網(wǎng)絡(luò)由大量的人工
    發(fā)表于 03-03 22:10

    BP神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)數(shù)學(xué)知識(shí)分享

    一文看懂BP神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)數(shù)學(xué)知識(shí)
    發(fā)表于 06-16 07:14

    如何構(gòu)建神經(jīng)網(wǎng)絡(luò)

    原文鏈接:http://tecdat.cn/?p=5725 神經(jīng)網(wǎng)絡(luò)是一種基于現(xiàn)有數(shù)據(jù)創(chuàng)建預(yù)測(cè)的計(jì)算系統(tǒng)。如何構(gòu)建神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)包括:輸入層:根據(jù)現(xiàn)有數(shù)據(jù)獲取輸入的層隱藏層:使用反向傳播優(yōu)化輸入變量權(quán)重的層,以提高模型的預(yù)測(cè)
    發(fā)表于 07-12 08:02

    卷積神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)原理介紹

    在之前的系列中,我們學(xué)習(xí)了密集連接的神經(jīng)網(wǎng)絡(luò)(densely connected neural networks)。這些網(wǎng)絡(luò)神經(jīng)元被分成組,形成連續(xù)的層,相鄰的兩個(gè)層之間的神經(jīng)元相互
    的頭像 發(fā)表于 04-22 11:44 ?4768次閱讀

    深入卷積神經(jīng)網(wǎng)絡(luò)背后的數(shù)學(xué)原理

    在計(jì)算機(jī)神經(jīng)視覺技術(shù)的發(fā)展過程中,卷積神經(jīng)網(wǎng)絡(luò)成為了其中的重要組成部分,本文對(duì)卷積神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)原理進(jìn)行了介紹。
    的頭像 發(fā)表于 04-25 14:52 ?3498次閱讀

    深度:了解訓(xùn)練神經(jīng)網(wǎng)絡(luò)時(shí)所用到的數(shù)學(xué)過程

    模型的訓(xùn)練、調(diào)參是一項(xiàng)非常費(fèi)時(shí)費(fèi)力的工作,了解神經(jīng)網(wǎng)絡(luò)內(nèi)部的數(shù)學(xué)原理有利于快速找出問題所在。
    的頭像 發(fā)表于 07-15 15:22 ?4037次閱讀
    深度:了解訓(xùn)練<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>時(shí)所用到的<b class='flag-5'>數(shù)學(xué)</b>過程

    圖解:卷積神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)原理解析

    圖解:卷積神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)原理解析 源自:數(shù)學(xué)中國 過去我們已經(jīng)知道被稱為緊密連接的神經(jīng)網(wǎng)絡(luò)。這些網(wǎng)絡(luò)神經(jīng)
    的頭像 發(fā)表于 09-16 10:01 ?1498次閱讀
    圖解:卷積<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b><b class='flag-5'>數(shù)學(xué)原理</b>解析

    詳解神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)原理2

    。 本文將流行的神經(jīng)網(wǎng)絡(luò)及其數(shù)學(xué)細(xì)微差別的進(jìn)行詳細(xì)的梳理和解釋,深度學(xué)習(xí)背后的思想是學(xué)習(xí)具有節(jié)點(diǎn)和邊的的結(jié)構(gòu)和空間特征,這些節(jié)點(diǎn)
    的頭像 發(fā)表于 03-17 09:58 ?486次閱讀
    <b class='flag-5'>詳解</b><b class='flag-5'>圖</b><b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>的<b class='flag-5'>數(shù)學(xué)原理</b>2

    詳解神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)原理3

    。 本文將流行的神經(jīng)網(wǎng)絡(luò)及其數(shù)學(xué)細(xì)微差別的進(jìn)行詳細(xì)的梳理和解釋,深度學(xué)習(xí)背后的思想是學(xué)習(xí)具有節(jié)點(diǎn)和邊的的結(jié)構(gòu)和空間特征,這些節(jié)點(diǎn)
    的頭像 發(fā)表于 03-17 09:58 ?833次閱讀
    <b class='flag-5'>詳解</b><b class='flag-5'>圖</b><b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>的<b class='flag-5'>數(shù)學(xué)原理</b>3

    神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)建模中的應(yīng)用

    數(shù)學(xué)建模是一種利用數(shù)學(xué)方法和工具來描述和分析現(xiàn)實(shí)世界問題的過程。神經(jīng)網(wǎng)絡(luò)是一種模擬人腦神經(jīng)元結(jié)構(gòu)和功能的計(jì)算模型,可以用于解決各種復(fù)雜問題。在數(shù)學(xué)
    的頭像 發(fā)表于 07-02 11:29 ?705次閱讀

    數(shù)學(xué)建模神經(jīng)網(wǎng)絡(luò)模型的優(yōu)缺點(diǎn)有哪些

    數(shù)學(xué)建模神經(jīng)網(wǎng)絡(luò)模型是一種基于人工神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)建模方法,它通過模擬人腦神經(jīng)元的連接和信息傳遞機(jī)制,對(duì)復(fù)雜系統(tǒng)進(jìn)行建模和分析。
    的頭像 發(fā)表于 07-02 11:36 ?698次閱讀