Based on article https://arxiv.org/pdf/1909.11409.pdf
analysis.py
- script used to create plots (distribution per generation) from log fileblocks.py
- module contain block class with the help of which the network is built (contain parameters responsible for all possible structures of block)evaluation.py
- module responsible for evaluation of trained modelsevolution.py
- main script runs the evolutionary training algorithm distributed between several GPUsloss_metric.py
- module contain MSE loss and PSNR metricsr_data.py
- module responsible for creating Super Resolution datasets from given folderstrain.py
- training script which forming learning per each GPU, runs bysubprocess
module fromevolution
scriptUNet.py
- module which create UNet model from given list of blocks
foo@bar:~/NAS_UNetSR$ python evolution.py --gpus 4
- Do weights sharing between models training
- Try different block structure (Leaky ReLU, ...)