Graph Neural Network 2018.12.17 Jungwon Kim
Before we begin... ● It’s not about GCN (Graph Convolutional Network)! ○ Maybe explain later… ● This slide only covers basic concept of GNN
What is Graph Neural Network? ● Neural Network for Graph ○ Input: Graph ○ Output: Label ■ Number (0.95, 0.81, 0.4, …) ■ Label (Protein, Carbon-dioxide, etc.) ■ Classification (Drug/Not Drug, etc.)
Why Graph Neural Network? ● Understanding of connections with many (1+) relations ○ RNN has single recursive relationship between each cell ● Representing a network ○ Self-wise Connection ○ Some objects have No Connection at all
When to use GNN? ● Chemistry ○ Drugs or not (by probability) ● Program Understanding ○ Expression Statement ○ Solve problems on programming ○ Performs better than RNN-based Models! ● Etc.
For example...
For example...
RNN (Recurrent Neural Network) ● In RNN, each cell has cumulative information from previous cell. ○ The series can be… ■ Time Series ■ Word Order ■ Event sequence ■ Etc.
RNN (Recurrent Neural Network)
GNN (Graph Neural Network)
GNN (Graph Neural Network)
GNN (Graph Neural Network) Adjacency = 1
GNN (Graph Neural Network)
GNN (Graph Neural Network) ● RNN ○ Propagate by passing previous cell’s information to current cell ● GNN ○ Consider ‘adjacency’ ■ Information from cells of Adjacency = 1 ■ Information from cells of Adjacency = 2 ■ Information from cells of Adjacency = 3 ■ All the way to Adjacency = n (Maximum)
GNN Variations ● Graph Neural Network (2005) ● Spectral Networks (2014) ● Neural Message Passing (2017) ○ Gated Graph Neural Network (2016) ○ ChebyNets (2016) ○ Graph Convolution Network (2017) ● Async. Neural Message Passing (2018) ● AMPNet (2018) ● Programs As Graphs (2018) ● Etc.
Sample Datasets for GNN https://github.com/shiruipan/graph_datasets ** Not listed in link, but ‘Zachary’s karate club’ is a commonly used social network. ** (https://towardsdatascience.com/how-to-do- deep-learning-on-graphs-with-graph- convolutional-networks-7d2250723780)
Graph Nets Library (DeepMind) https://github.com/deepmind/graph_nets ● Framework from DeepMind ● Well-explained document ● Tensorflow-based
Geometric Deep Learning http://geometricdeeplearning.com/ ● Not a Framework ● Many references for GNN (Not a lot of descriptions)
References Microsoft - Graph Neural Networks: Variations and Applications (https://www.youtube.com/watch?v=cWIeTMklzNg) Graph Theory - Adjacency Matrices (https://www.ebi.ac.uk/training/online/course/network-analysis-protein-interaction-data- introduction/introduction-graph-theory/graph-0)

Graph Neural Network - Introduction

  • 1.
  • 2.
    Before we begin... ●It’s not about GCN (Graph Convolutional Network)! ○ Maybe explain later… ● This slide only covers basic concept of GNN
  • 3.
    What is GraphNeural Network? ● Neural Network for Graph ○ Input: Graph ○ Output: Label ■ Number (0.95, 0.81, 0.4, …) ■ Label (Protein, Carbon-dioxide, etc.) ■ Classification (Drug/Not Drug, etc.)
  • 4.
    Why Graph NeuralNetwork? ● Understanding of connections with many (1+) relations ○ RNN has single recursive relationship between each cell ● Representing a network ○ Self-wise Connection ○ Some objects have No Connection at all
  • 5.
    When to useGNN? ● Chemistry ○ Drugs or not (by probability) ● Program Understanding ○ Expression Statement ○ Solve problems on programming ○ Performs better than RNN-based Models! ● Etc.
  • 6.
  • 7.
  • 8.
    RNN (Recurrent NeuralNetwork) ● In RNN, each cell has cumulative information from previous cell. ○ The series can be… ■ Time Series ■ Word Order ■ Event sequence ■ Etc.
  • 9.
  • 10.
  • 11.
  • 12.
    GNN (Graph NeuralNetwork) Adjacency = 1
  • 13.
  • 14.
    GNN (Graph NeuralNetwork) ● RNN ○ Propagate by passing previous cell’s information to current cell ● GNN ○ Consider ‘adjacency’ ■ Information from cells of Adjacency = 1 ■ Information from cells of Adjacency = 2 ■ Information from cells of Adjacency = 3 ■ All the way to Adjacency = n (Maximum)
  • 15.
    GNN Variations ● GraphNeural Network (2005) ● Spectral Networks (2014) ● Neural Message Passing (2017) ○ Gated Graph Neural Network (2016) ○ ChebyNets (2016) ○ Graph Convolution Network (2017) ● Async. Neural Message Passing (2018) ● AMPNet (2018) ● Programs As Graphs (2018) ● Etc.
  • 16.
    Sample Datasets forGNN https://github.com/shiruipan/graph_datasets ** Not listed in link, but ‘Zachary’s karate club’ is a commonly used social network. ** (https://towardsdatascience.com/how-to-do- deep-learning-on-graphs-with-graph- convolutional-networks-7d2250723780)
  • 17.
    Graph Nets Library(DeepMind) https://github.com/deepmind/graph_nets ● Framework from DeepMind ● Well-explained document ● Tensorflow-based
  • 18.
    Geometric Deep Learning http://geometricdeeplearning.com/ ●Not a Framework ● Many references for GNN (Not a lot of descriptions)
  • 19.
    References Microsoft - GraphNeural Networks: Variations and Applications (https://www.youtube.com/watch?v=cWIeTMklzNg) Graph Theory - Adjacency Matrices (https://www.ebi.ac.uk/training/online/course/network-analysis-protein-interaction-data- introduction/introduction-graph-theory/graph-0)