Title: FEW-SHOT LEARNING ON GRAPHS VIA SUPER-CLASSES BASED ON GRAPH SPECTRAL MEASURES

Abstract: We propose to study the problem of few-shot graph classification in graph neural networks (GNNs) to recognize unseen classes, given limited labeled graph examples. Despite several interesting GNN variants being proposed recently for node and graph classification tasks, when faced with scarce labeled examples in the few-shot setting, these GNNs exhibit significant loss in classification performance. Here, we present an approach where a probability measure is assigned to each graph based on the spectrum of the graph's normalized Laplacian. This enables us to accordingly cluster the graph base-labels associated with each graph into super-classes, where the L p Wasserstein distance serves as our underlying distance metric. Subsequently, a super-graph constructed based on the super-classes is then fed to our proposed GNN framework which exploits the latent inter-class relationships made explicit by the super-graph to achieve better class label separation among the graphs. We conduct exhaustive empirical evaluations of our proposed method and show that it outperforms both the adaptation of state-ofthe-art graph classification methods to few-shot scenario and our naive baseline GNNs. Additionally, we also extend and study the behavior of our method to semi-supervised and active learning scenarios.

1. INTRODUCTION:

The need to analyze graph structured data coupled with the ubiquitous nature of graphs (Borgwardt et al., 2005; Duvenaud et al., 2015; Backstrom & Leskovec, 2010; Chau et al., 2011) , has given greater impetus to research interest in developing graph neural networks (GNNs) (Defferrard et al., 2016; Kipf & Welling, 2016; Hamilton et al., 2017; Velikovi et al., 2018) for learning tasks on such graphs. The overarching theme in GNNs is for each node's feature vector to be generated by passing, transforming, and recursively aggregating feature information from a given k-hop neighborhood surrounding the node. However, GNNs still fall short in the "few-shot" learning setting, where the classifier must generalize well after seeing abundant base-class samples (while training) and very few (or even zero) samples from a novel class (while testing). Given the scarcity and difficulty involved with generation of labeled graph samples, it becomes all the more important to solve the problem of graph classification in the few-shot setting.

Limitations and challenges: Recent work by Xu et. al. (Xu et al., 2019) indicated that most recently proposed GNNs were designed based on empirical intuition and heuristic approaches. They studied the representational power of these GNNs and identified that most neighborhood aggregation and graph-pooling schemes had diminished discriminative power. They rectified this problem with the introduction of a novel injective neighborhood aggregation scheme, making it as strong as the Weisfeiler-Lehman (WL) graph isomorphism test (Weisfeiler & Leman, 1968 ).

Nevertheless, the problem posed by extremely scarce novel-class samples in the few-shot setting remains to persist as a formidable challenge, as it requires more rounds of aggregation to affect larger neighborhoods and hence necessitate greater depth in the GNN. However, when it comes to GNNs, experimental studies have shown that an increase in the number of layers results in dramatic performance drops in GNNs (Wu et al., 2019; Li et al., 2018b) .

Our work: Motivated by the aforementioned observations and challenges, our method does the following. We begin with a once-off preprocessing step. We assign a probability measure to each graph, which we refer to as a graph spectral measure (similar to (Gu et al., 2015) ), based on the spectrum of the graph's normalized Laplacian matrix representation. Given this metric space of graph spectral measures and the underlying distance as the L p Wasserstein distance, we compute Wasserstein barycenters (Agueh & Carlier, 2011) for each set of graphs specific to a base class and term these barycenters as prototype graphs. With this set of prototype graphs for each base class label, we cluster the spectral measures associated with each prototype graph in Wasserstein space to create a super-class label.

Utilizing this super-class information, we then build a graph of graphs called a super-graph. The intuition behind this is to exploit the non-explicit and latent inter-class relationships between graphs via their spectral measures and use a GNN on this to also introduce a relational inductive bias (Battaglia et al., 2018) , which in turn affords us an improved sample complexity and hence better combinatorial generalization given such few samples to begin with.

Given, the super-classes and the super-graph, we train our proposed GNN model for few-shot learning on graphs. Our GNN consists of a graph isomorphism network (GIN) Xu et al. (2019) as a feature extractor F θ (.) to generate graph embeddings; on which subsequently acts our classifier C(.) comprising of two components: (i) C sup : a MLP layer to learn and predict the super class associated to a graph, and (ii) C GAT : a graph attention network (GAT) to predict the actual class label of a graph. The overall loss function is a sum of the cross-entropy losses associated with C sup and C GAT . We follow initialization based strategy (Chen et al., 2019) , with a training and fine-tuning phase, so that in the fine-tuning phase, the pre-trained parameters associated with F θ (.) and C sup are frozen, and the few novel labeled graph samples are used to update the weights and attention learned by C GAT .

Our contributions: To the best of our knowledge, we are the first to introduce few shot learning on graphs for graph classification. Next, we propose an architecture that makes use of the graph's spectral measures to generate a set of super-classes and a super-graph to better model the latent relations between classes, followed by our GNN trained using an initialization method. Finally, we conduct extensive experiments to gain insight into our method. For example, in the 20-shot setting on the TRIANGLES dataset, our method shows a substantial improvement of nearly 7% and 20% over DL-based and unsupervised baselines, respectively.

2. RELATED WORK:

Few-shot learning in the computer vision community was first introduced by (Fei-Fei et al., 2006) with the intuition that learning the underlying properties of the base classes given abundant samples can help generalize better to unseen classes with few-labeled samples available. Various learning algorithms have been proposed in the image domain, among which a broad category of initialization based methods aim to learn transferable knowledge from training classes, so that the model can be adapted to unseen classes with limited labeled examples (Finn et al., 2017) ; (Rusu et al., 2018) ; (Nichol et al., 2018) . Recently proposed and widely accepted Initialization based methods can broadly be classified into: (i) methods that learn good model parameters with limited labeled examples and a small number of gradient update steps (Finn et al., 2017) and (ii) methods that learn an optimizer (Ravi & Larochelle, 2017) . We refer the interested reader to Chen et. al. (Chen et al., 2019) for more examples of few-shot learning methods in vision.

Graph neural networks (GNNs) were first introduced in (Gori et al., 2005) ; (Scarselli et al., 2009) as recurrent message passing algorithms. Subsequent work (Bruna et al., 2014) ; (Henaff et al., 2015) proposed to learn smooth spectral multipliers of the graph Laplacian, but incurred higher computational cost. This computational bottleneck was later resolved (Defferrard et al., 2016) ; (Kipf & Welling, 2016) by learning polynomials of the graph Laplacian. GNNs are a natural extension to Convolutional neural networks (CNNs) on non-Euclidean data. Recent work (Velikovi et al., 2018) introduced the concept of self-attention in GNNs, which allows each node to provide attention to the enclosing neighborhood resulting in improved learning. We refer the reader to (Bronstein et al., 2016) for detailed information on GNNs. Despite all the success of GNNs, few-shot classification remains an under-addressed problem. Some recent attempts have focused on solving the few-shot learning on graph data where GNNs are either trained via co-training and self-training (Li et al., 2018a) , or extended by stacking transposed graph convolutional layers imputing a structural regularizer (Zhang et al., 2019) -however, both these works focus only on the node classification task.

To the best of our knowledge, there does not exist any work pertaining few-shot learning on graphs focusing on the graph classification task, thus providing the motivation for this work.

