Skip to main content

AutoML tools for graph-structure dataset

Project description

Auto Graph Learning

Chinese Introduction

An autoML framework & toolkit for machine learning on graphs.

Actively under development by @THUMNLab

Feel free to open issues or contact us at autogl@tsinghua.edu.cn if you have any comments or suggestions!

News!

Introduction

AutoGL is developed for researchers and developers to conduct autoML on graph datasets and tasks easily and quickly. See our documentation for detailed information!

The workflow below shows the overall framework of AutoGL.

AutoGL uses datasets to maintain datasets for graph-based machine learning, which is based on Dataset in PyTorch Geometric or Deep Graph Library with some functions added to support the auto solver framework.

Different graph-based machine learning tasks are handled by different AutoGL solvers, which make use of five main modules to automatically solve given tasks, namely auto feature engineer, neural architecture search, auto model, hyperparameter optimization, and auto ensemble.

Currently, the following algorithms are supported in AutoGL:

Feature Engineer Model NAS HPO Ensemble
Generators
Graphlets
EigenGNN
more ...

Selectors
SeFilterConstant
gbdt

Graph
netlsd
NxAverageClustering
more ...
Homo Encoders
GCNEncoder
GATEncoder
SAGEEncoder
GINEncoder

Decoders
LogSoftmaxDecoder
DotProductDecoder
SumPoolMLPDecoder
JKSumPoolDecoder
Algorithms
Random
RL
Evolution
GASSO
more ...

Spaces
SinglePath
GraphNas
AutoAttend
more ...

Estimators
Oneshot
Scratch
Grid
Random
Anneal
Bayes
CAMES
MOCAMES
Quasi random
TPE
AutoNE
Voting
Stacking

This toolkit also serves as a framework for users to implement and test their own autoML or graph-based machine learning models.

Installation

Requirements

Please make sure you meet the following requirements before installing AutoGL.

  1. Python >= 3.6.0

  2. PyTorch (>=1.6.0)

    see https://pytorch.org/ for installation.

  3. Graph Library Backend

    You will need either PyTorch Geometric (PyG) or Deep Graph Library (DGL) as the backend. You can select a backend following here if you install both.

    3.1 PyTorch Geometric (>=1.7.0)

    See https://pytorch-geometric.readthedocs.io/en/latest/notes/installation.html/ for installation.

    3.2 Deep Graph Library (>=0.7.0)

    See https://dgl.ai/ for installation.

Installation

Install from pip

Run the following command to install this package through pip.

pip install autogl

Install from source

Run the following command to install this package from the source.

git clone https://github.com/THUMNLab/AutoGL.git
cd AutoGL
python setup.py install

Install for development

If you are a developer of the AutoGL project, please use the following command to create a soft link, then you can modify the local package without install them again.

pip install -e .

Documentation

Please refer to our documentation to see the detailed documentation.

You can also make the documentation locally. First, please install sphinx and sphinx-rtd-theme:

pip install -U Sphinx
pip install sphinx-rtd-theme

Then, make an html documentation by:

cd docs
make clean && make html

The documentation will be automatically generated under docs/_build/html

Cite

Please cite our paper as follows if you find our code useful:

@inproceedings{
guan2021autogl,
title={Auto{GL}: A Library for Automated Graph Learning},
author={Chaoyu Guan and Ziwei Zhang and Haoyang Li and Heng Chang and Zeyang Zhang and Yijian Qin and Jiyan Jiang and Xin Wang and Wenwu Zhu},
booktitle={ICLR 2021 Workshop on Geometrical and Topological Representation Learning},
year={2021},
url={https://openreview.net/forum?id=0yHwpLeInDn}
}

You may also find our survey paper helpful:

@article{zhang2021automated,
  title={Automated Machine Learning on Graphs: A Survey},
  author={Zhang, Ziwei and Wang, Xin and Zhu, Wenwu},
  booktitle = {Proceedings of the Thirtieth International Joint Conference on Artificial Intelligence, {IJCAI-21}},
  year={2021},
  note={Survey track}
}

License

We follow Apache license across the entire codebase from v0.2.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autogl-0.4.0.tar.gz (302.4 kB view details)

Uploaded Source

Built Distribution

autogl-0.4.0-py3-none-any.whl (453.8 kB view details)

Uploaded Python 3

File details

Details for the file autogl-0.4.0.tar.gz.

File metadata

  • Download URL: autogl-0.4.0.tar.gz
  • Upload date:
  • Size: 302.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.15

File hashes

Hashes for autogl-0.4.0.tar.gz
Algorithm Hash digest
SHA256 2eaa555ff111ecc3d08e26faf4a981680c3ac2e6d2c8271e757f6b4a01345213
MD5 db2f97bfd0046a4f351bf8dcfb426fa0
BLAKE2b-256 76f3a223f407482af60ab1be7af2b533e3ac102f8b736705a11a5abcf8cfe802

See more details on using hashes here.

File details

Details for the file autogl-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: autogl-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 453.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.15

File hashes

Hashes for autogl-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 16e1548b9aae3c84f804a9ff423954d067c6150d4eba48e2eaad721089564419
MD5 884f35eaf0b04ce72b7b603b3407c3cf
BLAKE2b-256 38cac4f6fbb36560e7a7d36fb9ae472f758a3b26663030f362587b75dfe7279a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page