Graph neural networks (GNN) are a new subtype of artificial neural networks that are based on graphs. In order to understand GNNs we first need to know what is meant by ‘graph’ in this context. In IT, the term stands for a certain type of data. A graph consists of several points (nodes or vertices) that are connected with one another (via edges), forming pairs. To give a simple example: Person A and Person B can be represented as points on a graph. Their relationship to each other is then the connection. Were the connections to disappear, we’d be left with a mere collection of people or of data.
One popular subtype of a graph is a tree. Here, the nodes are connected in such a way that there is always just one path (even across several nodes) between Point A and Point B. The edges can either have a direction or no direction. In a graph, the connections are just as important as the data itself. Every edge and every node can be labelled with attributes.
A graph is, therefore, perfectly suited to represent real circumstances. And that is the challenge for deep learning: to make natural conditions understandable to software. A graph neural network makes that possible: In a GNN, nodes collect information from their neighbours as the nodes regularly exchange messages. The graph neural network learns in this way. Information is passed on and recorded in the properties of the respective node.