Graph Nets is a new DeepMind’s library used for building graph networks in TensorFlow and Sonnet. Last week a paper Relational inductive biases, deep learning, and graph networks was published on arXiv by researchers from DeepMind, Google Brain, MIT and University of Edinburgh. The paper introduces a new machine learning framework called Graph networks which is expected to bring new innovations in artificial general intelligence realm.
What are graph networks?
Graph networks can generalize and extend various types of neural networks to perform calculations on the graph. It can implement relational inductive bias, a technique used for reasoning about inter-object relations.
The graph networks framework is based on graph-to-graph modules. Each graph’s features are represented in three characteristics:
- Edges: Relations between the nodes
- Global attributes: System-level properties
The graph network takes a graph as an input, performs the required operations and calculations from the edge, to the node, and to the global attributes, and then returns a new graph as an output.
The research paper argues that graph networks can support two critical human-like capabilities:
- Relational reasoning: Drawing logical conclusions of how different objects and things relate to one another
- Combinatorial Generalization: Constructing new inferences, behaviors, and predictions from known building blocks
To understand and learn more about graph networks you can refer the official research paper.
Graph Nets library can be installed from pip. To install the library, run the following command:
$ pip install graph_nets
The installation is compatible with Linux/Mac OSX, and Python versions 2.7 and 3.4+
The library includes Jupyter notebook demos which allow you to create, manipulate, and train graph networks to perform operations such as shortest path-finding task, a sorting task, and prediction task.
Each demo uses the same graph network architecture, thus showing the flexibility of the approach. You can try out various demos in your browser using Colaboratory. In other words, you don’t need to install anything locally when running the demos in the browser (or phone) via cloud Colaboratory backend.
You can also run the demos on your local machine by installing the necessary dependencies.
The concept was released with ideas not only based in artificial intelligence research but also from the computer and cognitive sciences. Graph networks are still an early-stage research theory which does not yet offer any convincing experimental results. But it will be very interesting to see how well graph networks live up to the hype as they mature.