• Stars
    star
    840
  • Rank 54,265 (Top 2 %)
  • Language
    Python
  • License
    Other
  • Created over 4 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

AutoML tools chain

Vega

English | δΈ­ζ–‡


Vega ver1.8.5 released

  • Bug Fixed:

    • Fixed a bug when the SPNAS algorithm cluster training fails.
    • Fixed bugs such as model copy failure in safe mode.

Introduction

Vega is an AutoML algorithm tool chain developed by Noah's Ark Laboratory, the main features are as follows:

  1. Full pipeline capabilities: The AutoML capabilities cover key functions such as Hyperparameter Optimization, Data Augmentation, Network Architecture Search (NAS), Model Compression, and Fully Train. These functions are highly decoupled and can be configured as required, construct a complete pipeline.
  2. Industry-leading AutoML algorithms: Provides Noah's Ark Laboratory's self-developed industry-leading algorithm (Benchmark) and Model Zoo to download the state-of-the-art (SOTA) models.
  3. Fine-grained network search space: The network search space can be freely defined, and rich network architecture parameters are provided for use in the search space. The network architecture parameters and model training hyperparameters can be searched at the same time, and the search space can be applied to Pytorch, TensorFlow and MindSpore.
  4. High-concurrency neural network training capability: Provides high-performance trainers to accelerate model training and evaluation.
  5. Multi-Backend: PyTorch (GPU and Ascend 910), TensorFlow (GPU and Ascend 910), MindSpore (Ascend 910).
  6. Ascend platform: Search and training on the Ascend 910 and model evaluation on the Ascend 310.

Algorithm List

Category Algorithm Description reference
NAS CARS: Continuous Evolution for Efficient Neural Architecture Search Structure Search Method of Multi-objective Efficient Neural Network Based on Continuous Evolution ref
NAS ModularNAS: Towards Modularized and Reusable Neural Architecture Search A code library for various neural architecture search methods including weight sharing and network morphism ref
NAS MF-ASC Multi-Fidelity neural Architecture Search with Co-kriging ref
NAS NAGO: Neural Architecture Generator Optimization An Hierarchical Graph-based Neural Architecture Search Space ref
NAS SR-EA An Automatic Network Architecture Search Method for Super Resolution ref
NAS ESR-EA: Efficient Residual Dense Block Search for Image Super-resolution Multi-objective image super-resolution based on network architecture search ref
NAS Adelaide-EA: SEGMENTATION-Adelaide-EA-NAS Network Architecture Search Algorithm for Image Segmentation ref
NAS SP-NAS: Serial-to-Parallel Backbone Search for Object Detection Serial-to-Parallel Backbone Search for Object Detection Efficient Search Algorithm for Object Detection and Semantic Segmentation in Trunk Network Architecture ref
NAS SM-NAS: Structural-to-Modular NAS Two-stage object detection architecture search algorithm Coming soon
NAS Auto-Lane: CurveLane-NAS An End-to-End Framework Search Algorithm for Lane Lines ref
NAS AutoFIS An automatic feature selection algorithm for recommender system scenes ref
NAS AutoGroup An automatically learn feature interaction for recommender system scenes ref
NAS MF-ASC Multi-Fidelity neural Architecture Search with Co-kriging ref
Model Compression Quant-EA: Quantization based on Evolutionary Algorithm Automatic mixed bit quantization algorithm, using evolutionary strategy to quantize each layer of the CNN network ref
Model Compression Prune-EA Automatic channel pruning algorithm using evolutionary strategies ref
HPO ASHA: Asynchronous Successive Halving Algorithm Dynamic continuous halving algorithm ref
HPO BOHB: Hyperband with Bayesian Optimization Hyperband with Bayesian Optimization ref
HPO BOSS: Bayesian Optimization via Sub-Sampling A universal hyperparameter optimization algorithm based on Bayesian optimization framework for resource-constraint hyper-parameters search ref
Data Augmentation PBA: Population Based Augmentation: Efficient Learning of Augmentation Policy Schedules Data augmentation based on PBT optimization ref
Data Augmentation CycleSR: Unsupervised Image Super-Resolution with an Indirect Supervised Path Unsupervised style migration algorithm for low-level vision problem. ref
Fully Train Beyond Dropout: Feature Map Distortion to Regularize Deep Neural Networks Neural network training (regularization) based on disturbance of feature map ref
Fully Train Circumventing Outliers of AutoAugment with Knowledge Distillation Joint knowledge distillation and data augmentation for high performance classication model training, achieved 85.8% Top-1 accuracy on ImageNet 1k Coming soon

