/graph-learn

An Industrial Graph Neural Network Framework

Primary LanguageC++Apache License 2.0Apache-2.0

GL pypi docs graph-learn CI License

简体中文 | English

Graph-Learn (formerly AliGraph) is a distributed framework designed for the development and application of large-scale graph neural networks. It abstracts a set of programming paradigms suitable for common graph neural network models from the practical problems of large-scale graph training, and has been successfully applied to many scenarios such as search recommendation, network security, knowledge graph, etc. within Alibaba.

Graph-Learn provides both Python and C++ interfaces for graph sampling operations, and provides a gremlin-like GSL (Graph Sampling Language) interface. For upper layer graph learning models, Graph-Learn provides a set of paradigms and processes for model development. It is compatible with TensorFlow and PyTorch, and provides data layer, model layer interfaces and rich model examples.

Documentation

Installation

  1. Install Graph-Learn with pip(linux, python3, glibc 2.24+)
pip install graph-learn
  1. Build from source

  2. Use Docker

Getting Started

GraphSAGE example

cd examples/tf/ego_sage/
python train_unsupervised.py

Distributed training example

Citation

Please cite the following paper in your publications if GL helps your research.

@article{zhu2019aligraph,
  title={AliGraph: a comprehensive graph neural network platform},
  author={Zhu, Rong and Zhao, Kun and Yang, Hongxia and Lin, Wei and Zhou, Chang and Ai, Baole and Li, Yong and Zhou, Jingren},
  journal={Proceedings of the VLDB Endowment},
  volume={12},
  number={12},
  pages={2094--2105},
  year={2019},
  publisher={VLDB Endowment}
}

License

Apache License 2.0.