| #!/bin/bash |
|
|
| |
|
|
| |
| DATA=/mnt/sdb/data/datasets |
| TRAINER=PromptSRC |
|
|
| DATASET=$1 |
|
|
| |
| CFG=vit_b16_c2_ep20_batch4_4+4ctx |
| SHOTS=16 |
| EP=20 |
|
|
| for SEED in 1 2 3 |
| do |
| TRAIL_NAME=${CFG} |
| COMMON_DIR=${DATASET}/shots_${SHOTS}/seed${SEED} |
| MODEL_DIR=output/base2new/${TRAINER}/${TRAIL_NAME}/train_base/${COMMON_DIR} |
| DIR=output/base2new/${TRAINER}/${TRAIL_NAME}/test_new/${COMMON_DIR} |
|
|
| if [ -d "$MODEL_DIR" ]; then |
| echo "Oops! The results exist at ${DIR} (so skip this job)" |
| else |
| echo "Run this job and save the output to ${DIR}" |
| python train.py \ |
| --root ${DATA} \ |
| --seed ${SEED} \ |
| --trainer ${TRAINER} \ |
| --dataset-config-file configs/datasets/${DATASET}.yaml \ |
| --config-file configs/trainers/PromptSRC/${CFG}.yaml \ |
| --output-dir ${MODEL_DIR} \ |
| DATASET.NUM_SHOTS ${SHOTS} \ |
| DATASET.SUBSAMPLE_CLASSES base |
| |
| |
| fi |
| if [ -d "$DIR" ]; then |
| echo "Oops! The results exist at ${DIR} (so skip this job)" |
| else |
| echo "Evaluating model" |
| python train.py \ |
| --root ${DATA} \ |
| --seed ${SEED} \ |
| --trainer ${TRAINER} \ |
| --dataset-config-file configs/datasets/${DATASET}.yaml \ |
| --config-file configs/trainers/PromptSRC/${CFG}.yaml \ |
| --output-dir ${DIR} \ |
| --model-dir ${MODEL_DIR} \ |
| --load-epoch ${EP} \ |
| --eval-only \ |
| DATASET.NUM_SHOTS ${SHOTS} \ |
| DATASET.SUBSAMPLE_CLASSES new |
| |
| |
| fi |
| done |
|
|