0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

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

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

深度學(xué)習(xí)的圖原理

科技綠洲 ? 來源:Python數(shù)據(jù)科學(xué) ? 作者:Python數(shù)據(jù)科學(xué) ? 2023-11-03 10:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1.1 什么是圖(graph)?

在圖論的上下文中,圖是一種結(jié)構(gòu)化數(shù)據(jù)類型,具有節(jié)點(nodes)(保存信息的實體)和邊緣(edges)(連接節(jié)點的連接,也可以保存信息)。

圖是一種數(shù)據(jù)結(jié)構(gòu)的方式,但它本身可以是一個數(shù)據(jù)點。圖是一種非歐幾里得數(shù)據(jù)類型,這意味著它們存在于三維空間,不像其他數(shù)據(jù)類型,比如圖像、文本和音頻。

圖可以具有某些屬性,這些屬性限制了可以對其執(zhí)行的可能操作和分析。這些屬性可以被定義。

1.2 圖的定義

首先,讓我們介紹一些定義。

在計算機科學(xué)中,我們經(jīng)常談?wù)撘环N稱為圖的數(shù)據(jù)結(jié)構(gòu):

圖片

圖的邊緣和/或節(jié)點上可以有標(biāo)簽,讓我們給它一些邊緣和節(jié)點的標(biāo)簽。

圖片

標(biāo)簽也可以被視為權(quán)重,但這取決于圖的設(shè)計者。

標(biāo)簽不必是數(shù)字,它們可以是文本的。

圖片

標(biāo)簽不必是唯一的;給多個節(jié)點相同的標(biāo)簽是完全可能的,有時也是有用的。例如,氫分子就是一個例子:

圖片

注意混合了數(shù)值和文本數(shù)據(jù)類型

圖可以具有特征(也稱為屬性)。

圖片

要小心不要混淆特征和標(biāo)簽。一個簡單的思考方式是使用名稱、角色和人的類比:

一個節(jié)點就是一個人,一個節(jié)點的標(biāo)簽就是一個人的名字,而節(jié)點的特征就是這個人的特點。

圖可以是有向的或無向的:

圖片

請注意,有向圖也可以具有無向邊

圖中的一個節(jié)點甚至可以有指向自身的邊緣。這被稱為自環(huán)(self-loop)。

圖可以是:

  • 異構(gòu)的(Heterogeneous) — 由不同類型的節(jié)點組成
  • 同構(gòu)的(Homogeneous) — 由相同類型的節(jié)點組成

并且可以是:

  • 靜態(tài)的(Static) — 節(jié)點和邊不變,沒有添加或刪除
  • 動態(tài)的(Dynamic) — 節(jié)點和邊發(fā)生變化,添加、刪除、移動等

粗略地說,圖可以模糊地描述為:

  • 密集的(Dense) — 由許多節(jié)點和邊組成
  • 稀疏的(Sparse) — 由較少的節(jié)點和邊組成

通過將它們轉(zhuǎn)化為平面形式,可以使圖看起來更整潔,這基本上意味著重新排列節(jié)點,使邊不相交。

圖片

當(dāng)我們探索目前在各種GNN架構(gòu)中使用的許多不同方法時,這些概念和術(shù)語將會派上用場。其中一些基本方法在以下方面進(jìn)行了描述:

1.3 圖分析

有各種不同的圖結(jié)構(gòu)可供ML模型學(xué)習(xí)(Wheel,Cycle,Star,Grid,Lollipop,Dense,Sparse等)。

你可以遍歷一個圖:

圖片

Jon在4個時間步驟內(nèi)從Bob到Bic;他最好希望不下雪!

在這種情況下,我們正在遍歷一個無向圖。顯然,如果圖是有向的,那么只需按照邊的方向前進(jìn)。有幾種不同類型的遍歷,所以要注意措辭。以下是一些最常見的圖遍歷術(shù)語及其含義:

  • 行走(Walk):圖的遍歷 —— 閉合行走是指目標(biāo)節(jié)點與源節(jié)點相同
  • 小徑(Trail):沒有重復(fù)邊的行走 —— 電路(Circuit)是閉合小徑
  • 路徑(Path):沒有重復(fù)節(jié)點的行走 —— 循環(huán)(Cycle)是閉合路徑

在遍歷的概念基礎(chǔ)上,人們還可以在圖上發(fā)送消息。

圖片

Sam?更像是S-p-am(垃圾郵件)...

所有的Sam的鄰居都給他發(fā)送了一條消息,其中t代表時間步驟。Sam可以選擇打開他的郵箱并更新自己的信息。在具有注意機制的模型中,信息在網(wǎng)絡(luò)中傳播的概念非常重要。在圖中,消息傳遞是我們泛化卷積的一種方式。稍后會詳細(xì)討論。

