This is the official implementation of β-DARTS: Beta-Decay Regularization for Differentiable Architecture Search (CVPR22 oral).
This code is based on the implementation of DARTS, NAS-Bench-201, NAS-Bench-1Shot1 and SmoothDARTS.
Data Preparation: Please first download the 201 benchmark file and prepare the api follow this repository.
Searching and Evaluation: python ./nasbench201/train_search.py
Note that we only use the training set when searching and retraining as DARTS. Please refer to line 135-139 of ./nasbench201/train_search.py to see the splitted training data.
Please refer to ./optimizers/darts/architect.py to find our proposed loss as follows:
Line 55: def mlc_loss(self, arch_param):
Please be noted that only “one line of code” (i.e. mlc loss)is added to make differentiable NAS methods much more Robustness and Generalization !!!