forked from Megum1/DFST
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtrain_cn.sh
More file actions
37 lines (26 loc) · 1.13 KB
/
train_cn.sh
File metadata and controls
37 lines (26 loc) · 1.13 KB
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
#!/bin/bash
. ./input_validation.sh
input_validation $@
my_dir="/home/xxu/back_stealthiness"
if [[ -z $my_dir ]]; then
echo "Please set the 'my_dir' variable to the parent directory of the data and record folders"
exit 1
fi
data_dir="/vol/aisy/xxu/data/"
record_dir="$my_dir/record_cn114"
timestamp=$(date +"T%d-%m_%H-%M")
pratio_label=$(echo p$pratio | tr . -)
attack_id="${attack}_${model}_${dataset}_${pratio_label}"
# gpu=$(python get_gpu.py)
# if [[ ! $gpu =~ "RTX 2080 Ti" ]]; then
# echo "Unexpected GPU: ${gpu}"
# exit 1
# fi
# Create json config based on attack settings
mkdir -p $record_dir/$attack_id
python create_config.py --dataset $dataset --network $model --epochs $n_epochs --poison_rate $pratio --save_dir $record_dir/$attack_id
python main.py --attack dfst --save_dir $record_dir/$attack_id --data_dir $data_dir
# DFST saves poisoned version of every non-target train sample, we reduce it to a subset according to our poisoning rate
python make_poisoned_trainset.py --save_dir $record_dir/$attack_id --poison_rate $pratio --dataset $dataset
cd $record_dir
tar -cf "${attack_id}_${timestamp}.tar" $attack_id