1.4 E-圖 — 計算機上的圖

通過學(xué)習(xí)所有這些,你現(xiàn)在對圖理論有了基本的理解!任何對GNNs重要的其他概念將會隨著它們的出現(xiàn)而進(jìn)行解釋,但與此同時,還有一個關(guān)于圖的最后一個主題我們需要涵蓋。我們必須學(xué)會如何在計算中表達(dá)圖。

有幾種方法可以將圖轉(zhuǎn)化為計算機可以處理的格式;它們都是不同類型的矩陣。

關(guān)聯(lián)矩陣Incidence Matrix(I):

關(guān)聯(lián)矩陣通常在研究論文中用大寫字母I表示,由1、0和-1組成,關(guān)聯(lián)矩陣可以按照以下簡單的模式制作:

圖片

從圖到關(guān)聯(lián)矩陣

(帶權(quán)重的)鄰接矩陣Adjacency Matrix(A):

圖的鄰接矩陣由1和0組成,除非它是加權(quán)或帶標(biāo)簽的。在任何情況下,A都可以按照以下規(guī)則構(gòu)建:

圖片

無向圖的鄰接矩陣因此在其對角線上是對稱的,從左上角對象到右下角:

圖片

有向圖的鄰接矩陣只覆蓋對角線線的一側(cè),因為有向圖的邊只朝一個方向。

鄰接矩陣可以是“帶權(quán)重的”,這基本上意味著每條邊都有與之關(guān)聯(lián)的值,所以不是1,而是將值放在相應(yīng)的矩陣坐標(biāo)中。這些權(quán)重可以代表任何你想要的東西。例如,在分子的情況下,它們可以表示兩個節(jié)點(原子)之間的鍵的類型。在LinkedIn這樣的社交網(wǎng)絡(luò)中,它們可以表示兩個節(jié)點(人)之間的1st、2nd或3rd級連接。

邊的權(quán)重概念是使GNNs如此強大的一個屬性;它們允許我們考慮結(jié)構(gòu)性(依賴性)和獨立性信息。對于實際應(yīng)用,這意味著我們可以考慮外部和內(nèi)部信息。

度矩陣(D):

圖的度矩陣可以通過之前介紹的度概念來找到。D本質(zhì)上是一個對角矩陣,其中對角線的每個值都是其對應(yīng)節(jié)點的度數(shù)。

圖片

各種類型的圖和矩陣(由歐洲生物信息學(xué)研究所提供)

不要忘記度數(shù)只是鄰接矩陣的每一行的總和。然后,這些度數(shù)被放在矩陣的對角線上(鄰接矩陣的對稱線)。這很好地引出了最后的矩陣:

拉普拉斯矩陣(L):

圖的拉普拉斯矩陣是通過從鄰接矩陣中減去度矩陣而得到的:

圖片

度矩陣中的每個值都減去了相應(yīng)的鄰接矩陣中的值,如下所示:

圖片圖矩陣三合一(由維基百科提供)

還有其他圖矩陣表示法,如關(guān)聯(lián)矩陣,但絕大多數(shù)應(yīng)用于圖類型數(shù)據(jù)的GNN應(yīng)用都使用這三個矩陣中的一個、兩個或全部。這是因為它們,尤其是拉普拉斯矩陣,提供了關(guān)于實體(具有屬性的元素)和關(guān)系(實體之間的連接)的重要信息。

唯一缺失的是一個規(guī)則(將實體通過關(guān)系映射到其他實體的函數(shù))。這就是神經(jīng)網(wǎng)絡(luò)派上用場的地方。

2. 深度學(xué)習(xí)

神經(jīng)網(wǎng)絡(luò)模型(或簡稱NN)及其擴展家族,包括卷積神經(jīng)網(wǎng)絡(luò)、循環(huán)神經(jīng)網(wǎng)絡(luò),當(dāng)然還有圖神經(jīng)網(wǎng)絡(luò),都是深度學(xué)習(xí)算法的一種類型。

深度學(xué)習(xí)是一種機器學(xué)習(xí)算法,而機器學(xué)習(xí)又是人工智能的一個子集。

一切都始于謙卑的線性方程。

如果我們將這個方程結(jié)構(gòu)化為一個感知器,我們可以看到:

圖片

其中輸出( )是偏差( )與輸入( )乘以權(quán)重( )的和( )。

