自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

人工智能中圖神經(jīng)網(wǎng)絡(luò)GNN是什么?

人工智能
本文將介紹簡(jiǎn)單圖神經(jīng)網(wǎng)絡(luò)(GNN)的基礎(chǔ)知識(shí)及其內(nèi)在工作原理背后的直觀知識(shí)。

圖深度學(xué)習(xí)(Graph Deep Learning,GDL)是一個(gè)很有發(fā)展前景的研究領(lǐng)域,基于圖數(shù)據(jù)來(lái)學(xué)習(xí)和分析非常有用。本文將介紹簡(jiǎn)單圖神經(jīng)網(wǎng)絡(luò)(GNN)的基礎(chǔ)知識(shí)及其內(nèi)在工作原理背后的直觀知識(shí)。不過,大家不用擔(dān)心,為了能夠更直觀地看懂究竟發(fā)生了什么,作者在文中使用了大量彩圖給出圖解信息。

圖(Graph)是什么?

圖是一種由連接在一起的節(jié)點(diǎn)(頂點(diǎn))和邊構(gòu)成的數(shù)據(jù)結(jié)構(gòu),可用于表示沒有明確起點(diǎn)或終點(diǎn)的信息。所有節(jié)點(diǎn)都可占據(jù)空間中的任意位置,當(dāng)用二維或多維空間繪制圖的結(jié)構(gòu)時(shí),具有相似特征的節(jié)點(diǎn)通常會(huì)聚集到一起。

這就是一個(gè)圖,由一群分別表示實(shí)體的互連節(jié)點(diǎn)構(gòu)成。

邊上面的黑色尖頭表示節(jié)點(diǎn)之間的關(guān)系類型,其可表明一個(gè)關(guān)系是雙向的還是單向的。圖有兩種主要類型:有向圖和無(wú)向圖。在有向圖中,節(jié)點(diǎn)之間的連接存在方向;而無(wú)向圖的連接順序并不重要。有向圖既可以是單向的,也可以是雙向的。

圖可以表示很多事物——社交網(wǎng)絡(luò)、分子等等。節(jié)點(diǎn)可以表示用戶/產(chǎn)品/原子,而邊表示它們之間的連接,比如關(guān)注/通常與相連接的產(chǎn)品同時(shí)購(gòu)買/鍵。社交網(wǎng)絡(luò)圖可能看起來(lái)像是這樣,其中節(jié)點(diǎn)是用戶,邊則是連接:

節(jié)點(diǎn)表示用戶,邊則表示兩個(gè)實(shí)體之間的連接/關(guān)系。真實(shí)的社交網(wǎng)絡(luò)圖往往更加龐大和復(fù)雜!

接下來(lái)作者會(huì)介紹一些概念,如循環(huán)單元、嵌入向量表征和前饋神經(jīng)網(wǎng)絡(luò)。知道一些有關(guān)圖論的知識(shí)(比如什么是圖以及圖的形態(tài))也很不錯(cuò)。

有些術(shù)語(yǔ)你可能并不熟悉。不用擔(dān)心!對(duì)于那些讓人疑惑的術(shù)語(yǔ),作者都盡力鏈接了他可以找到的最靠譜的解釋,能讓你理解所涉概念的基本含義?;诖?,你還能進(jìn)一步了解這些概念,同時(shí)還能理解它們?cè)趫D神經(jīng)網(wǎng)絡(luò)中所發(fā)揮的作用。

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

每個(gè)節(jié)點(diǎn)都有一組定義它的特征。在社交網(wǎng)絡(luò)圖的案例中,這些特征可以是年齡、性別、居住國(guó)家、政治傾向等。每條邊連接的節(jié)點(diǎn)都可能具有相似的特征。這體現(xiàn)了這些節(jié)點(diǎn)之間的某種相關(guān)性或關(guān)系。

假設(shè)我們有一個(gè)圖 G,其具有以下頂點(diǎn)和邊:

這個(gè)圖與上圖是一樣的。

為了簡(jiǎn)單起見,我們假設(shè)其特征向量是當(dāng)前節(jié)點(diǎn)的索引的 one-hot 編碼。類似地,其標(biāo)簽(或類別)可設(shè)為節(jié)點(diǎn)的顏色(綠、紅、黃)。那么這個(gè)圖看起來(lái)會(huì)是這樣:

節(jié)點(diǎn)的順序其實(shí)并不重要。