Installation

Run the following commands to install Vega:

pip3 install --user --upgrade noah-vega

Usage

Run the vega command to run the Vega application. For example, run the following command to run the CARS algorithm:

vega ./examples/nas/cars/cars.yml

The cars.yml file contains definitions such as pipeline, search algorithm, search space, and training parameters. Vega provides more than 40 examples for reference: Examples, Example Guide, and Configuration Guide.

The security mode is applicable to communication with high security requirements. Before running this command, run the security configuration.

vega ./examples/nas/cars/cars.yml -s

Reference

Reader Refrence
User Install Guide, Deployment Guide, Configuration Guide, Security Configuration, Examples, Evaluate Service
Developer Development Reference, Quick Start Guide, Dataset Guide, Algorithm Development Guide

FAQ

For common problems and exception handling, please refer to FAQ.

Citation

@misc{wang2020vega,
      title={VEGA: Towards an End-to-End Configurable AutoML Pipeline},
      author={Bochao Wang and Hang Xu and Jiajin Zhang and Chen Chen and Xiaozhi Fang and Ning Kang and Lanqing Hong and Wei Zhang and Yong Li and Zhicheng Liu and Zhenguo Li and Wenzhi Liu and Tong Zhang},
      year={2020},
      eprint={2011.01507},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

Cooperation and Contribution

Welcome to use Vega. If you have any questions or suggestions, need help, fix bugs, contribute new algorithms, or improve the documentation, submit an issue in the community. We will reply to and communicate with you in a timely manner.

More Repositories

1

Efficient-AI-Backbones

Efficient AI Backbones including GhostNet, TNT and MLP, developed by Huawei Noah's Ark Lab.
Python
4,021
star
2

HEBO

Bayesian optimisation & Reinforcement Learning library developped by Huawei Noah's Ark Lab
Jupyter Notebook
3,266
star
3

Pretrained-Language-Model

Pretrained language model and its related optimization techniques developed by Huawei Noah's Ark Lab.
Python
2,961
star
4

Efficient-Computing

Efficient computing methods developed by Huawei Noah's Ark Lab
Jupyter Notebook
1,116
star
5

AdderNet

Code for paper " AdderNet: Do We Really Need Multiplications in Deep Learning?"
Python
952
star
6

trustworthyAI

Trustworthy AI related projects
Python
949
star
7

SMARTS

Scalable Multi-Agent RL Training School for Autonomous Driving
Python
922
star
8

bolt

Bolt is a deep learning library with high performance and heterogeneous flexibility.
C++
896
star
9

noah-research

Noah Research
Python
867
star
10

VanillaNet

Python
810
star
11

Speech-Backbones

This is the main repository of open-sourced speech technology by Huawei Noah's Ark Lab.
Jupyter Notebook
547
star
12

streamDM

Stream Data Mining Library for Spark Streaming
Scala
492
star
13

Pretrained-IPT

Python
406
star
14

xingtian

xingtian is a componentized library for the development and verification of reinforcement learning algorithms
Python
305
star
15

benchmark

HTML
274
star
16

Disout

Code for AAAI 2020 paper, Beyond Dropout: Feature Map Distortion to Regularize Deep Neural Networks (Disout).
Python
219
star
17

BGCN

A Tensorflow implementation of "Bayesian Graph Convolutional Neural Networks" (AAAI 2019).
Python
152
star
18

BHT-ARIMA

Code for paper: Block Hankel Tensor ARIMA for Multiple Short Time Series Forecasting (AAAI-20)
Python
97
star
19

multi_hyp_cc

[CVPR2020] A Multi-Hypothesis Approach to Color Constancy
Python
82
star
20

Efficient-NLP

Python
79
star
21

streamDM-Cpp

stream Machine Learning in C++
C++
68
star
22

Federated-Learning

Python
15
star