Graph
Prof. Seungchul Lee
Industrial AI Lab.
Graph (or Network)
2
Graph (or Network)
3
Graph Representation
4
1
2
7
6
4
5
3
Adjacent Matrix
5
1
2
7
6
4
5
3
Adjacent Matrix
6
1
2
7
6
4
5
3
sparse
Quiz 1
7
1
3
2
4
1
3
2
4
Quiz 1
8
1
3
2
4
1
3
2
4
1 2 3 4
1 0 1 1 1
2 0 0 1 0
3 0 0 0 1
4 0 0 0 0
1 2 3 4
1 0 1 1 1
2 1 0 1 0
3 1 1 0 1
4 1 0 1 0
Quiz 2
9
Quiz 2
10
Degree
11
1
3
2
4
Self-Connecting Edges
12
1
3
2
4
Neighborhood Normalization
13
1
3
2
4
Neighborhood Normalization
14
1
3
2
4
NetworkX
15
NetworkX
16
Graph Neural Networks
17
Graph Data
18
Person 1
Person 2
Independent
Dependent
Dependency of Graph Data
19
Connection between CNN and GCN
20
Kernel
Adjacent matrix
and Kernel
Basics of GCN
21
1
3
2
4
message
aggregate
Adjacent matrix
and Kernel
Basics of GCN
22
1
3
2
4
1) message
1
3
2
4
update
aggregate
2) Message Aggregation from Local Neighborhood
23
1
3
2
4
aggregate
aggregate
3) Update
24
aggregate
1
3
2
4
update
Update 2:
Non-linear function
Update 1:
Linear combination
Further Improvements
25
Further Improvements
26
Message Passing
27
1
3
2
4
1) Message Passing with Self-Loops
28
1
3
2
4
2) Neighborhood Normalization
29
1
3
2
4
Q: Which One Is Trainable?
30
1
3
2
4
Only trainable parameters
Finally Graph Convolutional Networks
31
Self-loops
Neighborhood Normalization
Finally Graph Convolutional Networks
32
Multi-layers
or
sigmoid
or
sigmoid
Image from https://tkipf.github.io/graph-convolutional-networks/
Feature Vector Updates
33
Feature Vector Updates
34
Feature Vector Updates
35
Build 2-layer GCN using ReLU as the Activation Function
36
or
sigmoid
or
sigmoid
Readout: Permutation Invariance
37
Finally Graph Convolutional Networks
38
GCN as Message Passing Framework
39
Image from Graph Representation Learning by William L. Hamilton
Tasks for Graph Neural Network
40
Task 1: node classification
Task 2: edges prediction
Task 3: graph classification
Label Prediction
Edge Prediction
Label A
Label B
List of GNN Python Libraries
41
From https://neptune.ai/blog/graph-neural-networks-libraries-tools-learning-resources
Lab 1: Node Classification using Graph Convolutional Networks
42
CORA dataset
43
Graph G and Normalized Adjacency Matrix A
44
GCN Model
45
Train and Evaluation
46
Low Dimensional Mapping
47
Learning Resources for Graph Neural Networks
48
From https://neptune.ai/blog/graph-neural-networks-libraries-tools-learning-resources