Skip to content

THUMNLab/AutoGL-light

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

中文介绍

Lightweight Auto Graph Learning

A lightweight AutoML framework & toolkit for machine learning on graphs.

This is an extended package of AutoGL.

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!

  • We have released the first version 0.1.0!
    • We support Hyper-parameter Optimization (HPO) and Neural Architecture Search (NAS) with flexible pipelines!
    • We also provide showcases for using graph machine learning for bioinformatics.

Introduction

Our AutoGL-light library aims to serve automated graph machine learning and currently includes two main functionalities: graph hyperparameter optimization (HPO) and graph neural network architecture search (NAS). We plan to make this library compatible with various graph machine learning libraries as backends, but currently, we primarily support PyTorch Geometric. Compared to AutoGL, AutoGL-light does not fix the pipeline, i.e., it allows to freely incorporate graph HPO and graph NAS at any step of the workflow. We also expect AutoGL-light to be more user-friendly, especially for new users.

Graph Hyper-parameter Optimization

Graph HPO aims to automatically optimize the hyperparameters of models in graph machine learning. Currently, we support algorithms such as Grid, Random, Anneal, Bayes, CAMES, MOCAMES, Quasi random, TPE, and AutoNE for hyperparameter optimization. For more details, please refer to HPO documentations.

Graph Neural Architecture Search

Graph NAS aims to automatically design and optimize neural network architectures for graph machine learning. It searches for the optimal architecture within a given search space. Currently, we support search algorithms including Random, RL, EA, ENAS, SPOS, GraphNAS, DARTS, GRNA, GASSO, and GRACES. For more details, please refer to NAS documentations.

Applications

To promote and showcase the usage of AutoGL-light, particularly in handlying various downstream graph tasks, we have included examples of applying AutoGL-light to bioinformatics using graph HPO and graph NAS, including ScGNN, MolCLR, and AutoGNNUQ. Please refer to example files.

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.

Installation

Install from pip

Run the following command to install this package through pip.

pip install autogl-light

Install from source

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

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

Install for development

If you are a developer of the AutoGL-light 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 .

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.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published