注:在實(shí)際運(yùn)用中,盡量不要使用 one-hot 編碼,因?yàn)楣?jié)點(diǎn)的順序可能會(huì)非?;靵y。相反,應(yīng)該使用可明顯區(qū)分節(jié)點(diǎn)的特征,比如對(duì)社交網(wǎng)絡(luò)而言,可選擇年齡、性別、政治傾向等特征;對(duì)分子研究而言可選擇可量化的化學(xué)性質(zhì)。

現(xiàn)在,我們有節(jié)點(diǎn)的 one-hot 編碼(或嵌入)了,接下來(lái)我們將神經(jīng)網(wǎng)絡(luò)引入這一混合信息中來(lái)實(shí)現(xiàn)對(duì)圖的修改。所有的節(jié)點(diǎn)都可轉(zhuǎn)化為循環(huán)單元(或其它任何神經(jīng)網(wǎng)絡(luò)架構(gòu),只是我這里使用的是循環(huán)單元);所有的邊都包含簡(jiǎn)單的前饋神經(jīng)網(wǎng)絡(luò)。那么看起來(lái)會(huì)是這樣:

其中的信封符號(hào)只是每個(gè)節(jié)點(diǎn)的 one-hot 編碼的向量(嵌入)。

消息傳遞

一旦節(jié)點(diǎn)和邊的轉(zhuǎn)化完成,圖就可在節(jié)點(diǎn)之間執(zhí)行消息傳遞。這個(gè)過程也被稱為「近鄰聚合(Neighbourhood Aggregation)」,因?yàn)槠渖婕暗絿@給定節(jié)點(diǎn),通過有向邊從周圍節(jié)點(diǎn)推送消息(即嵌入)。

注:有時(shí)候你可為不同類型的邊使用不同的神經(jīng)網(wǎng)絡(luò),比如為單向邊使用一種神經(jīng)網(wǎng)絡(luò),為雙向邊使用另一種神經(jīng)網(wǎng)絡(luò)。這樣你仍然可以獲取節(jié)點(diǎn)之間的空間關(guān)系。

就 GNN 而言,對(duì)于單個(gè)參考節(jié)點(diǎn),近鄰節(jié)點(diǎn)會(huì)通過邊神經(jīng)網(wǎng)絡(luò)向參考節(jié)點(diǎn)上的循環(huán)單元傳遞它們的消息(嵌入)。參考循環(huán)單位的新嵌入更新,基于在循環(huán)嵌入和近鄰節(jié)點(diǎn)嵌入的邊神經(jīng)網(wǎng)絡(luò)輸出的和上使用循環(huán)函數(shù)。我們把上面的紅色節(jié)點(diǎn)放大看看,并對(duì)這一過程進(jìn)行可視化:

紫色方塊是一個(gè)應(yīng)用于來(lái)自近鄰節(jié)點(diǎn)的嵌入(白色信封)上的簡(jiǎn)單前饋神經(jīng)網(wǎng)絡(luò);紅色三角形是應(yīng)用于當(dāng)前嵌入(白色信封)和邊神經(jīng)網(wǎng)絡(luò)輸出(黑色信封)之和上的循環(huán)函數(shù),以得到新的嵌入(最上面的白色信封)。

這個(gè)過程是在網(wǎng)絡(luò)中的所有節(jié)點(diǎn)上并行執(zhí)行的,因?yàn)?L+1 層的嵌入取決于 L 層的嵌入。因此,在實(shí)踐中,我們并不需要從一個(gè)節(jié)點(diǎn)「移動(dòng)」到另一節(jié)點(diǎn)就能執(zhí)行消息傳遞。

注:邊神經(jīng)網(wǎng)絡(luò)輸出(黑色信封)之和與輸出的順序無(wú)關(guān)。

最后的向量表征有什么用?

執(zhí)行了幾次近鄰聚合/消息傳遞流程之后,每個(gè)節(jié)點(diǎn)的循環(huán)單元都會(huì)獲得一組全新的嵌入。此外,經(jīng)過多個(gè)時(shí)間步驟/多輪消息傳遞之后,節(jié)點(diǎn)對(duì)自己和近鄰節(jié)點(diǎn)的信息(特征)也會(huì)有更好的了解。這會(huì)為整個(gè)圖創(chuàng)建出更加準(zhǔn)確的表征。

要進(jìn)一步在該流程的更高層面上進(jìn)行處理或者只是簡(jiǎn)單地表征該圖,你可以將所有嵌入加到一起得到向量 H 來(lái)表示整個(gè)圖。

使用 H 比使用鄰接矩陣更好,因?yàn)椴还茉鯓訉?duì)圖進(jìn)行扭轉(zhuǎn)變形,這些矩陣都并不表征圖的特征或獨(dú)特性質(zhì)——只是節(jié)點(diǎn)之間的邊連接(這在某些情形下并不是很重要)。