神經(jīng)網(wǎng)絡(luò)通常具有激活函數(shù),它基本上決定了一個給定神經(jīng)元的輸出( )是否應(yīng)該被認(rèn)為是“激活的”,并將感知器的輸出值保持在一個合理的可計算范圍內(nèi)(例如,sigmoid函數(shù)用于 范圍,tanh函數(shù)用于 范圍,ReLU函數(shù)用于 或 等)。這就是為什么我們在感知器的末端附加激活函數(shù)的原因。

圖片

當(dāng)我們將一堆感知器放在一起時,我們得到了一個類似于神經(jīng)網(wǎng)絡(luò)開端的東西!這些感知器將數(shù)值值從一層傳遞到另一層,每一次傳遞都將該數(shù)值值接近網(wǎng)絡(luò)經(jīng)過訓(xùn)練的目標(biāo)/標(biāo)簽。

圖片

當(dāng)你把一堆感知器放在一起時,你會得到:

圖片

一個普通的NN(由Digital Trends提供)

要訓(xùn)練神經(jīng)網(wǎng)絡(luò),我們首先需要計算我們需要調(diào)整模型權(quán)重的量。我們使用損失函數(shù)來做到這一點,它計算誤差。

其中 是誤差, 是期望的輸出, 是實際輸出。在高層次上,誤差計算為實際輸出(神經(jīng)網(wǎng)絡(luò)的預(yù)測)減去期望輸出(目標(biāo))。目標(biāo)是最小化誤差。通過使用稱為反向傳播的過程來調(diào)整每一層的權(quán)重來最小化誤差。

基本上,反向傳播將調(diào)整從輸出層傳播到輸入層的整個網(wǎng)絡(luò)。所調(diào)整的量由接收誤差作為輸入的優(yōu)化函數(shù)確定。優(yōu)化函數(shù)可以被想象成一個球在山上滾動,球的位置就是誤差。因此,當(dāng)球滾到山底時,誤差達(dá)到最小值。

此外,還有一些必須定義的超參數(shù),其中最重要的之一是學(xué)習(xí)率。學(xué)習(xí)率調(diào)整了優(yōu)化函數(shù)應(yīng)用的速率。學(xué)習(xí)率就像重力設(shè)置;重力越大(學(xué)習(xí)率越高),球滾得越快,反之亦然。

神經(jīng)網(wǎng)絡(luò)具有許多不同的宏觀和微觀自定義選項,使每個模型都具有獨特的特點,性能各異,但它們都是基于這個基本模型的。稍后我們將看到,這對于圖學(xué)習(xí)尤其如此。根據(jù)需要將介紹卷積和重復(fù)等操作。

3. 深度神經(jīng)網(wǎng)絡(luò)就是一種圖

文章到此,你可能已經(jīng)注意到一個微妙但顯而易見的事實:

神經(jīng)網(wǎng)絡(luò)實際上就是圖!

神經(jīng)網(wǎng)絡(luò)是一種特殊的圖,但它們具有相同的結(jié)構(gòu),因此具有相同的術(shù)語、概念和規(guī)則。

回想一下感知器的結(jié)構(gòu)本質(zhì)。我們可以將輸入值( )、偏差值( )和求和運算( )視為圖中的3個節(jié)點。我們可以將權(quán)重( )視為連接輸入值( )和求和運算( )的邊。

神經(jīng)網(wǎng)絡(luò)最相似的具體類型是多部分圖。多部分圖是可以分成不同節(jié)點集的圖。每個節(jié)點集中的節(jié)點可以在節(jié)點集之間共享邊,但不能在每個節(jié)點集內(nèi)部共享邊。

圖片

同構(gòu)二分圖(由Wolfram MathWorld提供)

有些神經(jīng)網(wǎng)絡(luò)甚至具有完全連接的節(jié)點、條件節(jié)點和其他瘋狂的架構(gòu),這些架構(gòu)賦予了神經(jīng)網(wǎng)絡(luò)其特有的多功能性和強大性能;以下是一些最流行的架構(gòu):

圖片

神經(jīng)網(wǎng)絡(luò)動物園(由Asimov Institute提供)

每種顏色對應(yīng)于不同類型的節(jié)點,可以以多種不同的方式排列。通過網(wǎng)絡(luò)中的數(shù)據(jù)前向或后向傳播類似于圖中的消息傳遞。圖中的邊緣或節(jié)點特征類似于神經(jīng)網(wǎng)絡(luò)中的權(quán)重。請注意,一些節(jié)點甚至具有我們之前提到的自環(huán)(RNNs — 循環(huán)神經(jīng)網(wǎng)絡(luò)中的特性)。

