Resources to learn Graph Neural Networks (GNNs)
I’m a Computer Science undergraduate with a basic understanding of artificial neural networks, MLPs, and computer vision architectures. I’m currently working on a project where I may use Graph Neural Networks, so I want to properly understand how GNNs work internally rather than just learning to use existing implementations.
So far, I’ve gone through Distill’s A Gentle Introduction to Graph Neural Networks, which helped me understand the basic intuition behind graphs and message passing.
I also tried reading the original GNN paper by Scarselli et al., The Graph Neural Network Model. However, I found the mathematical formulation and the architecture quite difficult to follow. I understand the general idea, but I’m struggling to connect the equations to what is actually happening inside the network.
I’m looking for resources that can help me bridge that gap, particularly around:
GNN architecture
Node and edge representations
Message passing and forward propagation
Mathematical formulation
Scarselli et al.’s original architecture
GNNs vs. MLPs/CNNs
GCNs, GATs, GraphSAGE, etc.
I’m ready to learn the required mathematics. What I’m mainly looking for is an explanation that actually dissects the Scarselli paper, or a resource that I should go through instead of the paper, so I can understand what is happening internally rather than just learning GNNs well enough to implement them.
For those who have learned GNNs themselves, what resources would you recommend? Also, would you suggest trying to understand the Scarselli paper first, or learning modern GNN architectures and then returning to the original paper?
Any recommendations would be greatly appreciated.
Thank you.