The Graph Neural Network (GNN) is a connectionist model particularly suited for problems whose domain can be represented by a set of patterns and relationships between them.
In those problems, a prediction about a given pattern can be carried out exploiting all the related information, which includes the pattern features, the pattern relationships and, in general, the whole graph that represents the domain. GNN peculiarity consists in its capability of computing the output prediction processing directly the input domain graph, without any preprocessing into a vectorial representation.
GNNs have been proved to be a universal approximator for a class of functions on graphs and have been applied to several tasks, including spam detection, object localization in images, molecule classification.
The Tensorflow porting was written by Alberto Rossi and Matteo Tiezzi (me, :), PhD Students at the SAILab, in January 2018, under the supervision of Franco Scarselli, the first author of the seminal GNN paper.
You can find a description of the model, installation/usage tutorials and some examples in the Gnn site. We provide a github repo containing our implementation and a pip package to easily install our software.