Over the past few years the artificial intelligence community has shown an increasing interest in deep learning research on graph-structured data. Many neural network models on graphs — or graph neural networks (GNNs) — have been proposed, and many have achieved convincing results on both conventional graph tasks such as social networks and chemical molecules, and on general AI tasks like image classification. However, there has been no established framework for designing such models.

The MXNet team and the Amazon Web Services AI lab recently teamed up with New York University / NYU Shanghai to announce Deep Graph Library (DGL), a Python package that provides easy implementations of GNNs research. Some fast takeaways on DGL:

DGL integrates with existing major deep learning libraries, including PyTorch and MXNet (TensorFlow and others in the future) so researchers can easily switch between tensor-based frameworks and graph data. DGL provides message passing, a classic technique used in graph-structured programming. In DGL, message passing involves “low-level operations such as sending along selected edges and receiving on specific nodes” and “high-level control such as graph-wide feature updates.” DGL supports automatic batching and sparse matrix multiplication to achieve parallel graph computation transparently and efficiently, and scales to graphs with tens of millions of vertices.

DGL has thus far prototyped 10 models, including semi-supervised learning on graphs, generative models on graphs, tree-based models like TreeLSTM, etc. The team also used the graph computation method to recode models like Capsule and Universal Transformer.

A summary of model accuracy and training speed with the Pytorch backend (on Amazon EC2 p3.2x instance (w/ V100 GPU)), as compared with the best open-source implementations.

The creation of DGL was also supported by researchers at Fudan University and CQUPT. DGL is a free software and is available on all Linux distributions later than Ubuntu 16.04, macOS X, and Windows 7 or later. DGL also requires the Python version to be 3.5 or later.

Click the link to install DGL.

Below are links for the DGL website and Github page:

https://docs.dgl.ai/index.html

https://github.com/jermainewang/dgl