神經(jīng)網(wǎng)絡(luò)并不是唯一具有類似圖結(jié)構(gòu)的機器學(xué)習(xí)模型。

  • K均值
  • K最近鄰
  • 決策樹
  • 隨機森林
  • 馬爾可夫鏈

如上模型,它們本身都具有圖形結(jié)構(gòu),或者以圖形結(jié)構(gòu)輸出數(shù)據(jù)。

4. 本質(zhì)上

我們涵蓋了很多內(nèi)容,但回顧一下,我們深入探討了3個概念:

  • 圖論
  • 深度學(xué)習(xí)
  • 使用圖理論的機器學(xué)習(xí)

有了這些先決條件,人們可以充分理解和欣賞圖學(xué)習(xí)。在高層次上,圖學(xué)習(xí)進(jìn)一步探索并利用了深度學(xué)習(xí)和圖理論之間的關(guān)系,使用一系列設(shè)計用于處理非歐幾里德數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)。

5. 關(guān)鍵要點

有許多關(guān)鍵要點,但要點是:

  • 所有圖都具有定義其可用或可分析操作的屬性。
  • 圖是使用各種矩陣來進(jìn)行計算表示的。每個矩陣提供不同數(shù)量或類型的信息。
  • 深度學(xué)習(xí)是機器學(xué)習(xí)的一個子集,大致模擬人類大腦中神經(jīng)元工作的方式。
  • 深度學(xué)習(xí)通過在網(wǎng)絡(luò)中前向傳遞信息并向后傳播神經(jīng)元調(diào)整來進(jìn)行迭代學(xué)習(xí)。
  • 神經(jīng)網(wǎng)絡(luò)(以及其他機器學(xué)習(xí)算法)與圖理論有密切聯(lián)系;

