Graph Neural Networks
What Are Graph Neural Networks?
Graph neural networks (GNNs) are a class of deep learning models designed to operate on data structured as graphs, where entities are represented as nodes and relationships between them as edges. Unlike convolutional neural networks, which assume data arranged on regular grids such as images or audio waveforms, GNNs are defined for irregular, variable-topology structures where the number of neighbors per node is not fixed. The central goal of a GNN is to learn a vector representation, or embedding, for each node or for an entire graph by incorporating both local feature information and the relational context provided by the graph topology.
The field draws from spectral graph theory, message passing algorithms, and deep learning, and has grown rapidly since the formulation of the first graph convolutional networks around 2016. Influential survey work, including a widely cited review of GNN methods and applications on arXiv, catalogued the diverse architectural variants and established the now-standard taxonomy of spectral versus spatial approaches.
Message Passing and Aggregation
The core computational mechanism shared by most GNNs is message passing. In each iteration, every node collects feature vectors from its immediate neighbors, applies an aggregation function such as sum, mean, or maximum, and then combines the aggregated message with its own current representation through a learned transformation. Stacking multiple rounds of message passing allows a node to incorporate information from nodes at distance two, three, or more hops away. The depth of the network therefore controls the effective receptive field in the graph, analogous to the receptive field of a convolutional layer in a spatial domain. A node's final embedding encodes the structure and attributes of its local neighborhood at the chosen radius.
Convolutional and Attention Variants
Two prominent GNN families take different approaches to the aggregation step. Graph convolutional networks (GCNs), introduced by Kipf and Welling in 2017, define convolution on graphs using a normalized adjacency matrix, drawing an analogy to the spectral filtering interpretation of convolution. Each layer performs a linear combination of a node's own features and those of its neighbors, with weights shared across all nodes in the graph. Graph attention networks (GATs), introduced the following year, replace the uniform weighting with a learned attention coefficient for each directed edge, allowing the model to focus selectively on the most informative neighbors. A survey on graph neural architecture search published in IEEE Xplore documents how the design choices in aggregation, attention, and pooling interact to determine the expressive power and generalization of a GNN.
Training and Scalability
Training GNNs on large graphs presents distinct engineering challenges. Full-graph training, which computes gradients over the entire graph simultaneously, is memory-intensive and impractical when graphs contain millions of nodes. Mini-batch strategies such as neighborhood sampling, used in GraphSAGE, address this by restricting each training step to a sampled subgraph. Cluster-GCN and related methods partition the graph into dense subgraphs and sample entire partitions rather than individual neighborhoods, reducing the variance in gradient estimates. A review article in AI Open surveys these scalability methods alongside a broad review of GNN applications and benchmarks.
Applications
Graph neural networks have applications in a range of fields, including:
- Molecular property prediction and drug discovery, where molecules are represented as atom-bond graphs
- Social network analysis, including community detection and link prediction
- Recommendation systems that model user-item interaction graphs
- Traffic and route forecasting using spatial-temporal graph models
- Particle physics, for tracking and event classification at detectors like the Large Hadron Collider
- Knowledge graph completion and reasoning