Comparison to few-shot learning on images: Few shot learning (FSL) has gained wide-spread traction in the image domain in recent years. However the success of FSL in images is not easily translated to the graph domain for the following reasons: (a) Images are typically represented in Euclidean space and thus can easily be manipulated and handled using well-known metrics like cosine similarity, L p norms etc. However, graphs come from non-Euclidean domains and exhibit much more complex relationships and interdependency between objects. Furthermore, the notion of a distance between graphs is also not straightforward and requires construction of graph kernels or the use of standard metrics on graph embeddings (Kriege et al., 2019) . Additionally, such graph kernels dont capture higher order relations very well. (b) In the FSL setting on images, the number of training samples from various classes is also abundantly more than what is available for graph datasets. The image domain allows training generative models to learn the task distribution and can further be used to generate samples for data augmentation, which act as very good priors. In contrast, graph generative models are still in their infancy and work in very restricted settings. Furthermore, methods like cropping and rotation to improve the models can't be used for graphs given the permutation invariant nature of graphs. Additionally, removal of any component from the graph can adversely affect its structural properties, such as in biological datasets. (c) The image domain has very well-known regularization methods (e.g. Tikhonov, Lasso) that help generalize much better to novel datasets. Although, they dont bring any extra supervised information and hence cannot fully address the problem of FSL in the image domain. To the best of our knowledge, this is still an open research problem in the image domain. On the other hand, in the graph domain, our work would be a first step towards graph classification in an FSL setting, which would then hopefully pave the path for better FSL graph regularizers. (d) Transfer learning has led to substantial improvements on various image related tasks due to the high degree of transferability of feature extractors. Thus, downstream tasks like few-shot learning can be performed well with high quality feature extractor models, such as Resnet variants trained on Imagenet. Transfer learning, or for that matter even good feature extractors, remains a daunting challenge in the graph domain. For graphs, there neither exists a dataset which can serve as a pivot for high quality feature learning, nor does there exist a Graph NN which can capture the higher order relations between various categories of graphs, thus making this a highly challenging problem.

3. PRELIMINARIES:

In this section, we introduce our notation and provide the necessary background for our few-shot learning setup on graphs. We begin by describing the various data sample types, followed by our learning procedure, in order to formally define few-shot learning on graphs. Finally, we define the graph spectral distance between a pair of graphs.

Data sample sets: Let G denote a set of undirected unweighted graphs and Y be the set of associated class labels. We consider two disjoint populations of labeled graphs consisting of i.i.d. graph samples, the set of base class labeled graphs G B = {(g

(B) i , y (B) i )} n

i=1 and the set of novel class labeled graphs G N = {(g B) , and y N ) . Here, the set of base and novel class labels are denoted by Y (B) = {1, . . . , K} and Y (N ) = {K + 1, . . . , K }, respectively, where K > K. Both Y (B) and Y (N ) are disjoint subsets of Y, so, Y (B) ∩ Y (N ) = ∅. Note that m n, i.e., there are far fewer novel class labeled graphs compared to the base class labeled ones. Besides G B and G N , we consider a set of t unlabeled unseen graphs G U := {g

(N ) i , y (N ) i )} m i=1 , where g (B) i , g (N ) i ∈ G, y (B) i ∈ Y (

(N ) i ∈ Y (

(U ) 1 , . . . , g (U ) t | g (U ) i ∈ π 1 (G N ), i = 1 . . . t}, for testing 1 .

Learning procedure: Inspired by the initialization based methods, we similarly follow a two-stage approach of training followed by fine-tuning.

During training, we train a graph feature extractor F θ (G B ) with network parameters θ followed by a classifier C(G B ) on graphs from G B , where the loss function is the standard cross-entropy loss L c . In order to better recognize and generalize well on samples from novel classes, in the finetuning phase, the pre-trained feature extractor F θ (.) along with its trained parameters is fixed and the classifier C(G N ) is trained on the novel class labeled graph samples from G N , with the same loss L c . Now, given the classification of data samples and the two-stage learning method, our problem of few-shot classification on graphs can be defined as follows.

Problem definition: Given n base-class labeled graphs from G B during the training phase and m novel-class labeled graphs from G N during the fine-tuning phase, where m n, the objective of few-shot graph classification is to classify t unseen test graph samples from G U . Moreover, if m = qT , where T = K -K, i.e., each novel class label appears exactly q times in G N , then this setting is referred to as the q-shot, T -way learning.

Graph spectral distance: Let us consider the graphs in G. The normalized Laplacian of a graph g ∈ G is defined as ∆ g = I -D -1/2 AD 1/2 , where A and D are the adjacency and the degree matrices of graph g, respectively. The set of eigenvalues of ∆ g given by {λ i } |V | i=1 is called the spectrum of ∆ g and is denoted by σ(g). It is well known that the spectrum σ(g) of a normalized Laplacian matrix is contained in interval [0, 2]. We assign a Dirac mass δ λi concentrated on each λ i ∈ σ(g), thus associating a probability measure to σ(g) supported on [0, 2], called the graph spectral measure µ σ(g) . Furthermore, let P ([0, 2]) be the set of probability measures on interval [0, 2].

We now define the p-th Wasserstein distance between probability measures, which we later use to define the spectral distance between a pair of graphs. ] be the cost function between the probability measures µ, ν ∈ P ([0, 2]). Then the p-th Wasserstein distance between measures µ and ν is given by

Definition 1 Let p ∈ [1, ∞) and let c : [0, 2] × [0, 2] → [0, +∞

W p (µ, ν) = inf γ [0,2]×[0,2] c(x, y) p dγ | γ ∈ Π(µ, ν) 1 p

where Π(µ, ν) is the set of transport plans, i.e., the collection of all measures on [0, 2] × [0, 2] with marginals µ and ν.

Given the general definition of the p-th Wasserstein distance between probability measures and the graph spectral measure, we can now define the spectral distance between a pair of graphs in G.

Definition 2 Given two graphs g, g ∈ G, the spectral distance between them is defined as

W p (g, g ) := W p µ σ(g) , µ σ(g )

In words, W p (g, g ) is the optimal cost of moving mass from the graph spectral measure of graph g to that of graph g , where the cost of moving unit mass is proportional to the p-th power of the difference of real-eigenvalues in interval [0, 2] 2 .

4. OUR METHOD:

We present our proposed approach here. First, given abundant base-class labels, we cluster them into super-classes by computing prototype graphs from each class, followed by clustering the prototype graphs based on their spectral properties. This clustering of prototype graphs induces a natural clustering on their corresponding class labels, resulting in super-classes (as outlined in Section 4.1). 

Fine-tuning stage:



Fixed weights:

Tuned/Updated weights in GAT These super-classes are then used in the creation of a super-graph used further down by our GNN.

Note that the creation of super-classes, followed by building a super-graph are a once-off process.

The prototype graphs as well as the super-classes for the base classes can be stored in memory for further use.

Next, we explain our graph neural network's architecture which comprises of a feature extractor F θ (.) and a classifier C(.), described in Section 4.2. The classifier C(.) is further subdivided into a classifier C sup that predicts the superclass of a graph feature vector and a graph attention network (GAT) C GAT to predict the graph's class label. Figure 1 illustrates the training and fine-tuning phases of our GNN.

4.1. COMPUTING SUPER CLASSES:

In order to exploit inter-class relationships between base-class labels, we cluster them in the following manner. First, we partition the set

G B into class-specific sets G (i) , for i = 1 . . . K, where G (i)

is the set of graphs with base-class label i. Thus, i) . Then, we compute class prototype graphs for each class-specific set. The class prototype graph for class i represented by p i is given by