現(xiàn)在你具備了深入了解圖學(xué)習(xí)的所有先決條件。一個好的起點是研究迄今為止已經(jīng)開發(fā)的各種圖神經(jīng)網(wǎng)絡(luò)的種類。

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

    關(guān)注

    29

    文章

    3030

    瀏覽量

    83230
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7250

    瀏覽量

    91512
  • 卷積
    +關(guān)注

    關(guān)注

    0

    文章

    95

    瀏覽量

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

    關(guān)注

    73

    文章

    5557

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    AI、5G和生物識別上榜 阿里巴巴達(dá)摩院發(fā)布2019十大科技趨勢

    解釋,單純的深度學(xué)習(xí)已經(jīng)成熟,而結(jié)合了深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)將端到端學(xué)習(xí)與歸納推理相結(jié)合,有望解決
    發(fā)表于 01-02 13:49 ?2203次閱讀

    深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)分享:CNN經(jīng)典網(wǎng)絡(luò)之-ResNet

    深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)分享:CNN 經(jīng)典網(wǎng)絡(luò)之-ResNet resnet 又叫深度殘差網(wǎng)絡(luò) 圖像識別準(zhǔn)確率很高,主要作者是國人哦
    的頭像 發(fā)表于 10-12 09:54 ?1297次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b>與<b class='flag-5'>圖</b>神經(jīng)網(wǎng)絡(luò)<b class='flag-5'>學(xué)習(xí)</b>分享:CNN經(jīng)典網(wǎng)絡(luò)之-ResNet

    Nanopi深度學(xué)習(xí)之路(1)深度學(xué)習(xí)框架分析

    學(xué)習(xí),也就是現(xiàn)在最流行的深度學(xué)習(xí)領(lǐng)域,關(guān)注論壇的朋友應(yīng)該看到了,開發(fā)板試用活動中有【NanoPi K1 Plus試用】的申請,介紹中NanopiK1plus的高大上優(yōu)點之一就是“可運行深度
    發(fā)表于 06-04 22:32

    深度學(xué)習(xí)在汽車中的應(yīng)用

    的,如對交通標(biāo)志進(jìn)行分類,或者盡管存在墨鏡、帽子和/或其他類型的障礙物,也可能識別特定面部。 1:簡易交通標(biāo)志示例深度學(xué)習(xí)的“學(xué)習(xí)”層面源于對分層網(wǎng)絡(luò)如何在給定大量已知輸入及其期望輸
    發(fā)表于 03-13 06:45

    如何在交通領(lǐng)域構(gòu)建基于深度學(xué)習(xí)架構(gòu)

    How to Build a Graph-Based Deep Learning Architecture in Traf?c Domain: A Survey綜述:如何在交通領(lǐng)域構(gòu)建基于深度
    發(fā)表于 08-31 08:05

    深度學(xué)習(xí)存在哪些問題?

    深度學(xué)習(xí)常用模型有哪些?深度學(xué)習(xí)常用軟件工具及平臺有哪些?深度學(xué)習(xí)存在哪些問題?
    發(fā)表于 10-14 08:20

    深度學(xué)習(xí)模型是如何創(chuàng)建的?

    具有深度學(xué)習(xí)模型的嵌入式系統(tǒng)應(yīng)用程序帶來了巨大的好處。深度學(xué)習(xí)嵌入式系統(tǒng)已經(jīng)改變了各個行業(yè)的企業(yè)和組織。深度
    發(fā)表于 10-27 06:34

    什么是深度學(xué)習(xí)?使用FPGA進(jìn)行深度學(xué)習(xí)的好處?

    什么是深度學(xué)習(xí)為了解釋深度學(xué)習(xí),有必要了解神經(jīng)網(wǎng)絡(luò)。神經(jīng)網(wǎng)絡(luò)是一種模擬人腦的神經(jīng)元和神經(jīng)網(wǎng)絡(luò)的計算模型。作為具體示例,讓我們考慮一個輸入圖像并識別圖像中對象類別的示例。這個例子對應(yīng)機器
    發(fā)表于 02-17 16:56

    深度學(xué)習(xí)是什么?了解深度學(xué)習(xí)難嗎?讓你快速了解深度學(xué)習(xí)的視頻講解

    深度學(xué)習(xí)是什么?了解深度學(xué)習(xí)難嗎?讓你快速了解深度學(xué)習(xí)的視頻講解本文檔視頻讓你4分鐘快速了解
    發(fā)表于 08-23 14:36 ?16次下載

    關(guān)系歸納偏差和深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)的詳細(xì)資料說明

    人工智能(AI)最近經(jīng)歷了一次復(fù)興,在視覺、語言、控制和決策等關(guān)鍵領(lǐng)域取得了重大進(jìn)展。這在一定程度上是由于廉價的數(shù)據(jù)和廉價的計算資源,它們符合深度學(xué)習(xí)的自然優(yōu)勢。然而,人類智力的許多定義性特征,是在
    發(fā)表于 07-14 08:00 ?0次下載
    關(guān)系歸納偏差和<b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b>及<b class='flag-5'>圖</b>神經(jīng)網(wǎng)絡(luò)的詳細(xì)資料說明

    深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)分享:Transformer

    在過去的幾年中,神經(jīng)網(wǎng)絡(luò)的興起與應(yīng)用成功推動了模式識別和數(shù)據(jù)挖掘的研究。許多曾經(jīng)嚴(yán)重依賴于手工提取特征的機器學(xué)習(xí)任務(wù)(如目標(biāo)檢測、機器翻譯和語音識別),如今都已被各種端到端的深度學(xué)習(xí)范式(例如卷積
    的頭像 發(fā)表于 09-22 10:16 ?1757次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>學(xué)習(xí)</b>與<b class='flag-5'>圖</b>神經(jīng)網(wǎng)絡(luò)<b class='flag-5'>學(xué)習(xí)</b>分享:Transformer

    什么是深度學(xué)習(xí)算法?深度學(xué)習(xí)算法的應(yīng)用

    什么是深度學(xué)習(xí)算法?深度學(xué)習(xí)算法的應(yīng)用 深度學(xué)習(xí)算法被認(rèn)為是人工智能的核心,它是一種模仿人類大腦
    的頭像 發(fā)表于 08-17 16:03 ?2608次閱讀

    深度學(xué)習(xí)框架pytorch入門與實踐

    的。PyTorch是一個開源的深度學(xué)習(xí)框架,在深度學(xué)習(xí)領(lǐng)域得到了廣泛應(yīng)用。本文將介紹PyTorch框架的基本知識、核心概念以及如何在實踐中使用PyTorch框架。 一、PyTorch框
    的頭像 發(fā)表于 08-17 16:03 ?1896次閱讀

    深度學(xué)習(xí)框架是什么?深度學(xué)習(xí)框架有哪些?

    深度學(xué)習(xí)框架是什么?深度學(xué)習(xí)框架有哪些?? 深度學(xué)習(xí)框架是一種軟件工具,它可以幫助開發(fā)者輕松快速
    的頭像 發(fā)表于 08-17 16:03 ?3412次閱讀

    深度學(xué)習(xí)框架和深度學(xué)習(xí)算法教程

    深度學(xué)習(xí)框架和深度學(xué)習(xí)算法教程 深度學(xué)習(xí)是機器學(xué)習(xí)領(lǐng)
    的頭像 發(fā)表于 08-17 16:11 ?1427次閱讀

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品