-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinference.sh
executable file
·40 lines (37 loc) · 1.19 KB
/
inference.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/bin/bash
# === Set parameters ===
dataset='svhn' #cifar10 | cifar100
attack_methods=('Clean' 'FGSM' 'MIM' 'BIM' 'PGD') # 'Clean' 'FGSM' 'BIM' 'PGD'
epsilon=(0.03)
models=('shrinkage') # ce | radial | shrinkage
backbone='110'
data_path='/repo/data'
tst_batch_size=1024
device_ids=(0 1 2 3)
for e in ${epsilon[@]}
do
for model in ${models[@]}
do
for attack_method in ${attack_methods[@]}
do
echo ""
echo "**START INFERENCE**"
echo "-------------------------------------------------"
if [ "$attack_method" != "Clean" ]; then
echo "Performance on '$attack_method' attack with '$e' epsilon"
else
echo "Performance on 'clean' dataset:"
fi
echo "Dataset: $dataset"
echo "Test model: $model (backbone: $backbone)"
echo "-------------------------------------------------"
echo ""
python inference.py --attack-name $attack_method \
--test-model $model --dataset $dataset --eps $e \
--data-root-path $data_path \
--device-ids ${device_ids[@]} \
--model $backbone \
--test-batch-size $tst_batch_size
done
done
done