1 Introduction
2 Background
2.1 Neural Networks for Graphs
2.1.1 Aggregation of node representations
2.2 Self-organizing map
2.3 DeepSets
3 SOM-based DeepSets projection
3.1 SOM details
3.2 Training procedure
4 Experimental results
4.1 Datasets
Dataset | #Graphs | #Node | #Edge | Avg #Nodes/graph | Avg. #Edges/graph |
---|---|---|---|---|---|
PTC | 344 | 4915 | 10,108 | 14.29 | 14.69 |
NCI1 | 4110 | 122,747 | 265,506 | 29.87 | 32.30 |
Proteins | 1113 | 43,471 | 162,088 | 39.06 | 72.82 |
D&D | 1178 | 334,925 | 1,686,092 | 284.32 | 715.66 |
Enzymes | 600 | 19,580 | 74,564 | 32.63 | 124.27 |
4.2 Model selection and experimental setup
Dataset | SOM learning-rate | SOM sizes |
---|---|---|
PTC | 0.1, 0.05, 0.005 | (12, 9), (16, 12), (20, 15) |
NCI1 | 0.1, 0.05, 0.005 | (10,7), (15, 10), (15, 20) |
Proteins | 0.1, 0.05, 0.005 | (10, 7), (12, 9), (15, 10) |
D&D | 0.1, 0.05, 0.005 | (7, 10), (15, 10), (17, 12) |
Enzymes | 0.1, 0.05, 0.005 | (10, 7), (12, 9), (15, 12) |
Dataset | Readout | l | LR pre-training | LR readout | LR fine-tuning | Batch size |
---|---|---|---|---|---|---|
PTC | Shallow | 30 | \(5\times 10^{-4}\) | \(5\times 10^{-4}\) | \(1\times 10^{-4}\) | 32 |
PTC | Deep | 20 | \(5\times 10^{-4}\) | \(5\times 10^{-4}\) | \(1\times 10^{-4}\) | 32 |
NCI1 | Shallow | 75 | \(5\times 10^{-4}\) | \(5\times 10^{-4}\) | \(1\times 10^{-4}\) | 32 |
NCI1 | Deep | 50 | \(5\times 10^{-4}\) | \(5\times 10^{-4}\) | \(1\times 10^{-4}\) | 32 |
Proteins | Shallow | 30 | \(1\times 10^{-4}\) | \(1\times 10^{-4}\) | \(1\times 10^{-4}\) | 32 |
Proteins | Deep | 20 | \(1\times 10^{-4}\) | \(1\times 10^{-4}\) | \(1\times 10^{-4}\) | 32 |
D&D | Shallow | 40 | \(5\times 10^{-4}\) | \(5\times 10^{-4}\) | \(1\times 10^{-4}\) | 16 |
D&D | Deep | 40 | \(5\times 10^{-4}\) | \(5\times 10^{-4}\) | \(1\times 10^{-4}\) | 16 |
Enzymes | Shallow | 30 | \(5\times 10^{-4}\) | \(5\times 10^{-4}\) | \(1\times 10^{-4}\) | 32 |
Enzymes | Deep | 20 | \(5\times 10^{-4}\) | \(5\times 10^{-4}\) | \(1\times 10^{-4}\) | 32 |
4.3 Baselines
Dataset | PTC | NCI1 | Proteins | D&D | Enzymes |
---|---|---|---|---|---|
PSCN [23] | 60.00 ± 4.82 | 76.34 ± 1.68 | 75.00 ± 2.51 | 76.27 ± 2.64 | – |
FGCNN [21] | 58.82 ± 1.80 | 81.50 ± 0.39 | 74.57 ± 0.80 | 77.47 ± 0.86 | – |
DGCNN [21] | 57.14 ± 2.19 | 72.97 ± 0.87 | 73.96 ± 0.41 | 78.09 ± 0.72 | – |
DGCNN [8] | – | 76.4 ± 1.7 | 72.9 ± 3.5 | 76.6 ± 4.3 | 38.9 ± 5.7 |
GIN [8] | – | 80.0 ± 1.4 | 73.3 ± 4.0 | 75.3 ± 2.9 | 59.6 ± 4.5 |
DIFFPOOL [8] | – | 76.9 ± 1.9 | 73.7 ± 3.5 | 75.0 ± 3.5 | 59.5 ± 5.6 |
GraphSAGE [8] | – | 76.0 ± 1.8 | 73.0 ± 4.5 | 72.9 ± 2.0 | 58.2 ± 6.0 |
DGCNN-DeepSets [21] | 58.16 ± 1.05 | 74.19 ± 0.59 | 75.11 ± 0.28 | 77.86 ± 0.27 | – |
SOM-GCNN shallow | 62.24 ± 1.7 | 83.30 ± 0.45 | 75.01 ± 0.65 | 74.65 ± 1.23 | 50.01 ± 2.92 |
SOM-GCNN deep | 61.70 ± 0.97 | 82.32 ± 0.52 | 75.22 ± 0.61 | 78.10 ± 0.60 | 44.10 ± 1.87 |
4.4 Discussion of experimental results
Dataset | Pre-training | Readout type | Readout | Fine-tuning |
---|---|---|---|---|
PTC | 57.75 ± 1.51 | Shallow | 62.24 ± 1.71 | 61.15 ± 1.54 |
58.05 ± 1.62 | Deep | 61.70 ± 0.97 | 61.19 ± 0.65 | |
4 layers GC Block | 58.77 ± 1.76 | |||
NCI1 | 81.53 ± 0.51 | Shallow | 82.32 ± 0.52 | 83.30 ± 0.45 |
81.69 ± 0.30 | Deep | 82.32 ± 0.52 | 82.27 ± 0.18 | |
4 layers GC Block | 82.09 ± 0.51 | |||
Proteins | 72.07 ± 1.16 | Shallow | 73.88 ± 0.37 | 75.01 ± 0.65 |
73.15 ± 0.88 | Deep | 74.92 ± 0.97 | 75.22 ± 0.61 | |
4 layers GC Block | 69.93 ± 1.40 | |||
D&D | 72.00 ± 0.82 | Shallow | 74.52 ± 1.19 | 74.65 ± 1.23 |
70.24 ± 1.22 | Deep | 77.57 ± 0.41 | 78.10 ± 0.6 | |
4 layers GC Block | 70.34 ± 1.57 | |||
Enzymes | 43.7 ± 0.84 | Shallow | 46.77 ± 1.50 | 50.01 ± 2.92 |
41.81 ± 1.81 | Deep | 43.93 ± 2.19 | 44.10 ± 1.87 | |
4 layers GC Block | 43.30 ± 3.41 |
Dataset | Som size | ||
---|---|---|---|
PTC | (12, 9) | (16, 12) | (20, 15) |
Shallow readout | 79.14 | 76.00 | 74.29 |
Deep readout | 73.430 | 74.00 | 71.43 |
NCI1 | (10, 7) | (15, 10) | (20, 15) |
Shallow readout | 84.38 | 85.11 | 86.30 |
Deep readout | 83.65 | 84.64 | 84.54 |
Proteins | (10, 7) | (12, 9) | (15, 10) |
Shallow readout | 78.30 | 78.48 | 79.91 |
Deep readout | 79.46 | 78.482 | 80.09 |
D&D | (10, 7) | (15, 10) | (17,1 2) |
Shallow readout | 80.08 | 80.42 | 81.10 |
Deep readout | 82.46 | 81.78 | 83.05 |
Enzymes | (10, 7) | (12, 9) | (15, 12) |
Shallow readout | 61.00 | 56.17 | 57.50 |
Deep readout | 54.5 | 52.83 | 52.17 |
5 SOM-based aggregation block analysis
5.1 Advantage in using SOM-based aggregation block
Dataset | Pre-training | Readout type | Readout | Fine-tuning |
---|---|---|---|---|
PTC | 59.61 ± 2.48 | Shallow | 57.04 ± 1.25 | 57.14 ± 1.05 |
59.49 ± 1.84 | Deep | 58.16 ± 1.73 | 59.14 ± 0.74 | |
NCI1 | 81.29 ± 0.38 | Shallow | 81.17 ± 0.24 | 81.65 ± 0.15 |
81.57 ± 0.46 | Deep | 81.18 ± 0.49 | 81.45 ± 0.36 | |
Proteins | 71.29 ± 1.09 | Shallow | 71.91 ± 0.96 | 72.39 ± 0.75 |
71.51 ± 1.02 | Deep | 72.63 ± 0.65 | 73.43 ± 0.86 | |
D&D | 70.44 ± 1.56 | Shallow | 71.85 ± 1.08 | 72.58 ± 1.21 |
71.39 ± 0.86 | Deep | 75.21 ± 0.44 | 75.76 ± 0.86 | |
Enzymes | 43.77 ± 1.64 | Shallow | 40.83 ± 2.16 | 45.03 ± 2.03 |
41.17 ± 1.38 | Deep | 42.07 ± 1.22 | 42.10 ± 1.96 |
5.2 Node embedding distances
5.3 Graph convolution layer projection
Dataset | Pre-training | Readout type | Readout | Fine-tuning |
---|---|---|---|---|
PTC | 57.71 ± 4.46 | Shallow | 58.00 ± 3.35 | 59.48 ± 2.44 |
60.51 ± 1.61 | Deep | 59.89 ± 0.26 | 60.40 ± 0.37 | |
NCI1 | 81.51 ± 0.65 | Shallow | 78.05 ± 0.52 | 80.88 ± 0.82 |
81.60 ± 0.23 | Deep | 81.67 ± 0.45 | 81.63 ± 0.25 | |
Proteins | 71.89 ± 0.91 | Shallow | 71.97 ± 0.08 | 72.44 ± 1.74 |
72.29 ± 0.83 | Deep | 73.66 ± 0.60 | 73.48 ± 0.69 | |
D&D | 71.64 ± 1.37 | Shallow | 71.81 ± 1.27 | 72.78 ± 0.94 |
71.40 ± 2.21 | Deep | 75.75 ± 0.41 | 76.18 ± 0.49 | |
Enzymes | 42.67 ± 0.73 | Shallow | 42.44 ± 3.58 | 44.72 ± 1.46 |
42.16 ± 2.73 | Deep | 45.72 ± 0.75 | 46.61 ± 1.11 |