This repository is the official implementation of Generic Neural Architecture Search via Regression (NeurIPS'21 spotlight | Openreview | Arxiv version).
pip install -r requirement.txt
Download the data for NDS dataset
mv <path_to_data> <path_to_GenNAS>/data/
Download the data for NASBench-NLP
git clone https://github.com/fmsnew/nas-bench-nlp-release.git
mv ./nas-bench-nlp-release/train_logs_single_run <path_to_GenNAS>/data/
mv ./nas-bench-nlp-release/train_logs_wikitext-2 <path_to_GenNAS>/data/
Download the data for ImageNet16
mv <path_to_data>/* <path_to_GenNAS>/data/ImageNet16
To search for a proxy task, run the following examples:
python do_search.py --search_space=nasbench101 --json_loc=data/nasbench1_search_20samples.json --json_description=nasbench1_search_20samples #NASBench-101
python do_search.py --search_space=nlp #NASBench-NLP
python do_search.py --search_space=DARTS #NDS
To do the sampling experiments, run the following examples:
python do_sample.py --search_space=nasbench101 --config=CONF_NB101 --json_loc=data/nasbench1_500_fb.json --json_description=nasbench1_500_fb #NASBench-101
python do_sample.py --search_space=nasbench201 --config=CONF_NB101 --json_loc=data/nasbench2_1000_0.json --json_description=nasbench2_1000_0 --dataset=cifar10 #NASBench-201
python do_sample.py --search_space=nlp --config=CONF_NLP #NASBench-NLP
python do_sample.py --search_space=DARTS --config=CONF_DARTS #NDS
To do the exploring experiments, run the following examples:
python do_explore.py --search_space=nasbench101 --config=CONF_NB101 #NASBench-101
python do_explore.py --search_space=nasbench201 --config=CONF_NB101 #NASBench-201
python do_explore.py --search_space=nlp --config=CONF_NLP #NASBench-NLP
python do_explore.py --search_space=DARTS --config=CONF_DARTS #NDS