【论文阅读】A Gentle Introduction to Graph Neural Networks [图神经网络入门](1)
【論文閱讀】A Gentle Introduction to Graph Neural Networks [圖神經(jīng)網(wǎng)絡(luò)入門](1)
最近讀了一篇Distill網(wǎng)站上的一篇文章,講的是圖神經(jīng)網(wǎng)絡(luò)的入門,我給翻譯了一下供大家參考。
?原文章閱讀請(qǐng)移步至A Gentle Introduction to Graph Neural Networks。非常推薦大家去原網(wǎng)址讀這篇文章,因?yàn)檫@個(gè)網(wǎng)站上的文章的圖都具有交互性,可讀性很高,非常便于大家理解。
?如果大家想看這篇文章的視頻解讀的話,非常推薦大家去聽,是李沐老師為大家講解,李沐老師講的很好。請(qǐng)移步至零基礎(chǔ)多圖詳解圖神經(jīng)網(wǎng)絡(luò)(GNN/GCN)【論文精讀】
注:1. 我是一段一段翻譯的,所以會(huì)以一段原文一段翻譯的形式呈現(xiàn);
? 2. 小一號(hào)的字體為原作者對(duì)文章的圖或者一段話的解釋;
? 3. 小一號(hào)的加粗字體為圖的名稱或者圖下面的翻譯;
? 4. 灰色字體為我自己對(duì)文章的一些粗淺的見(jiàn)解;
? 5. 斜體字為原文章的斜體字。
? 6. 大一號(hào)的加粗字體是文章每節(jié)的標(biāo)題
Neural networks have been adapted to leverage the structure and properties of graphs. We explore the components needed for building a graph neural network - and motivate the design choices behind them.
神經(jīng)網(wǎng)絡(luò)被用來(lái)利用圖的結(jié)構(gòu)和屬性。我們將探索構(gòu)建圖神經(jīng)網(wǎng)絡(luò)所需的模塊,并解釋它們背后設(shè)計(jì)選擇的原因。
圖1-2
圖1-3
Hover over a node in the diagram below to see how it accumulates information from nodes around it through the layers of the network.
將鼠標(biāo)懸停在下圖中的一個(gè)節(jié)點(diǎn)上,查看它是如何通過(guò)網(wǎng)絡(luò)層從周圍的節(jié)點(diǎn)收集信息的。
可以看到,每個(gè)節(jié)點(diǎn)是通過(guò)下一層與其的有聯(lián)系的節(jié)點(diǎn)來(lái)收集信息的。例如圖1-1中Layer 2中的一個(gè)節(jié)點(diǎn)就是通過(guò)Layer 3中與這個(gè)節(jié)點(diǎn)有聯(lián)系的節(jié)點(diǎn)來(lái)收集信息的。每一層都是通過(guò)下一層的節(jié)點(diǎn)來(lái)收集信息的。
This article is one of two Distill publications about graph neural networks. Take a look at Understanding Convolutions on Graphs1 to understand how convolutions over images generalize naturally to convolutions over graphs.
本文是兩篇Distill關(guān)于圖神經(jīng)網(wǎng)絡(luò)的出版物之一。觀察一下圖的卷積操作1,以理解圖像上的卷積如何自然地泛化到圖上的卷積。
Graphs are all around us; real world objects are often defined in terms of their connections to other things. A set of objects, and the connections between them, are naturally expressed as a graph. Researchers have developed neural networks that operate on graph data (called graph neural networks, or GNNs) for over a decade.2 Recent developments have increased their capabilities and expressive power. We are starting to see practical applications in areas such as antibacterial discovery 3, physics simulations4 , fake news detection5 , traffic prediction6 and recommendation systems7 .
圖圍繞著我們的日常生活;現(xiàn)實(shí)世界的對(duì)象通常是根據(jù)它們與其他事物的聯(lián)系來(lái)定義的。一組對(duì)象,以及它們之間的聯(lián)系,可以自然地使用圖表示出來(lái)。十多年來(lái),研究人員已經(jīng)開發(fā)出基于圖數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò)(稱為圖神經(jīng)網(wǎng)絡(luò),或GNN)2。最近的發(fā)展提高了它們的功能和表達(dá)能力。我們開始看到它在抗菌發(fā)現(xiàn)3、物理模擬4、假新聞檢測(cè)5、交通預(yù)測(cè)6和推薦系統(tǒng)7等領(lǐng)域的實(shí)際應(yīng)用。
This article explores and explains modern graph neural networks. We divide this work into four parts. First, we look at what kind of data is most naturally phrased as a graph, and some common examples. Second, we explore what makes graphs different from other types of data, and some of the specialized choices we have to make when using graphs. Third, we build a modern GNN, walking through each of the parts of the model, starting with historic modeling innovations in the field. We move gradually from a bare-bones implementation to a state-of-the-art GNN model. Fourth and finally, we provide a GNN playground where you can play around with a real-word task and dataset to build a stronger intuition of how each component of a GNN model contributes to the predictions it makes.
本文探討并解釋了現(xiàn)代圖神經(jīng)網(wǎng)絡(luò)。我們把這項(xiàng)工作分成四個(gè)部分。首先,我們看看什么樣的數(shù)據(jù)可以自然地用圖來(lái)表達(dá),以及列舉一些常見(jiàn)的例子。其次,我們將探討是什么使圖不同于其他類型的數(shù)據(jù),以及在使用圖時(shí)必須做出的一些特殊的選擇。第三,我們將構(gòu)建一個(gè)現(xiàn)代GNN模型,從該領(lǐng)域的歷史建模創(chuàng)新開始,遍歷模型的每個(gè)部分。我們逐步從一個(gè)最基本的實(shí)現(xiàn)過(guò)渡到最先進(jìn)的GNN模型。第四,也是最后,我們提供了一個(gè)GNN playground,在這里您可以使用一個(gè)real word任務(wù)和相關(guān)數(shù)據(jù)集來(lái)對(duì)GNN有一個(gè)更好的理解,了解GNN模型的每個(gè)部分如何對(duì)其所做的預(yù)測(cè)發(fā)揮作用。
To start, let’s establish what a graph is. A graph represents the relations (edges) between a collection of entities (nodes).
首先,讓我們先定義什么是圖。圖表示實(shí)體(節(jié)點(diǎn))集合之間的關(guān)系(邊)。
我們可以在圖中找到三種類型的屬性,將鼠標(biāo)懸停以突出顯示每個(gè)屬性。其他類型的圖和屬性將在“其他類型的圖”一節(jié)中討論。
V: Vertex (or node) attributes.
e.g., node identity, number of neighbors
V: 頂點(diǎn)(或節(jié)點(diǎn))屬性。例如,節(jié)點(diǎn)標(biāo)識(shí),鄰居的數(shù)量
E: Edge (or link) attributes and directions.
e.g., edge identity, edge weight
E: 邊(或連接)屬性和邊的方向。例如,邊標(biāo)識(shí),邊權(quán)值
U: Global (or master node) attributes.
e.g., number of nodes, longest path
U: 全局(或主節(jié)點(diǎn))屬性。例如,節(jié)點(diǎn)數(shù),最長(zhǎng)路徑
To further describe each node, edge or the entire graph, we can store information in each of these pieces of the graph. 為了進(jìn)一步描述每個(gè)節(jié)點(diǎn)、邊或者整個(gè)圖,我們可以在圖的每個(gè)部分中存儲(chǔ)信息。
標(biāo)量或embeddings形式的信息可以存儲(chǔ)在每個(gè)圖節(jié)點(diǎn)(左)或邊(右)中。
可以看到,節(jié)點(diǎn)使用長(zhǎng)度為6的向量來(lái)表示; 邊使用長(zhǎng)度為8的向量來(lái)表示; 全局使用長(zhǎng)度為5的向量來(lái)表示。這個(gè)圖的意思是怎樣把我們想要的信息表示成向量的形式進(jìn)行存儲(chǔ)。
We can additionally specialize graphs by associating directionality to edges (directed, undirected).
我們還可以通過(guò)將方向性與邊(有向、無(wú)向)聯(lián)系起來(lái)來(lái)使圖具有特殊性。
這些邊可以是有方向的,其中邊eee有一個(gè)源節(jié)點(diǎn)vsrcv_{src}vsrc?,和一個(gè)目標(biāo)節(jié)點(diǎn)vdstv_{dst}vdst?。在這種情況下,信息從vsrcv_{src}vsrc?流向vdstv_{dst}vdst?。它們也可以是無(wú)方向的,即沒(méi)有源節(jié)點(diǎn)或目標(biāo)節(jié)點(diǎn),信息是雙向流動(dòng)的。請(qǐng)注意,擁有一條無(wú)向邊等價(jià)于擁有一條從vsrcv_{src}vsrc?到vdstv_{dst}vdst?的有向邊,以及另一條從vdstv_{dst}vdst?到vsrcv_{src}vsrc?的有向邊。
Graphs are very flexible data structures, and if this seems abstract now, we will make it concrete with examples in the next section.
圖是非常靈活的數(shù)據(jù)結(jié)構(gòu),如果現(xiàn)在看起來(lái)很抽象,我們將在下一節(jié)中通過(guò)示例使其具體化。
參考文獻(xiàn)
[1] Understanding Convolutions on Graphs Daigavane, A., Ravindran, B. and Aggarwal, G., 2021. Distill. DOI: 10.23915/distill.00032 ?? ??
[2] The Graph Neural Network Model Scarselli, F., Gori, M., Tsoi, A.C., Hagenbuchner, M. and Monfardini, G., 2009. IEEE Transactions on Neural Networks, Vol 20(1), pp. 61–80. ?? ??
[3] A Deep Learning Approach to Antibiotic Discovery Stokes, J.M., Yang, K., Swanson, K., Jin, W., Cubillos-Ruiz, A., Donghia, N.M., MacNair, C.R., French, S., Carfrae, L.A., Bloom-Ackermann, Z., Tran, V.M., Chiappino-Pepe, A., Badran, A.H., Andrews, I.W., Chory, E.J., Church, G.M., Brown, E.D., Jaakkola, T.S., Barzilay, R. and Collins, J.J., 2020. Cell, Vol 181(2), pp. 475–483. ?? ??
[4] Learning to simulate complex physics with graph networks Sanchez-Gonzalez, A., Godwin, J., Pfaff, T., Ying, R., Leskovec, J. and Battaglia, P.W., 2020. ?? ??
[5] Fake News Detection on Social Media using Geometric Deep Learning Monti, F., Frasca, F., Eynard, D., Mannion, D. and Bronstein, M.M., 2019. ?? ??
[6] Traffic prediction with advanced Graph Neural Networks *, O.L. and Perez, L… ?? ??
[7] Pixie: A System for Recommending 3+ Billion Items to 200+ Million Users in {Real-Time} Eksombatchai, C., Jindal, P., Liu, J.Z., Liu, Y., Sharma, R., Sugnet, C., Ulrich, M. and Leskovec, J., 2017. ?? ??
總結(jié)
以上是生活随笔為你收集整理的【论文阅读】A Gentle Introduction to Graph Neural Networks [图神经网络入门](1)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 网易有道:近期将推出教育场景下的Chat
- 下一篇: 【论文阅读】A Gentle Intro