- First, a suitable model for a given dataset is searched using DARTS architecture search.
- The included code uses the 'CIFAR10' dataset.
- Then, the model is trained fully.
Executing this code may take a few hours, depending on your machine configuration.
$ python3 /app/Soteria/Architecture_Search/train_search.py
This will save a architecture pickle file nas_arch.pkl under directory /app/Soteria/Architecture_Search/trained_model.
If a pre-searched DARTS architecture exists: Place the architecture pickle file in this directory.
A pre-searched architecture pickle file can be found here. Place the trained architecture file directly in the directory /app/Soteria/Architecture_Search/trained_model.
The hyperparameters used to obtain this architecture are listed in file hyperparameters.csv.
$ python3 /app/Soteria/Architecture_Search/train.py
This will train the model fully.
The pre-trained model pickle for the architecture above can be found here. Place the trained model file directly in the directory /app/Soteria/Architecture_Search/trained_model.