總結(jié)一下,我們將所有節(jié)點(diǎn)循環(huán)單元的最終向量表征加到一起(當(dāng)然,與順序無(wú)關(guān)),然后使用所得到的向量作為其它工作過程的輸入或簡(jiǎn)單地將其用于表征該圖。這個(gè)步驟看起來(lái)如下圖所示:

這是經(jīng)過 n 次重復(fù)消息傳遞之后帶有已完全更新的嵌入向量的最終圖。你可以將所有節(jié)點(diǎn)的表。征加到一起得到 H。

四步驟助你實(shí)現(xiàn)圖神經(jīng)網(wǎng)絡(luò)

GNN 用起來(lái)相當(dāng)簡(jiǎn)單。事實(shí)上,實(shí)現(xiàn)它們涉及到以下四個(gè)步驟:


  1. 給定一個(gè)圖,首先將節(jié)點(diǎn)轉(zhuǎn)換為循環(huán)單元,將邊轉(zhuǎn)換為前饋神經(jīng)網(wǎng)絡(luò);
  2. 接著為所有節(jié)點(diǎn)執(zhí)行 n 次近鄰聚合(也就是消息傳遞);
  3. 然后再在所有節(jié)點(diǎn)的嵌入向量上求和以得到圖表征 H;
  4. 最后可以完全跳過 H 直接向更高層級(jí)進(jìn)發(fā)或者也可使用 H 來(lái)表征該圖的獨(dú)有性質(zhì)。

小結(jié)

現(xiàn)在我們清楚地了解圖神經(jīng)網(wǎng)絡(luò)的運(yùn)行方式了。得益于 GNN 在圖節(jié)點(diǎn)之間依賴關(guān)系進(jìn)行建模的強(qiáng)大性能,它在社交網(wǎng)絡(luò)、知識(shí)圖譜和推薦系統(tǒng)方面都有廣泛的應(yīng)用。以社交網(wǎng)絡(luò)圖為例,GNN 在內(nèi)容推薦方面表現(xiàn)很好。舉個(gè)例子,當(dāng)一個(gè)用戶關(guān)注另一個(gè)政治傾向相似的用戶時(shí),GNN 可用于節(jié)點(diǎn)分類,以預(yù)測(cè)是否可將網(wǎng)站上的特定內(nèi)容發(fā)送到上述用戶的新聞流;當(dāng) GNN 用于「推薦關(guān)注」時(shí),系統(tǒng)可以考慮用戶所在的行業(yè),再提供潛在的連接——邊分類。

圖深度學(xué)習(xí)其實(shí)非常有趣。本文的亮點(diǎn)在于使用一些可視化圖介紹了圖神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)概念,但如果想要透徹地了解 GNN,大家最好自己寫代碼實(shí)現(xiàn)看看。

責(zé)任編輯:龐桂玉 來(lái)源: 搜狐 書圈
相關(guān)推薦

2020-12-21 08:00:00

人工智能深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)

2021-09-24 12:00:40

人工智能AI神經(jīng)網(wǎng)絡(luò)

2017-04-06 18:34:16

人工智能

2021-10-26 09:00:00

圖形機(jī)器學(xué)習(xí)深度學(xué)習(xí)

2023-11-15 16:12:41

人工智能機(jī)器學(xué)習(xí)深度學(xué)習(xí)

2023-05-09 14:24:32

大數(shù)據(jù)人工智能

2022-11-30 07:12:06

2021-01-10 08:46:43

神經(jīng)網(wǎng)絡(luò)激活函數(shù)人工神經(jīng)網(wǎng)絡(luò)

2022-08-18 11:07:17

網(wǎng)絡(luò)人工智能AI

2024-02-05 11:09:57

2023-11-02 15:36:38

人工智能AI

2022-08-15 10:08:16

人工智能AI

2022-05-09 14:22:40

Hello WorlMNIST鴻蒙

2015-05-11 10:58:04

神經(jīng)網(wǎng)絡(luò)人工智能憶阻器

2018-07-03 16:10:04

神經(jīng)網(wǎng)絡(luò)生物神經(jīng)網(wǎng)絡(luò)人工神經(jīng)網(wǎng)絡(luò)

2020-01-16 09:43:07

人工智能圖神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)

2017-03-16 14:34:25

人工智能神經(jīng)網(wǎng)絡(luò)

2018-04-25 09:07:41

人工智能神經(jīng)網(wǎng)絡(luò)

2023-03-09 10:18:33

2023-02-09 08:53:26

GNN神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)