-
Notifications
You must be signed in to change notification settings - Fork 111
/
run_qagnn__obqa.sh
52 lines (42 loc) · 1.56 KB
/
run_qagnn__obqa.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
41
42
43
44
45
46
47
48
49
50
51
52
#!/bin/bash
export CUDA_VISIBLE_DEVICES=0,1
dt=`date '+%Y%m%d_%H%M%S'`
dataset="obqa"
model='roberta-large'
shift
shift
args=$@
elr="1e-5"
dlr="1e-3"
bs=128
mbs=1
n_epochs=100
num_relation=38 #(17 +2) * 2: originally 17, add 2 relation types (QA context -> Q node; QA context -> A node), and double because we add reverse edges
k=5 #num of gnn layers
gnndim=200
echo "***** hyperparameters *****"
echo "dataset: $dataset"
echo "enc_name: $model"
echo "batch_size: $bs"
echo "learning_rate: elr $elr dlr $dlr"
echo "gnn: dim $gnndim layer $k"
echo "******************************"
save_dir_pref='saved_models'
mkdir -p $save_dir_pref
mkdir -p logs
###### Training ######
for seed in 0; do
python3 -u qagnn.py --dataset $dataset \
--encoder $model -k $k --gnn_dim $gnndim -elr $elr -dlr $dlr -bs $bs -mbs $mbs --fp16 true --seed $seed \
--num_relation $num_relation \
--n_epochs $n_epochs --max_epochs_before_stop 50 \
--train_adj data/${dataset}/graph/train.graph.adj.pk \
--dev_adj data/${dataset}/graph/dev.graph.adj.pk \
--test_adj data/${dataset}/graph/test.graph.adj.pk \
--train_statements data/${dataset}/statement/train.statement.jsonl \
--dev_statements data/${dataset}/statement/dev.statement.jsonl \
--test_statements data/${dataset}/statement/test.statement.jsonl \
--save_model \
--save_dir ${save_dir_pref}/${dataset}/enc-${model}__k${k}__gnndim${gnndim}__bs${bs}__seed${seed}__${dt} $args \
> logs/train_${dataset}__enc-${model}__k${k}__gnndim${gnndim}__bs${bs}__seed${seed}__${dt}.log.txt
done