A jumping knowledge network (JK-Net) combines representations from multiple graph-convolution layers so each node can use information from different neighborhood ranges. This is useful when graph structure varies across regions: some nodes benefit from nearby context, while others need deeper neighborhoods. section 3.2.2
Standard neighborhood aggregation applies a layer’s aggregation behavior throughout the model. JK instead retains outputs from several layers and combines them after message passing, allowing the final representation to reflect node- and subgraph-specific context. section 3.2 section 3.2.2
Choose the combination mode according to the representation and dimensionality trade-offs:
- cat concatenates all layer outputs along the feature dimension, preserving information from every layer while increasing output dimensionality. section 3.2.2
- max pools across layer outputs, selecting the largest value for each feature and reducing the influence of less informative signals. section 3.2.2
- lstm uses a bidirectional LSTM to learn attention scores over the layer outputs. section 3.2.2
Adding JK to a PyG GCN
Create two GCNConv layers, store each layer output in a list, and pass that list to JumpingKnowledge(mode='cat'). In the demonstrated flow, the first output is activated with ReLU, both outputs are retained, and the combined representation is returned. section 3.2.2
JK is a flexible aggregation strategy rather than a guaranteed improvement. In the reported GCN comparison, JK achieved a lower F1 score than the baseline but a slightly lower log loss, illustrating that evaluation metrics can disagree. section 3.2.2
