Welcome to AutoGL-light’s documentation!
AutoGL-light
Actively under development by @THUMNLab
A lightweight AutoML framework & toolkit for machine learning on graphs.
This is an extended package of PyTorch .
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 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 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 .
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.
Python >= 3.6.0
PyTorch (>=1.6.0)
see PyTorch for installation.
Installation
Install from pip & conda
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://www.gitlink.org.cn/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 .
Modules
In AutoGLlight, the tasks are solved by corresponding modules, which in general do the following things:
Find the best suitable model architectures through neural architecture search. This is done by modules named nas. AutoGL provides several search spaces, algorithms and estimators for finding the best architectures.
Automatically train and tune popular models specified by users. This is done by modules named hyperparameter optimization.
- autogllight.hpo
- autogllight.nas
Autogt
Darts
Enas
GRNA
Gasso
Gauss
Graces
GraphNasRL
RL
RandomSearch
Spos
AutoAttendNodeClassificationSpace
AutogtSpace
BaseSpace
DartsInputChoice
DartsLayerChoice
GassoSpace
GaussSpace
GracesSpace
GraphNasMacroNodeClassificationSpace
GraphNasNodeClassificationSpace
PathSamplingInputChoice
PathSamplingLayerChoice
SinglePathNodeClassificationSpace
apply_fixed_architecture()
replace_input_choice()
replace_layer_choice()
OneShotEstimator
OneShotOGBEstimator
TrainScratchEstimator