A Review of Graph Neural Networks (GNN)

Abhishek k
Analytics Vidhya
Published in
4 min readMay 16, 2021

For the past few years, Graph Neural Networks have been a popular field of research across the scientific and academic community. Their potential of analysis through machine learning techniques attracts rising attention, due to the great excessive power of graph utilization. Moreover, GNN are deep learning methods that operate on a graph domain and their convincing analysis performance supports fields such as social science, knowledge graphs and protein-protein interaction networks. Overall, they are considered neural models that capture the dependence of graphs via message passing between a set of objects, known as nodes and their relationships, known as edges.

Illustration of a Graph Neural Network

Types of GNNs

Although a basic approach of a Graph Neural Network is an effective method of analysis, it may provide limitation to the desired field of research. A solution to such issue is the use of different GNN types, according to the type of graph or data required. Such GNN types are:

⦁ Graph Convolutional Network

⦁ Graph Attention Network

⦁ Gated Graph Neural Network

An analysis of the types mentioned is presented below.

Graph Convolutional Networks (GCNs)

They are considered an effective replacement of another GNN type, the Convolutional Neural Networks. In terms of application, they stack layers of learned first-order spectral filters followed by a nonlinear activation function to learn graph representations. Another fact that should be mentioned is the structure of such networks. They are consisted of multi-layer neural networks, built in such way that it might be misinterpreted as replacement of a basic, or regular, linear graph network.

Illustration of Graph Convolutional Neural Network

A utilization of such networks can be found through application on image classification. CNNs detect images and pictures as grid constructions and structures. The software that being used searches for similarities between the pixels of the image and the potential nodes of the graph that needs to be constructed. As a result, the image classification problem is turned into a graph classification one.

Graph Attention Networks (GANs)

They are used for the inspection of variable sized inputs, while focusing on the most relevant part of the input, for the completion of the task that defines the graph. They are also used for the computation of the representation of a single sequence, that can lead to the construction of an efficient model on machine translation tasks. An attribute that signifies GANs is their capability of being applied on inductive learning problems, including tasks where the model has to generalize to completely unseen graphs.

Illustration of Graph Attention Network

An example of GAN application that has been researched is a graph-based generative adversarial network that generates realistic, multimodal trajectory predictions by better modelling the social interactions of pedestrians in a scene. The solution that was developed is based on a GAN that learns reliable feature representations that encode the social interactions between humans in the scene, and a recurrent encoder-decoder architecture that is trained adversarial to predict, based on the features, the humans’ paths.

Gated Graph Neural Network (GGNNs)

As described by the University of Toronto, GGNNs are considered unrolled recurrences for a fixed number of steps, while using backpropagation through time with modern optimization methods. Such models have limited restrictions, while there can be specific types of data as input for the problem solution. As a result, the gating of the graph network makes the whole propagation a more complete systematic structure.

Illustration of Gated Graph Neural Network

Visual Reasoning is a field of application being utilized by GGNNs. An example is Visual Question Answering problems, by respectively constructing image scene graph and question syntactic graph. The role of GGNN in such problems is to program the embeddings and attention mechanisms, in order to predict the final answer.


On the current article I presented you the general description behind the idea of a Graph Neural Network. However, different types of problems or tasks require different types of models and graph systems. Three different graph models were presented with a short and basic application example for each one, for better understanding on the topic.