G B = K i=1 G (

EQUATION

Essentially, the class prototype graph p i for the i-th class is the graph with the least average spectral distance to the rest of the graphs in the same class. Given these K prototypes, we cluster them using Lloyd's method (also known as k-means)3 .

Clustering prototype graphs: Given K unlabeled prototypes p 1 , . . . , p K ∈ π 1 (G B ) and their associated spectral measures µ σ(p1) , . . . , µ σ(p K ) ∈ P ([0, 2]). We rename the spectral measures as s 1 , . . . , s K to ease notation. Thus, our goal is to associate these spectral measures to at most k clusters, where k ≥ 1 is a user defined parameter.

The k-means problem finds a k-partition C = {C 1 , . . . , C k } that minimizes the following objective that represents the overall distortion error of the clustering

argmin C k i=1 si∈Ci W p (s i , B(C i )) (2)

where s i is a prototype graph in cluster C i and B(C i ) is the Wasserstein barycenter of the cluster C i . The barycenter is computed as where s(i, j) denotes the j-th spectral measure in the i-th cluster C i .

EQUATION

Lloyd's algorithm: Given an initial set of Wasserstein barycenters B (1) (C 1 ), . . . , B (1) (C k ) of spectral measures at step t = 1, one uses the standard Lloyd's algorithm to find the solution by alternating between the assignment (Equation 4) and update (Equation 5) steps

EQUATION

Lloyd's algorithm is known to converge to a local minimum (except in pathological cases, where it can oscillate between equivalent solutions). The final output is a grouping of the prototype graphs into k groups, which also induces a grouping of the corresponding base classes. We denote these class groups as super-classes and denote the set of super-classes as Y sup .

4.2. OUR GRAPH NEURAL NETWORK:

Feature extractor: To apply standard neural network architectures for downstream tasks we must embed the graphs in a finite dimensional vector space. We consider graph neural networks (GNNs) that employ the following message-passing architecture

H (j) = M (A, H (j-1) , θ (j) )

where H (j) ∈ R |V |×d are the node embeddings (i.e., messages) computed after j steps of the GNN and M is the message propagation function which depends on the adjacency matrix of the graph A, the trainable parameters of the j th layer θ (j) , and node embeddings H (j-1) generated from the previous step.

A recently proposed GNN called the graph isomorphism network (GIN) by Xu et al. (2019) was shown to be stronger than several popular GNN variants like GCN Kipf & Welling (2016) and GraphSAGE Hamilton et al. (2017) . What makes GIN so powerful and sets it apart from the other GNN variants is its injective neighborhood aggregation scheme which allows it to be as powerful as the Weisfeiler-Lehman (WL) graph isomorphism test. Motivated by this finding, we chose GIN as our graph feature extractor. The message propagation scheme in GIN is given by

H (j) = M LP ((1 + ) j H (j-1) + A T H (j-1) ) (6)

Here, is a layer-wise learnable scalar parameter and M LP represents a multi-layer perceptron with layer-wise non-linearities for more expressive representations. The full GIN model run R iterations of Equation 6 to generate final node embeddings which we represent by H (R) . As features from earlier iterations can also be helpful in achieving higher discriminative power, embeddings H (j) from all R iterations are concatenated as

H g = R j=1 H (j) ,

Here,

H (j) = v∈V H (j)

v , where H (j) i

represents the i-th node's embedding in the j-th iteration and denotes a concatenation operator. H g now contains the graph embedding of a graph g and is passed on to the classifier.

Classifier: Here, our objective is to improve the class separation produced by the graph embeddings of the feature extractor F θ (.) and we do this by building a "graph of graph embeddings", called a super-graph g sup , where each node is a graph feature vector. We then employ our classifier C(.) on this super-graph to achieve better separation among the graph classes in the embedding space.

During training, we first build the super-graph g sup on a batch of base-labeled graphs as a collection of k-NN graphs, where each constituent k-NN graph is built on the graphs belonging to the same super-class. g sup is then passed through a multi-layered graph attention network C GAT to learn the associated class probabilities. The features extracted from F θ (.) are passed into the MLP network C sup to learn the associated super-class labels. C sup and C GAT combine to form our classifier C(.). The cross-entropy losses associated with C sup and C GAT are added to give the overall loss for C(.). The intuition behind the construction of g sup to train C GAT on was to further improve the existing cluster separation based on graph spectral measures by introducing a relational inductive bias (Battaglia et al., 2018) that is inherent to the GNN C GAT .

Recall that we adopt an initialization method (described in 3). In our fine-tuning stage, novel class labeled graphs from G N are input to the network. The pre-trained parameters learned by the feature extractor F θ (.) are fixed and C sup is used to infer the novel graph's super-class label, followed by creation of super-graph on the novel graph samples and finally updating the parameters in C GAT through the loss. Finally the evaluation is performed on the samples from the unseen test set G U .

Discussion: We make the assumption that the novel test classes belong to the same set of super-classes from the training graphs. The reason being that the novel class labeled samples are so much fewer than the base class labeled samples, that the resulting super-graph ends up being extremely sparse and deviates a lot from the shape of the super-graph from the base classes; therefore it severely hinders C GAT s ability to effectively aggregate information from the embeddings of the novel class labeled graphs. Instead, we pass the novel graph samples through our trained C sup and infer its super-class label and this works very effectively for us, as is evidenced by our empirical results.

5. EXPERIMENTAL RESULTS:



5.1. BASELINES AND DATASETS:

The standard graph classification datasets do not adequately satisfy the requirements for few-shot learning due to the dearth of unique class labels. Hence, we pick four new classification datasets, namely, Letter-High, TRIANGLES, Reddit-12K, and ENZYMES. The details and statistics for these datasets are given in Appendix A.1. As there do not exist any standard state-of-the-art methods for few-shot graph classification, we chose existing baselines for standard graph classification from both supervised and unsupervised methods.

For supervised deep learning baselines, we chose -GIN (Xu et al. (2019) ), CapsGNN (Xinyi & Chen (2019) ), and Diffpool (Lee et al. (2019) ). We ran these methods with similar settings as ours, i.e., by partitioning the main model into feature extraction and classifier sub-models to compare them in a fair and informative manner. From the unsupervised category, we consider 4 powerful SOTA methods -AWE (Ivanov & Burnaev (2018) ), Graph2Vec (Narayanan et al. (2017) ), Weisfeiler-Lehman subtree Kernel (Shervashidze et al. (2011) ), and Graphlet count kernel (Shervashidze et al. (2009) ). Since we want to analyze the few-shot classification abilities of these models, we essentially want to find out how well these algorithms can achieve class separation. We use k-NN search on the output embeddings of these algorithms. Further configuration and implementation details for the baselines can be found in Appendix A.2. We also emphasize the benefit of using a GNN as a classifier by showing the adaptation of our model to semi-supervised fine-tuning (in Appendix A.5) and active learning (in Appendix A.6) settings.

5.2. FEW-SHOT RESULTS:

We consider two variants of our model as naive baselines. In the first variant, we replace our GAT classifier with GCN Kipf & Welling (2016) . We call this model OurMethod-GCN. This variant is used to justify the choice of GAT over GCN.

In the second variant, we replace the entire classifier with the k-NN algorithm over the features extracted from various layers of the feature extractor. We call this variant GIN-k-NN and this is introduced to emphasize the significance of building a super-graph and using a GAT on it as a classifier to exploit the relational inductive bias.

The results for all the datasets in various q-shot scenarios, where q ∈ {5, 10, 20} are given in Table 1 . We run each model 50 times and report averaged results. In every run, we select a different novel labeled subset G N for fine-tuning the classifiers of the models. The evaluation for all models is done by randomly selecting a subset of 500 samples from the testing set G U for Letter-High and TRIANGLES, whereas over 150 for ENZYMES and 300 for Reddit dataset and averaging over 10 such random selections. The results clearly show that our proposed method and its GCN variant (i.e., OurMethod-GCN) outperform the baselines. GIN-k-NN shows significant degradation in results on nearly all the three paradigms for all datasets with exceptions on 5-shot and 10-shot on ENZYMES dataset, thus strongly indicating that the improvements of our method can primarily be attributed to our GNN classifier fed with the super-graph constructed from our proposed method. The improvements in results are higher on TRIANGLES and Reddit datasets in contrast to Letter-High and ENZYMES, which can be attributed to the smaller size of the graphs in Letter-High making it difficult to distinguish based on graph spectra alone, whereas the complex and highly inter-related structure of enzymes makes it dif- ficult for the DL based feature extractors as well as the graph kernel methods to segregate the classes in the feature and graph space respectively. GIN and WL show much better results as compared to other baselines for all the q-shot scenarios, whereas AWE and Graphlet Kernel show significantly low results, unable to capture the properties of the graphs well. The DL baselines apart from GIN on the other hand show improvements on the TRIANGLES dataset performing close to GIN, where the unsupervised methods fails to capture the local node properties, however still perform poorly on other datasets. For the 20-shot scenario on TRIANGLES, our GAT variant shows an improvement of around 7% over DL baselines and more than 20% when compared to unsupervised methods. The substantial improvements of around 4% on Reddit dataset shows the superiority of our model for both the variants -GAT and GCN. Furthermore, the t-SNE plots in Figure 3 show a substantial and interesting separation of class labels which strongly indicate that a good feature extractor in conjunction with a GNN perform well as a combination. The t-SNE plots for ENZYMES, Reddit, and Letter-High are shown in figures 4, 5 and 6 respectively.

5.3. ABLATION STUDY ON NUMBER OF SUPER-CLASSES:

Here, we study the behavior of our proposed network model without the super-class classifier C sup . In Table 3 (10 and 20-shot setting), we observe a marked increase with the addition of our classifier which uses the super-class information and the super-graph based on spectral measures to guide C GAT towards improving the class separation of the graphs during both the training and fine-tuning stages. Using super-classes help in reducing the sample complexity of the large Hypothesis space and makes tuning of the model parameters easier during fine-tuning stage with less samples and few iterations. Negligible differences are observed on ENZYMES dataset since both the number of training classes as well as test classes are low, thus, the model performs equally well on removing super-classes. This is because of the latent inter-class representations can still be captured between few classes especially during the fine-tuning phase. 4 and 5 , respectively. For TRIANGLES and Letter- High datasets, as we increase the number of super-classes, we observe the accuracy improving steadily up to 3 super-classes and then dropping from there onwards. For super-classes less than 3, we observe that the k-NN graph does not respect the class boundaries that are already imposed by the graph spectral measures, thus connecting more arbitrary classes. For Reddit we observe the performance is slightly better on using 2 super-classes and for ENZYMES similar performances are observed for both 1 and 2 super-classes as described in the ablation study. On the other hand, increasing the number of super-classes past 3, makes each super-class cluster very sparse with few graph classes within, leading to an underflow of information between the graph classes. The same effect is observed for all datasets.

The k-value or the number of neighbors of each node belonging to the same connected component in the super-graph (i.e., belonging to the same super-class) is another salient parameter upon which hinges the information flow (via message passing) between the graphs of the same super-class. We analyze our model with k values in the set {2, 4, 6, 8} and a commonly used heuristic method, whereby each graph is connected to √ b s nearest neighboring graphs based on the Euclidean similarity of their feature representations, where b s is the number of samples in the mini-batch corresponding to super-classes s. We achieve best results with 2-NN graphs per super-class and increasing k beyond it leads to denser graphs with unnecessary connections between classes belonging to the same super-class.

6. CONCLUSION:

In this paper, we investigated the problem of few-shot learning on graphs for the graph classification task. We explicitly created a super-graph on the base-labeled graphs and then grouped / clustered their associated class labels into super-classes, based on the graph spectral measures attributed to each graph and the L p -Wasserstein distances between them. We found that training our GNN on the super-graph along with the auxiliary super-classes resulted in a marked improvement over stateof-the-art GNNs. A promising future work is to propose new GNN models that break away from current neighborhood aggregation schemes to specifically overcome the obstacle posed by few-shot learning on graphs. Our source-code and dataset splits have been made public in an attempt to attract more attention to the context of few-shot learning on graphs.

A APPENDIX:

A.1 DATASET DETAILS We use 4 different datasets namely -Reddit-12K, ENZYMES, Letter-High and TRIANGLES to perform exhaustive empirical evaluation of our model on various real-world datasets varying from small average graph size on Letter-High to large graphs like Reddit-12K. These datasets can be downloaded here4 . The dataset statistics are provided in Table 6 , while the split statistics are provided in TRIANGLES dataset contain 10 different classes where the classes are numbered from 1 to 10 corresponding to the number of triangles/3-cliques in each graph of the dataset.

Letter-High dataset contains graphs which represent distorted letter drawings from the english alphabets -A, E, F, H, I, K, L, M, N, T, V, W, X, Y, Z. Each graph is a prototype manual construction of the alphabets. The validation graphs are used to assess model performance on training classes itself to check overfitting as well as for grid-search over hyperparameters. The actual train-testing class splits used for this paper are provided with the code. Since the TRIANGLES dataset has a large number of samples, this makes it infeasible to run many baselines including DL and non-DL methods. Hence, we sample 200 graphs from each class, making the total sample size 2000. Similarly we downsample the number of graphs from 11929 to 1111 (nearly 101 graphs per class). Downsampling is performed for Reddit-12K given extremely large graph sizes which makes the graph kernels as well as some deep learning baselines extremely slow.

A.2 BASELINE DETAILS:

This section details the implementation of the baseline methods. Since, DL-based methods -GIN, CapsGNN and DIFFPOOL have not been previously run on these datasets, we select the crucial hyper-parameters -such as number of layers heuristically based on the results of standard graph classification datasets on the best performing variants of these models. For these three methods we take the novel layers proposed in the corresponding papers as their feature extractors, while downstream MLP layers are chosen as the classifier. The training and evaluation strategies are similar to our model, i.e., the models are first trained in an end-to-end fashion on the training dataset G B until convergence with learning rate decay on loss plateau and then the classifier layers are fine-tuned over G N , keeping the parameters of the feature extractor layers fixed.

For the unsupervised models -WL subtree kernel, Graphlet Count kernel, AWE and Graph2Vec, the evaluation is done using k-NN search to assess the clustering quality of these models in our few-shot scenario. We refrain from using high-level classifier models such as SVM or MLPs, since training these classifiers on few-shot regime will not properly assess the abilities of these models to cluster together graphs of similar class labels. We empirically found that using high level classifiers resulted in higher deviations and lower mean accuracies. We choose the hyper-parameters for these models using grid-search, since they are significantly faster and each one of these models have few highly sensitive parameters which affect the model significantly. For these models, we perform a grid search for selection of k in the k-NN algorithm from the set {1, 2, 3, 4, 5} for the 5-shot scenario, of which k = 1 was found to perform the best. For higher shot scenario, the search was performed over the set {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, where we again found k = 1 to be the best. The validation set is used to check overfitting and hyper-parameter selection on the baseline methods.

A.3 OUR MODEL DETAILS:

This section provides the implementation details of our proposed model. Since, our feature extractor model is GIN, we maintain similar parameter settings as recommended by their paper. As mentioned in section 4.2, using embeddings from all iterations of the message passing network helps achieve better discriminative power and improved gradient flow, therefore we employ the same strategy in our feature extractor. The number of super-classes are selected from the set {1, 2, 3, 4, 5} using grid-search. The k-value for construction of super-graph was selected from the set {2, 4, 6, 8}. The feature extractor model uses batch-normalization between subsequent message passing layers. We use dropout of 0.5 in the C sup layers. The C GAT layers undergo normalization of inputs between subsequent layers along with a dropout of 0.5, however, the normalization mechanism in classifier layers is different from batch-norm. We normalize each feature embedding to have Euclidean norm with value 1. Essentially,

EQUATION

where x j+1 input is the input of j + 1 th layer of classifier, x j out is the output of the j th layer. The inputs of the first layer of C GAT also undergo the same transformation over the outputs of the feature extractor model. We train our models with Adam (Kingma & Ba (2014)) with an initial learning rate of 10 -3 for 50 epochs. Each epoch has 10 iterations, where we randomly select a mini-batch from the training data G B . The fine-tuning stage consists of 20 epochs with 10 iterations per epoch. We use a two-layer MLP over the final attention layer of C GAT for classification. The attention layers use multi-head attention with 2 heads and leaky ReLU slope of 0.1 . The embeddings from both the attention heads are concatenated. For 20-shot, we set k to 2, number of super-classes to 3 and batch size to 128 on the Letter-High dataset, while k is set to 2 and batch size 64 on Reddit, ENZYMES and TRIANGLES datasets. The number of super-classes for Reddit are set to 2, for ENZYMES it is set to 1 and for TRIANGLES are 3. For ENZYMES, there are negligible differences on using 1 and 2 super-classes as shown in table 4. We used Python Optimal Transport (POT) library5 for implementation of the p-th Wasserstein distance. ,where b is the distance between a sample and the nearest cluster that the sample is not a part of. The results for mean silhouette coefficient over the test samples averaged over multiple runs are shown in Table 8 . We normalize the embeddings before calculating the silhouette coefficient. We can clearly see that our model creates better clusters with low intra-cluster distance as well as high inter-cluster distance. Note that the coefficient value for WL remains the same for all scenarios since it computes fixed embeddings attributed to absence of any DL component. A.5 SEMI-SUPERVISED FINE-TUNING In many real-world learning scenarios, it is quite common to find abundant unlabelled data. Since our model uses a GNN classifier, this makes it possible to use unlabelled data while learning through message passing, where the fine tuning stage of our method is performed in semi-supervised settings.

Essentially, while fine tuning the model, i.e., only training the classifier C GAT on G N , we additionally use p more graphs along with G N , whose labels are unknown. The learning objective for fine tuning stage doesn't change since the gradients are back-propagated from the labeled samples only. In this setting, each node in the attention classifier can aggregate information from unlabelled samples as well, thus allowing improved learning of the graphs features in C GAT . We show the results for p values 25 and 50 on Letter-High and TRIANGLES datasets, whereas for p values 10 and 20 on Reddit and ENZYMES datasets. The results are shown in Table 9 . We observe an increase in the accuracy with increase in number of unlabeled samples during fine-tuning phase.

A.6 ADAPTATION TO ACTIVE-LEARNING:

In this section, we show the adaptation of our model to highly practical active learning scenario. In many real world applications, we might start with few samples per class, however as the number of samples to classify from these classes increase over time, some of these samples can be used by the model to adaptively learn and improve with very less human intervention, since the number of number of samples to be queried for theirs label can always be controlled.

To perform active-learning, we first select a random subset of size 100 for Letter-High and TRI-ANGLES datasets as well as a random subset of size 40 for Reddit and ENZYMES datasets, which we term as G random , then fine tune the model on G N and further evaluate the model on G random . Thereafter, l relatively important samples are chosen from G random and added to G N for another step of fine-tuning. There can be multiple strategies for defining relative importance of a sample.

For our purpose, we define a sample's relative importance via its predicted class probability distribution. We sort these samples in increasing order of the difference between their highest and second highest predicted class probabilities and choose the first l samples from this sorted ranking. We call this importance relative, since each sample is evaluated with respect to the set G N and thus, there is transductive flow of information among the samples, hence defining the relative embeddings in the space. Intuitively speaking, we have chosen the samples lying closer to separation boundary with respect to G N . The results for various values of l are shown in Table 10 . The evaluation is done as mentioned earlier on the unseen set G U . We observe significant improvement for all the datasets. This shows our model is capable of selecting important samples with respect to the few existing samples and learn actively.

A.7 PERFORMANCE OF MODEL WITH 1 SUPER-CLASS From table 4 in correspondence to tables 1 and 2, one can observe that the results obtained by using only 1 super-class which is equivalent to removing the super-classes are still better in comparison with many GNN and graph kernel baselines. By removing the super-classes and thus forming the super-graph solely based on k-nearest neighbor heuristic the GAT still learns latent inter class connections via information flow better than the GNNs which use MLP as their classifier. The super graph constructed in such scenario will have arbitrary connections between classes in the beginning, however as the GIN feature extractor learns over time the segregation in the feature space increases leading to better inter as well intra-class connections. Despite this, the performance with superclasses is better as this inductive bias allows the model to initiate with a better alignment in the feature space. The silhouette score comparison for OurMethod-GAT with 1 super-class and with the best performing number of super-classes to GIN and WL clearly indicates the multifold benefits of using GNNs as a classifier via super-graph construction. The t-SNE plots for OurMethod-GAT with only 1 super-class, GIN and WL kernel on the datasets TRIANGLES, Reddit and Letter-High are provided in the figures 7, 8 and 9 respectively.

Table 11 : Silhouette coefficients of the test classes for three models -GAT variant of Our Method for 1 super-class which is equivalent to not using any super-classes vs the best performing number of super-classes as well as GIN and WL on 20-shot scenario. For GIN and WL both the sub-columns contain the same values as they don't have any concept of super-classes. 

:

We use the notation π1(p) and π2(p) to denote the left and right projection of an ordered pair p, respectively.

In practice, extremely fast computation of W p (g, g ) is achieved using a regularized optimal transport (OT)(Genevay et al., 2016), which makes use of the Sinkhorn algorithm.

We used the seeding method suggested in k-means++(Arthur & Vassilvitskii, 2007)

https://ls11-www.cs.tu-dortmund.de/staff/morris/graphkerneldatasets

https://pot.readthedocs.io/en/stable/all.html

Figures and Tables:

Figure 1: The training (left) and fine-tuning (right) stages of our GNN.

Figure 2: An illustration of our proposed Wasserstein super-class clustering algorithm.

Figure 3: Visualization: t-SNE plots of the computed embeddings of test graphs on 20-shot scenario from OurMethod-GAT (left), GIN (middle) and WL Kernel (right) on TRIANGLES dataset. The embeddings for both our model and GIN are taken from the final layers of the respective models.

Figure 4: Visualization: t-SNE plots of the computed embeddings of test graphs on 20-shot scenario from OurMethod-GAT (left), GIN (middle) and WL Kernel (right) on ENZYMES dataset.

Figure 5: Visualization: t-SNE plots of the computed embeddings of test graphs on 20-shot scenario from OurMethod-GAT (left), GIN (middle) and WL Kernel (right) on Reddit dataset.

Figure 6: Visualization: t-SNE plots of the computed embeddings of test graphs on 20-shot scenario from OurMethod-GAT (left), GIN (middle) and WL Kernel (right) on Letter-High dataset.

Figure 7: Visualization: t-SNE plots of the computed embeddings of test graphs on 20-shot scenario from OurMethod-GAT with only 1 super-class (left), GIN (middle) and WL Kernel (right) on TRIANGLES dataset.

Figure 8: Visualization: t-SNE plots of the computed embeddings of test graphs on 20-shot scenario from OurMethod-GAT with only 1 super-class (left), GIN (middle) and WL Kernel (right) on Reddit dataset.

Figure 9: Visualization: t-SNE plots of the computed embeddings of test graphs on 20-shot scenario from OurMethod-GAT with only 1 super-class (left), GIN (middle) and WL Kernel (right) on Letter-High dataset.

Results for various few-shot scenarios on Letter-High and TRIANGLES datasets. The best results are highlighted in bold while the second best results are underlined.

Table content: <table><tr><td>Method</td><td/><td>Letter-High</td><td/><td/><td>TRIANGLES</td><td/></tr><tr><td/><td>5-shot</td><td>10-shot</td><td>20-shot</td><td>5-shot</td><td>10-shot</td><td>20-shot</td></tr><tr><td>WL</td><td>65.27 ± 7.67</td><td>68.39 ± 4.69</td><td>72.69 ± 3.02</td><td>51.25 ± 4.02</td><td>53.26 ± 2.95</td><td>57.74 ± 2.88</td></tr><tr><td>Graphlet</td><td>33.76 ± 6.94</td><td>37.59 ± 4.60</td><td>41.11 ± 3.71</td><td>40.17 ± 3.18</td><td>43.76 ± 3.09</td><td>45.90 ± 2.65</td></tr><tr><td>AWE</td><td>40.60 ± 3.91</td><td>42.20 ± 2.87</td><td>43.12 ± 1.00</td><td>39.36 ± 3.85</td><td>42.58 ± 3.11</td><td>44.98 ± 1.54</td></tr><tr><td>Graph2Vec</td><td>66.12 ± 5.21</td><td>68.17 ± 4.26</td><td>70.28 ± 2.81</td><td>48.38 ± 3.85</td><td>50.16 ± 4.15</td><td>54.90 ± 3.01</td></tr><tr><td>Diffpool</td><td>58.69 ± 6.39</td><td>61.59 ± 5.21</td><td>64.67 ± 3.21</td><td>64.17 ± 5.87</td><td>67.12 ± 4.29</td><td>73.27 ± 3.29</td></tr><tr><td>CapsGNN</td><td>56.60 ± 7.86</td><td>60.67 ± 5.24</td><td>63.97 ± 3.69</td><td>65.40 ± 6.13</td><td>68.37 ± 3.67</td><td>73.06 ± 3.64</td></tr><tr><td>GIN</td><td>65.83 ± 7.17</td><td>69.16 ± 5.14</td><td>73.28 ± 2.17</td><td>63.80 ± 5.61</td><td>67.30 ± 4.35</td><td>72.55 ± 1.97</td></tr><tr><td>GIN-k-NN</td><td>63.52 ± 7.27</td><td>65.66 ± 8.69</td><td>67.45 ± 8.76</td><td>58.34 ± 3.91</td><td>61.55 ± 3.19</td><td>63.45 ± 2.76</td></tr><tr><td>OurMethod-GCN</td><td>68.69 ± 6.50</td><td>72.80 ± 4.12</td><td>75.17 ± 3.11</td><td>69.37 ± 4.92</td><td>73.11 ± 3.94</td><td>77.86 ± 2.84</td></tr><tr><td>OurMethod-GAT</td><td>69.91 ± 5.90</td><td>73.28 ± 3.46</td><td>77.38 ± 1.58</td><td>71.40 ± 4.34</td><td>75.60 ± 3.67</td><td>80.04 ± 2.20</td></tr></table>

Results for various few-shot scenarios on Reddit-12K and ENZYMES datasets. The best results are highlighted in bold while the second best results are underlined.

Table content: <table><tr><td>Method</td><td/><td>Reddit-12K</td><td/><td/><td>ENZYMES</td><td/></tr><tr><td/><td>5-shot</td><td>10-shot</td><td>20-shot</td><td>5-shot</td><td>10-shot</td><td>20-shot</td></tr><tr><td>WL</td><td>40.26 ± 5.17</td><td>42.57 ± 3.69</td><td>44.41 ± 3.43</td><td>55.78 ± 4.72</td><td>58.47 ± 3.84</td><td>60.1 ± 3.18</td></tr><tr><td>Graphlet</td><td>33.76 ± 6.94</td><td>37.59 ± 4.60</td><td>41.11 ± 3.71</td><td>53.17 ± 5.92</td><td>55.30 ± 3.78</td><td>56.90 ± 3.79</td></tr><tr><td>AWE</td><td>30.24 ± 2.34</td><td>33.44 ± 2.04</td><td>36.13 ± 1.89</td><td>43.75 ± 1.85</td><td>45.58 ± 2.11</td><td>49.98 ± 1.54</td></tr><tr><td>Graph2Vec</td><td>27.85 ± 4.21</td><td>29.97 ± 3.17</td><td>32.75 ± 2.02</td><td>55.88 ± 4.86</td><td>58.22 ± 4.30</td><td>62.28 ± 4.14</td></tr><tr><td>Diffpool</td><td>35.24 ± 5.69</td><td>37.43 ± 3.94</td><td>39.11 ± 3.52</td><td>45.64 ± 4.56</td><td>49.64 ± 4.23</td><td>54.27 ± 3.94</td></tr><tr><td>CapsGNN</td><td>36.58 ± 4.28</td><td>39.16 ± 3.73</td><td>41.27 ± 3.12</td><td>52.67 ± 5.51</td><td>55.31 ± 4.23</td><td>59.34 ± 4.02</td></tr><tr><td>GIN</td><td>40.36 ± 4.69</td><td>43.70 ± 3.98</td><td>46.28 ± 3.49</td><td>55.73 ± 5.80</td><td>58.83 ± 5.32</td><td>61.12 ± 4.64</td></tr><tr><td>GIN-k-NN</td><td>41.31 ± 2.84</td><td>43.58 ± 2.80</td><td>45.12 ± 2.19</td><td>57.24 ± 7.06</td><td>59.34 ± 5.24</td><td>60.49 ± 3.48</td></tr><tr><td>OurMethod-GCN</td><td>40.77 ± 4.32</td><td>44.28 ± 3.86</td><td>48.67 ± 4.22</td><td>54.34 ± 5.64</td><td>58.16 ± 4.39</td><td>60.86 ± 3.74</td></tr><tr><td>OurMethod-GAT</td><td>41.59 ± 4.12</td><td>45.67 ± 3.68</td><td>50.34 ± 2.71</td><td>55.42 ± 5.74</td><td>60.64 ± 3.84</td><td>62.81 ± 3.56</td></tr></table>

Ablation Study: "No-SC" represents our classifier C(.) without C sup and "With-SC" represents C(.) with both C sup and C GAT present.

Table content: <table><tr><td>Dataset</td><td/><td>10-shot</td><td/><td>20-shot</td></tr><tr><td/><td>No-SC</td><td>With-SC</td><td>No-SC</td><td>With-SC</td></tr><tr><td>Letter-High</td><td colspan="2">71.13 ± 3.64 73.61 ± 3.19</td><td colspan="2">75.23 ± 2.48 77.42 ± 1.47</td></tr><tr><td colspan="3">TRIANGLES 74.03 ± 3.89 76.49 ± 3.26</td><td colspan="2">76.89 ± 2.63 80.14 ± 1.88</td></tr><tr><td>Reddit-12K</td><td colspan="2">43.76 ± 4.34 45.35 ± 4.06</td><td colspan="2">48.19 ± 4.01 50.36 ± 3.04</td></tr><tr><td>ENZYMES</td><td colspan="2">59.97 ± 3.98 59.58 ± 4.32</td><td colspan="2">62.7 ± 3.63 62.39 ± 3.48</td></tr><tr><td colspan="2">5.4 SENSITIVITY ANALYSIS</td><td/><td/></tr></table>

Model analysis over number of super-classes in 20-shot scenario. There is no evaluation for 5 super-classes on ENZYMES since the number of training classes is 4. Default value of parameter k is fixed at 2.

Table content: <table><tr><td>Dataset</td><td/><td/><td>20-shot</td><td/><td/></tr><tr><td>.</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td></tr><tr><td>Letter-High</td><td colspan="5">74.43 ± 2.61 76.61 ± 1.67 77.51 ± 1.49 76.31 ± 1.98 75.05 ± 2.29</td></tr><tr><td colspan="6">TRIANGLES 76.43 ± 2.87 79.55 ± 1.91 80.51 ± 1.72 78.91 ± 2.09 78.25 ± 2.40</td></tr><tr><td>Reddit-12K</td><td colspan="5">48.32 ± 4.09 50.67 ± 2.94 50.10 ± 3.02 49.52 ± 4.02 48.33 ± 4.08</td></tr><tr><td>ENZYMES</td><td colspan="4">62.34 ± 4.11 62.13 ± 4.01 60.16 ± 3.81 59.34 ± 3.98</td><td>-</td></tr></table>

Model analysis over number of neighbors (k) in super-graph for 20-shot scenario. Default value for the number of super-classes is fixed at 3. High 77.33 ± 1.71 76.61 ± 1.67 75.63 ± 2.49 74.66 ± 2.61 74.35 ± 2.48 TRIANGLES 80.77 ± 1.57 79.85 ± 1.59 79.45 ± 1.97 78.93 ± 2.04 79.42 ± 3.16 Reddit-12K 50.48 ± 3.02 46.37 ± 3.03 44.12 ± 2.98 43.88 ± 3.24 44.82 ± 2.83 ENZYMES 62.34 ± 4.11 61.42 ± 4.42 60.23 ± 5.10 59.67 ± 4.77 61.07 ± 4.68

Table content: <table><tr><td>Dataset</td><td/><td>20-shot</td><td/><td/></tr><tr><td>2</td><td>4</td><td>6</td><td>8</td><td>Heuristic</td></tr><tr><td>Letter-</td><td/><td/><td/><td/></tr></table>

Dataset StatisticsDataset Description: Reddit-12K datasets contains 11929 graphs where each graph corresponds to a thread in which each node represents a user and each edge represents that one user has responded to a comment from some other user. There are 11 different types of discussion forums corresponding to each of the 11 classes. ENZYMES is a dataset of protein tertiary structures consisting of 600 enzymes from the BRENDA enzyme database. The dataset contains 6 different graph categories corresponding to each different top-level EC enzyme.

Table content: <table><tr><td colspan="5">Dataset Name # Classes # Graphs Avg # Nodes Avg # Edges</td></tr><tr><td>Reddit-12K</td><td>11</td><td>11929</td><td>391.41</td><td>456.89</td></tr><tr><td>ENZYMES</td><td>6</td><td>600</td><td>32.63</td><td>62.14</td></tr><tr><td>Letter-High</td><td>15</td><td>2250</td><td>4.67</td><td>4.50</td></tr><tr><td>TRIANGLES</td><td>10</td><td>45000</td><td>20.85</td><td>35.50</td></tr></table>

Dataset Splits

Table content: <table><tr><td>Dataset Name</td><td># Train</td><td># Test</td><td># Training</td><td># Validation</td><td># Test</td></tr><tr><td/><td>Classes</td><td>Classes</td><td>Graphs</td><td>Graphs</td><td>Graphs</td></tr><tr><td>Reddit-12K</td><td>7</td><td>4</td><td>566</td><td>141</td><td>404</td></tr><tr><td>ENZYMES</td><td>4</td><td>2</td><td>320</td><td>80</td><td>200</td></tr><tr><td>Letter-High</td><td>11</td><td>4</td><td>1330</td><td>320</td><td>600</td></tr><tr><td>TRIANGLES</td><td>7</td><td>3</td><td>1126</td><td>271</td><td>603</td></tr></table>

Silhouette coefficients of the test classes for the three dominant models -GAT variant of Our Method, GIN and WL. The best scores are highlighted in bold.

Table content: <table><tr><td>Method</td><td colspan="2">Reddit-12K</td><td colspan="2">ENZYMES</td><td colspan="2">Letter-High</td><td colspan="2">TRIANGLES</td></tr><tr><td/><td>10-shot</td><td>20-shot</td><td>10-shot</td><td>20-shot</td><td>10-shot</td><td>20-shot</td><td>10-shot</td><td>20-shot</td></tr><tr><td>GIN</td><td>-0.0566</td><td>-0.0652</td><td>0.0168</td><td>0.0432</td><td>0.2157</td><td>0.2316</td><td>0.0373</td><td>0.1256</td></tr><tr><td>WL Kernel</td><td>-0.0626</td><td>-0.0626</td><td>0.0366</td><td>0.0366</td><td>0.2490</td><td>0.2490</td><td>0.0186</td><td>0.0186</td></tr><tr><td>OurMethod-GAT</td><td>-0.0553</td><td>-0.0559</td><td>0.0296</td><td>0.1172</td><td>0.3494</td><td>0.3787</td><td>0.3824</td><td>0.4508</td></tr></table>

Semi-supervised fine-tuning results for various p values on 10-shot and 20-shot scenarios, where "No Semi-Sup" represents the fine-tuning stage without additional labeled samples.

Table content: <table><tr><td>Dataset</td><td/><td>10-shot</td><td/><td/><td>20-shot</td><td/></tr><tr><td/><td>No Semi-Sup</td><td>25</td><td>50</td><td>No Semi-Sup</td><td>25</td><td>50</td></tr><tr><td>Letter-High</td><td>73.21 ± 3.19</td><td>74.18 ± 2.58</td><td>74.65 ± 2.16</td><td>76.95 ± 1.79</td><td>77.79 ± 1.52</td><td>78.31 ± 1.11</td></tr><tr><td>TRIANGLES</td><td>75.83 ± 2.97</td><td>76.36 ± 2.59</td><td>77.8 ± 2.04</td><td>80.09 ± 1.78</td><td>81.29 ± 1.98</td><td>81.87 ± 1.45</td></tr><tr><td>Dataset</td><td/><td>10-shot</td><td/><td/><td>20-shot</td><td/></tr><tr><td/><td>No Semi-Sup</td><td>10</td><td>20</td><td>No Semi-Sup</td><td>10</td><td>20</td></tr><tr><td>Reddit</td><td>45.41 ± 3.79</td><td>45.88 ± 3.32</td><td>46.01 ± 2.99</td><td>50.34 ± 2.77</td><td>50.76 ± 2.52</td><td>51.17 ± 2.21</td></tr><tr><td>ENZYMES</td><td>60.13 ± 3.98</td><td>60.87 ± 3.24</td><td>61.25 ± 3.17</td><td>62.74 ± 3.64</td><td>63.10 ± 3.47</td><td>63.67 ± 3.18</td></tr></table>

Active Learning Results. The value below each shot represents the number samples l, added to G N for second fine-tuning step, where "No AL" represents the model evaluation without additional labeled samples.

Table content: <table><tr><td>Dataset</td><td/><td>10-shot</td><td/><td/><td>20-shot</td><td/></tr><tr><td/><td>No AL</td><td>15</td><td>25</td><td>No AL</td><td>15</td><td>25</td></tr><tr><td>Letter-High</td><td>73.34 ± 3.37</td><td>75.03 ± 3.24</td><td>76.89 ± 2.16</td><td>77.06 ± 1.73</td><td>78.44 ± 1.52</td><td>79.28 ± 1.36</td></tr><tr><td>TRIANGLES</td><td>76.02 ± 2.54</td><td>78.44 ± 1.84</td><td>79.91 ± 1.28</td><td>80.27 ± 1.84</td><td>81.74 ± 2.03</td><td>82.58 ± 1.57</td></tr><tr><td>Dataset</td><td/><td>10-shot</td><td/><td/><td>20-shot</td><td/></tr><tr><td/><td>No AL</td><td>10</td><td>20</td><td>No AL</td><td>10</td><td>20</td></tr><tr><td>Reddit</td><td>45.41 ± 3.79</td><td>46.88 ± 3.14</td><td>47.91 ± 2.99</td><td>50.43 ± 2.66</td><td>51.76 ± 2.32</td><td>53.07 ± 2.21</td></tr><tr><td>ENZYMES</td><td>60.13 ± 3.98</td><td>61.57 ± 3.48</td><td>62.25 ± 3.06</td><td>62.74 ± 3.64</td><td>63.60 ± 3.30</td><td>64.97 ± 3.11</td></tr></table>

Peer review (iclr2020):
This paper introduces few-shot learning for graph classification. The authors propose a pre-training->fine-tuning approach to handle graph classes unseen at training time (and in only a few shots at test time). At a high level, and to my understanding, their method a priori generates the ingredients for a graph of graphs, a *super-graph*, in two steps: first, it discovers a prototype graph for each graph class in the dataset, then it clusters the prototype graphs into a set of super-classes by k-NN. Both of these operations rely on the spectral distance between graphs, defined in this work using the spectrum of a graph*s normalized Laplacian matrix and the pth Wasserstein distance between probability measures. The intuition is that the super-graph built from these ingredients helps model latent relations between graph classes; these relations can be used at test time to improve classification of unseen graph classes. During (pre-)training, the model builds super-graphs on each batch of data. It uses super-graph information in two ways: an auxiliary classification head (an MLP called C^sup) is trained to map graph embeddings to their corresponding super-class labels, and the super-graph itself, whose nodes are embeddings for individual graphs in the batch, passes through a graph attention network (GAT) that outputs a base class for each graph -- this is the classification head C^GAT. The graph embeddings themselves come from a feature extractor F_? implemented as a graph isomorphism network (GIN). During the fine-tuning stage the model adapts to and classifies graphs from classes unseen during training. Here the parameters of the feature extractor GIN and the C^sup MLP are frozen. C^sup outputs a set of super-class labels that are used to construct a super-graph, which in turn feeds into C^GAT, which in turn yields labels for the test graphs. C^GAT (but not the GIN or C^sup) fine-tunes on a small number q of labelled examples of each novel test class. The full model is evaluated on unlabelled examples from the novel test classes. This process assumes that the novel test graph classes belong to the same set of super classes as the training graph classes, a point that is, unfortunately, not discussed. There*s a lot to digest in this paper, on both the technical and architectural sides. There are graphs of graphs (super-graphs) and different GNN variants operating on both, with the output of one graph network, the feature extracting GIN, feeding into another, the GAT classifier. Understanding all of these pieces and how they fit together is challenging for the reader: I got lost somewhat in the Classifier description in Section 4, while Section 3 defines many things and gives some math that might be extraneous. It is also not immediately obvious that fine-tuning takes place on the set G_N and testing on the set G_U. Overall, though, the paper became clear to me with time and I found the overall presentation to be good. Some additional figures that depict the super-graph construction and clustering would be useful. The construction and use of the super-graph structure to model relations between graph classes is interesting and novel to me, though it relies on well-established techniques (Wasserstein barycenters, Lloyd*s algorithm for k-NN). The architecture itself, which combines GINs and GATs, is also novel to me; a downside is that it is highly complex. Experiments were undertaken on two datasets and seem fairly thorough, with variance established on a high number of seeds (high in the deep learning literature). They demonstrate that the proposed method makes significant improvements over baselines. The baselines are somewhat limited because, as the authors state, *there do not exist any standard state-of-the-art methods for few-shot graph classification*. However, I do not think the authors should be penalized for trying something new. On the other hand, given the novelty of the task, it would be nice to see an investigation/discussion of how few-shot graph learning differs from few-shot image learning (where there has been much more work). I found the ablation and sensitivity studies illuminating, and I was pleased to see that the authors do support their claim that the super-graphs improve class separation over the feature extractor embeddings -- the GIN-k-NN baseline results provide evidence of this. One place where I lack confidence in the results: I am not very familiar with the datasets used (TRIANGLES and Letter-High) nor how standard they are in the graph-learning literature. The authors do not even describe in the paper what the graph classes in these datasets actually are or represent, which would be good to know. Overall, I think the paper is worth seeing and discussing at the conference, although it could be improved in various ways. Minor errors: - there appears to be bracket imbalance in eq.6 - *Lloyd*s* is misspelled a few times Reviewer*s note: I have significant experience in few-shot learning but not in graph neural networks.