Motivation on GNNs

Graphs are an essential data type that enables the representation of information that is relational in a properly structured manner. In this context, GNN has recently emerged as an efficient Neural Network (NN) technique with outstanding applications in many different fields where data is fundamentally represented as graphs. Before GNNs, a common approach to address graph-based problems was to use conventional NN (e.g., fully-connected NN) which were fed with plain representations of the graph that attempted to preserve its most meaningful information. Due to the inmense impact of this representation in the performance of the model, we typically require ML experts to do feature engineering or use generic embedding techniques. Even in such scenario, however, we still end up with a model that works as well as the relevance of the features we handcrafted, which can be a cumbersome task in complex scenarios.

In this context, Graph Neural Networks (GNNs) were recently proposed as a novel NN family specifically designed to process, understand, and model graph-structured data autonomously. Similar to the way Convolutional NNs process images, GNNs process input graphs in raw format, without any pre-processing. Thus, during training, GNNs learn how to process graphs according to the problem goals (e.g., predict a particular global metric of the graph). Moreover, GNNs are invariant to node and edge permutations, and offer strong relational inductive bias over graphs . This endows them with powerful capabilities to generalize to other graphs of different sizes and structures not seen during the training phase. As a result, we have witnessed a plethora of applications where GNN has shown unprecedented generalization properties over graphs with respect to previous NN architectures. Below we provide several use-cases of different fields which are solved through the use of Graph Neural Networks:

Networking: Modeling the performance of networks, optimizing the routing, or scheduling jobs in data centers.

  1. List of must-read papers on GNN for communication networks

  2. RouteNet: Leveraging Graph Neural Networks for Network Modeling and Optimization in SDN

  3. Learning and Generating Distributed Routing Protocols Using Graph-Based Deep Learning

Chemistry and biology: Predicting complex molecular properties, drug side effects, protein–protein interactions, or generating personalized medication recommendations and novel compounds with some desired properties.

  1. Neural Message Passing for Quantum Chemistry

  2. Graph Convolutional Policy Network for Goal-Directed Molecular Graph Generation

  3. Modeling polypharmacy side effects with graph convolutional networks

Physics: Modeling interactions between particles in complex systems, or reconstructing particle tracks in high-energy particle accelerators.

  1. Interaction Networks for Learning about Objects, Relations and Physics

  2. Novel deep learning methods for track reconstruction

Mathematics: Solving complex graph-based problems like graph clustering, or combinatorial optimization (e.g., TSP).

  1. Learning to Solve NP-Complete Problems: A Graph Neural Network for Decision TSP

  2. Weisfeiler and Leman Go Neural: Higher-Order Graph Neural Networks

Information science: Creating recommender systems applied to multiple products and fields

  1. Graph Neural Networks for Social Recommendation

  2. Graph Convolutional Neural Networks for Web-Scale Recommender Systems

  3. Inductive Matrix Completion Based on Graph Neural Networks