Getting Started with the Deep Graph Library (DGL)

2020/2/27

A reminder of what I learned about the Deep Graph Library (DGL) at pytorch.Basically, the following documentation will be translated, summarized, and organized.We may look back and make corrections as we learn new things.

https://docs.dgl.ai

Overview of DGL

What is Deep Graph Library?

Deep Graph Library is a python library for easily implementing graph neural network models on existing deep learning frameworks such as PyTorch and MXNet.

Functions of DGL

DGL has the following functions.

  • Versatile control from low-level operations such as edge and node settings to high-level operations such as updating the functionality of the entire graph.
  • Optimization of calculation speed by automatic batch processing and sparse matrix multiplication.
  • Seamless integration with existing deep learning frameworks.
  • A simple and easy-to-use interface for manipulating node / edge / graph structures.
  • Excellent scalability for giant graphs (graphs with tens of millions of vertices).

Supported models

TBA

How to install DGL

The supported OS is as follows.
・ Ubuntu 16.04
・ MacOS X
・ Windows 10

It is supported as a backend for the following libraries.
・ Tensorflow
・ PyTorch
・ MXNet
・ Gluon

DGL requires Python version 3.5 or later. Not tested prior to 3.4.Also, since DGL is separated into CPU build and CUDA build, when using GPU, change the installation command according to the CUDA version.

Click here for how to install with conda
Click here for how to install with pip

Posted tutorial

Ten models have been prototyped in different domains.

  • Semi-supervised learning of graphs (potentially billions of nodes / edges)
  • Graph generation model
  • Tree-based models that are difficult to parallelize, such as TreeLSTM

・ DGL tutorial for GTC 2019
NVIDIA GPU Technology Conference in Washington, USA (GTC The tutorial used in the lecture at DC).