FreeKD: Free-direction Knowledge Distillation for Graph Neural Networks
Abstract
Knowledge distillation (KD) has demonstrated its effectiveness to boost the performance of graph neural networks (GNNs), where its goal is to distill knowledge from a deeper teacher GNN into a shallower student GNN. However, it is actually difficult to train a satisfactory teacher GNN due to the well-known over-parametrized and over-smoothing issues, leading to invalid knowledge transfer in practical applications. In this paper, we propose the first Free-direction Knowledge Distillation framework via Reinforcement learning for GNNs, called FreeKD, which is no longer required to provide a deeper well-optimized teacher GNN. The core idea of our work is to collaboratively build two shallower GNNs in an effort to exchange knowledge between them via reinforcement learning in a hierarchical way. As we observe that one typical GNN model often has better and worse performances at different nodes during training, we devise a dynamic and free-direction knowledge transfer strategy that consists of two levels of actions: 1) node-level action determines the directions of knowledge transfer between the corresponding nodes of two networks; and then 2) structure-level action determines which of the local structures generated by the node-level actions to be propagated. In essence, our FreeKD is a general and principled framework which can be naturally compatible with GNNs of different architectures. Extensive experiments on five benchmark datasets demonstrate our FreeKD outperforms two base GNNs in a large margin, and shows its efficacy to various GNNs. More surprisingly, our FreeKD has comparable or even better performance than traditional KD algorithms that distill knowledge from a deeper and stronger teacher GNN.
Benchmark Results
Tested on 2 datasets Non-standard metric on 1 dataset
Tables show presented results in global context (best 3 papers + GCN + MLP).
Classic
PPI
Global leaderboard →Default metric is F1. The paper reports 4 values on F1 and 4 values on Micro-F1 (L563) .
| # | Model | F1 ↑ default | Micro-F1 (L563) ↑ | Paper |
|---|---|---|---|---|
| 1 | GAMLP(JK) | 0.9982
±
0.0001 | — | Micro-F1 (L563)
— |
| 2 | GraphCON-GCN | 0.9960 | — | Micro-F1 (L563)
— |
| 3 | GCNII | 0.9953
±
0.0001 | — | |
| 9 | Teacher GCNII | —
| 0.9941 | Micro-F1 (L563)
0.9941 |
| 16 | FreeKD | —
| 0.9879 | Micro-F1 (L563)
0.9879 |
| 21 | GCN | 0.9850 | — | Micro-F1 (L563)
— |
| 29 | LSP | 0.9825 | — | Micro-F1 (L563)
— prev best: On Representation Knowledge Distillation for Graph Neural Networks (2021) Improvement within reported uncertainty; not highlighted. |
| 37 | KD | 0.9793
±0.0026 best reported | — | Micro-F1 (L563)
— best at pub: On Representation Knowledge Distillation for Graph Neural Networks (2021) Difference within reported uncertainty; not counted as underperformance. |
| 46 | GNN-SD | 0.9773 | — | Micro-F1 (L563)
— |
| 49 | RDD | 0.9766 | — | Micro-F1 (L563)
— |
| 57 | GAT | —
| 0.9730 | Micro-F1 (L563)
0.9730 |
| 134 | GSAGE | —
| 0.6928 | Micro-F1 (L563)
0.6928 |
| 173 | MLP | 0.4620 | — | Micro-F1 (L563)
— |
Heterophilic Graphs
Texas
Global leaderboard →Default metric is Accuracy. The paper reports 0 values on Accuracy , 3 values on Micro-F1 (L563) , 1 value on F1-micro , 1 value on Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment') and 5 values on F1 Score .
Sorted by Micro-F1 (L563). Highlighted rows are from other papers.
| # | Model | Accuracy ↑ default | Micro-F1 (L563) ↑ | F1-micro ↑ | Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment') ↑ | F1 Score ↑ | Paper |
|---|---|---|---|---|---|---|---|
| 1 | GSAGE | — | —
| — | 0.7622 | — | Accuracy
— F1-micro
— Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment')
0.7622 F1 Score
— |
| 1 | Teacher GCNII | — | 0.6514 | — | — | — | Accuracy
— F1-micro
— Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment')
— F1 Score
— |
| 2 | FreeKD | — | 0.6136 | — | — | — | Accuracy
— F1-micro
— Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment')
— F1 Score
— |
| 3 | CPF | — | —
| — | — | 0.6081 | Accuracy
— F1-micro
— Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment')
— F1 Score
0.6081 |
| 3 | LSP | — | —
| — | — | 0.5973 | Accuracy
— F1-micro
— Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment')
— F1 Score
0.5973 |
| 3 | KD | — | —
| — | — | 0.5946 | Accuracy
— F1-micro
— Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment')
— F1 Score
0.5946 |
| 3 | RDD | — | —
| — | — | 0.5892 | Accuracy
— F1-micro
— Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment')
— F1 Score
0.5892 |
| 3 | GNN-SD | — | —
| — | — | 0.5865 | Accuracy
— F1-micro
— Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment')
— F1 Score
0.5865 |
| 3 | GAT | — | 0.5784 | — | — | — | Accuracy
— F1-micro
— Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment')
— F1 Score
— |
| 4 | GCN | — | —
| 0.5757 | — | — | Accuracy
— F1-micro
0.5757 Micro-F1 (L563: 'we use the Micro-F1 score as the evaluation measure throughout the experiment')
— F1 Score
— |
