#!/bin/bash # bash ./scripts/tas-infer-train.sh cifar10 C100-ResNet32 -1 set -e echo script name: $0 echo $# arguments if [ "$#" -ne 3 ] ;then echo "Input illegal number of parameters " $# echo "Need 3 parameters for the dataset and the-config-name and the-random-seed" exit 1 fi if [ "$TORCH_HOME" = "" ]; then echo "Must set TORCH_HOME envoriment variable for data dir saving" exit 1 else echo "TORCH_HOME : $TORCH_HOME" fi dataset=$1 model=$2 rseed=$3 batch=256 save_dir=./output/search-shape/TAS-INFER-${dataset}-${model} if [ ${dataset} == 'cifar10' ] || [ ${dataset} == 'cifar100' ]; then xpath=$TORCH_HOME/cifar.python opt_config=./configs/opts/CIFAR-E300-W5-L1-COS.config workers=4 elif [ ${dataset} == 'imagenet-1k' ]; then xpath=$TORCH_HOME/ILSVRC2012 #opt_config=./configs/opts/ImageNet-E120-Cos-Smooth.config opt_config=./configs/opts/RImageNet-E120-Cos-Soft.config workers=28 else echo 'Unknown dataset: '${dataset} exit 1 fi python --version # normal training xsave_dir=${save_dir}-NMT OMP_NUM_THREADS=4 python ./exps/basic/basic-main.py --dataset ${dataset} \ --data_path ${xpath} \ --model_config ./configs/NeurIPS-2019/${model}.config \ --optim_config ${opt_config} \ --procedure basic \ --save_dir ${xsave_dir} \ --cutout_length -1 \ --batch_size ${batch} --rand_seed ${rseed} --workers ${workers} \ --eval_frequency 1 --print_freq 100 --print_freq_eval 200 # KD training xsave_dir=${save_dir}-KDT OMP_NUM_THREADS=4 python ./exps/basic/KD-main.py --dataset ${dataset} \ --data_path ${xpath} \ --model_config ./configs/NeurIPS-2019/${model}.config \ --optim_config ${opt_config} \ --KD_checkpoint ./.latent-data/basemodels/${dataset}/${model}.pth \ --procedure Simple-KD \ --save_dir ${xsave_dir} \ --KD_alpha 0.9 --KD_temperature 4 \ --cutout_length -1 \ --batch_size ${batch} --rand_seed ${rseed} --workers ${workers} \ --eval_frequency 1 --print_freq 100 --print_freq_eval 200