Implementation of DE for NAS, benchmarked in the paper Differential Evolution for Neural Architecture Search accepted to the 1st NAS Workshop at ICLR 2020.
To access the paper:
To cite the paper or code:
@inproceedings{awad-iclr20,
author = {N. Awad and N. Mallik and F. Hutter},
title = {Differential Evolution for Neural Architecture Search},
booktitle = {Proceedings of the 1st workshop on neural architecture search(@{ICLR}'20)},
year = {2020},
month = apr
}
To contact authors for queries reqarding the paper:
- Neeratyoy Mallik ([email protected])
- Noor Awad ([email protected])
Refer here (the parallel implementation of DE is also available here).
Refer here.
The instructions to setup the benchmarks can be found here.
To run DE on NAS-Bench-101 or NAS-HPO-Bench:
PYTHONPATH=$PWD python3 denas/examples/nas101/run_de_nas101.py
To run DE on NAS-Bench-1shot1:
PYTHONPATH=$PWD python3 denas/examples/nas1shot1/run_de_nas1shot1.py
To run DE on NAS-Bench-201:
PYTHONPATH=$PWD python3 denas/examples/nas201/run_de_nas201.py
Plots can be generated in a similar way, by passing the directory of the stored output files. For example:
PYTHONPATH=$PWD python3 denas/utils/plot_regret.py --path denas/examples/results/cifara
PYTHONPATH=$PWD python3 denas/utils/plot_cdf.py --path denas/examples/results/nas101/cifara
For the above plotting script to work with the output of NAS-Bench-1shot1, the output files need to be additionally preprocessed, for example:
PYTHONPATH=$PWD python3 denas/utils/convert_files.py --path denas/examples/results/nas1shot1/ --ssp 1