This article was initially posted on the Mila website.
Charts are general and flexible data structures that encode relationships between different objects and are ubiquitous in the real world. Examples of real-world graphics include social networks, citation charts, protein-protein interaction graphs, and knowledge graphics, covering a variety of applications and domains. Recently, there is a growing interest in learning efficient representations of graphics because of their effectiveness in a variety of tasks. However, the problem is difficult to solve because real-world graphics can be very large and heterogeneous.
At Mila, Professor Jian Tang's group has developed a general and powerful graph integration system called GraphVite. Compared to existing machine learning systems such as Tensorflow and Pytorch, which are primarily designed for data with regular structures (eg, images, speech, and natural language), GraphVite is specifically designed for large-scale graphics. It works on hybrid CPU-GPU architectures and adapts linearly to the number of GPUs. The system is one or two times faster than existing implementations. For example, for a graph of a million nodes, it only takes about a minute to learn the representations of nodes with 4 GPUs. In addition to its superior efficiency, GraphVite also supports a variety of applications including:
- Node Embedding which aims at the integration of large-scale graphical learning nodes. GraphVite now includes methods for integrating advanced nodes such as DeepWalk, LINE, and node2vec. We plan to add other methods in the future.
- Incorporation of knowledge graphs . The goal is to learn the representations of entities and relationships. Today, we support a variety of representative methods such as TransE, DisMult, CompEx, SimplE and RotatE. We will also add other approaches in the future.
- Visualization of high-dimensional graphics and data . GraphVite also supports learning 2D or 3D coordinates of nodes to visualize graphs that can be generalized to visualize any high-dimensional data. This can be particularly useful for visualizing the representations learned by deep neural networks. GraphVite now implements one of the most modern visualization algorithms: LargeVis. In the future, we plan to include other visualization algorithms such as t-SNE and UMAP.
Figure: Three applications that GraphVite supports.
In addition to the amazing speed, GraphVite also provides comprehensive and user-friendly applications for research and development. With modules such as datasets and assessment tasks, the system is a stand-alone environment for integrating models and experiments. There are more than 30 well-known existing model reference references on standard data sets. It is very easy to replicate these models, deploy them on large sets of real data and develop new models for learning graphical representation. We want to accelerate the research and development of graphic representation learning by GraphVite.
The development of GraphVite is led by PhD student Zhaocheng Zhu and also contributed by Shizhen Xu and Meng Qu. The GraphVite deposit is available at https://github.com/DeepGraphLearning/graphvite , and the original article is available at https://arxiv.org/abs/1903.00757 . For more information on GraphVite, visit https://graphvite.io/ .
Jian will be speaking at the Deep Learning Summit in Montreal this October 24 - 25. Register now to guarantee your place at Early Bird Discounted prices.