BenchENAS
BenchENAS is a platform to help researchers conduct fair comparisons upon Evolutionary algorithm based Neural Architecture Search (ENAS) algorithms.
Install / Use
/learn @benchenas/BenchENASREADME
BenchENAS is a benchmarking platform to conduct fair comparisons upon Evolutionary algorithm based Neural Architecture Search (ENAS) algorithms.
<p align="justify">Nine representative state-of-the-art ENAS algorithms, popular data processing techniques for 3 widely used benchmark datasets and customized dataset, as well as configurable trainer settings such as learning rate policy, optimizers, batch size, and training epochs, have been implemented intothe proposed BenchENAS platform. To this end, the related researchers can illustrate the innovativeness of their proposed algorithms by making fair comparisons with the state-of-the-art ENAS algorithms. </p>Furthermore, An efficient parallel component and a cache component are designed to accelerate the fitness evaluation phase in BenchENAS. The parallel component is based on the parallel training mechanism of existing deep learning libraries and can be used to speed up the running of the corresponding ENAS algorithm. The cache component is used to record the fitness values for each architecture and to reuse the fitness values in the cache when an individual of the same architecture appears.
Installation
We provide two way to install BenchENAS.
From python package
Please click Here.
From linux source code
Please click Here.
Algorithms included
-
AE_CNN: Completely automated CNN architecture design based on blocks
-
CGP_CNN: A Genetic Programming Approach to Designing Convolutional Neural Network Architecture
-
CNN_GA: Automatically Designing CNN Architectures Using the Genetic Algorithm for Image Classification
-
Evo_CNN: Evolving deep convolutional neural networks for image classification
-
Genetic_CNN: Genetic CNN
-
Hierarchical_Representations: Hierarchical Representations for Efficient Architecture Search
-
Large_Scale: Large-Scale Evolution of Image Classifiers
-
NSGA-Net: NSGA-Net: Neural Architecture Search using Multi-Objective Genetic Algorithm
-
Regularized_Evo: Regularized Evolution for Image Classfier Architecture Search
Contributing
This is an open-source project welcoming your contributions. You can contribute in three ways:
- Star and fork BenchENAS to follow its latest developments, share it with your networks, and ask questions about it.
- Use BenchENAS in your project and let us know any bugs (& fixes) and feature requests/suggestions via creating an issue.
- Contribute via branch, fork, and pull for minor fixes and new features, functions, or algorithms to become one of the contributors.
Citing
View the published paper. If you use or reference BenchENAS, please cite:
@ARTICLE{9697075,
author={Xie, Xiangning and Liu, Yuqiao and Sun, Yanan and Yen, Gary G. and Xue, Bing and Zhang, Mengjie},
journal={IEEE Transactions on Evolutionary Computation},
title={BenchENAS: A Benchmarking Platform for Evolutionary Neural Architecture Search},
year={2022},
volume={},
number={},
pages={1-1},
doi={10.1109/TEVC.2022.3147526}}
