Graph Convolutional Network (GCN)
Graph Convolutional Network (Spectral GCN for Semi-Supervised Node Classification) · Also known as: GCN, graph convolutional network, spectral graph convolution, Kipf-Welling GCN, two-layer GCN
Graph Convolutional Network (GCN) is a foundational deep learning architecture for graph-structured data, introduced by Thomas N. Kipf and Max Welling at ICLR 2017. It extends the convolution operation to irregular graph domains via a first-order spectral approximation, enabling each node to aggregate feature information from its neighbors. The model became the canonical baseline for semi-supervised node classification and sparked the modern graph neural network research agenda.
Read the full method
Sign in with a free account to read this section.
Method map
The neighbourhood of related methods — select a node to explore.
When to use it
GCN is appropriate whenever data has an explicit relational structure — citation networks, social graphs, molecular graphs, knowledge graphs — and the primary task is predicting node-level properties (classes, scores). The method is particularly well suited to transductive semi-supervised settings where the full graph (including unlabeled nodes) is available at training time and only a small fraction of node labels are known. Key assumptions: the graph is undirected and homophilous (connected nodes tend to share the same class); node features are available; the graph fits in memory. GCN performs poorly on heterophilous graphs, very sparse or disconnected graphs, and inductive tasks where entirely new nodes must be classified at test time without retraining.
Strengths & limitations
- Jointly encodes graph topology and node features in a single differentiable model, achieving strong semi-supervised performance with very few labels.
- Propagation rule scales linearly with the number of edges, making it tractable on large sparse graphs.
- Simple two-layer architecture with few hyperparameters — a reliable, easy-to-implement baseline.
- Spectral motivation provides a principled theoretical grounding linking the model to spectral graph theory.
- Broadly applicable across domains: citation networks, social networks, molecular property prediction, and knowledge graphs.
- Transductive by design: the entire graph (including test nodes) must be present during training; standard GCN cannot generalize to unseen graphs or new nodes added after training.
- Assumes graph homophily — nodes connected by edges are expected to share the same label; accuracy degrades substantially on heterophilous graphs.
- Fixed neighborhood aggregation weights (derived from degree normalization) do not adapt to the importance of individual neighbors, unlike attention-based variants.
- Stacking many layers causes over-smoothing: node representations converge and become indistinguishable, so deep GCNs (more than a few layers) usually underperform.
- Requires the full graph adjacency matrix in memory during propagation, which limits scalability to very large graphs without mini-batch sampling strategies.
Frequently asked
Why does GCN use exactly two layers in the original paper?
Kipf and Welling found empirically that two propagation layers (capturing two-hop neighborhoods) gave the best balance between expressiveness and over-smoothing on their benchmarks. Deeper models caused node embeddings to converge to indistinguishable vectors because repeated neighborhood averaging mixes information from increasingly overlapping, large receptive fields.
What is the difference between GCN and Graph Attention Network (GAT)?
GCN aggregates neighbors using fixed weights derived from degree normalization. GAT assigns learnable attention weights to each neighbor, allowing the model to focus on more relevant connections. GAT is generally more expressive on heterogeneous neighborhoods but adds parameters and training complexity.
Can GCN be used for graph-level classification (e.g., classifying whole molecules)?
The vanilla GCN produces node-level embeddings. For graph-level tasks a readout (pooling) step — such as summing or averaging all node embeddings — is added on top. Dedicated architectures such as Graph Isomorphism Network (GIN) or hierarchical pooling methods are usually preferred for graph classification because they are provably more expressive.
How many labeled nodes does GCN need to train effectively?
In the original experiments, Kipf and Welling used only 20 labeled nodes per class (around 0.5% of all nodes) on citation networks and still achieved competitive accuracy. The graph structure propagates supervisory signal to unlabeled nodes, making GCN particularly data-efficient for node classification when label budgets are very small.
Sources
- Kipf, T. N., & Welling, M. (2017). Semi-Supervised Classification with Graph Convolutional Networks. Proceedings of the 5th International Conference on Learning Representations (ICLR 2017), Toulon, France. link ↗
- Hamilton, W. L. (2020). Graph Representation Learning. Morgan & Claypool (Synthesis Lectures on Artificial Intelligence and Machine Learning). ISBN: 978-1-68173-963-2
How to cite this page
ScholarGate. (2026, June 3). Graph Convolutional Network (Spectral GCN for Semi-Supervised Node Classification). ScholarGate. https://scholargate.app/en/deep-learning/graph-convolutional-network
Which method?
Set this method beside its closest kin and read them side by side — the library lays the books on the table; the choice is yours.
- Graph Attention NetworkDeep learning↔ compare