-
Notifications
You must be signed in to change notification settings - Fork 80
/
args.py
66 lines (56 loc) · 2.76 KB
/
args.py
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
import argparse
def str2bool(v):
if isinstance(v, bool):
return v
if v.lower() in ("yes", "true", "t", "y", "1"):
return True
elif v.lower() in ("no", "false", "f", "n", "0"):
return False
else:
raise argparse.ArgumentTypeError("Boolean value expected.")
def get_parser():
parser = argparse.ArgumentParser()
# -- Data params ---
parser.add_argument("--dataset", type=str.upper, default="SMD")
parser.add_argument("--group", type=str, default="1-1", help="Required for SMD dataset. <group_index>-<index>")
parser.add_argument("--lookback", type=int, default=100)
parser.add_argument("--normalize", type=str2bool, default=True)
parser.add_argument("--spec_res", type=str2bool, default=False)
# -- Model params ---
# 1D conv layer
parser.add_argument("--kernel_size", type=int, default=7)
# GAT layers
parser.add_argument("--use_gatv2", type=str2bool, default=True)
parser.add_argument("--feat_gat_embed_dim", type=int, default=None)
parser.add_argument("--time_gat_embed_dim", type=int, default=None)
# GRU layer
parser.add_argument("--gru_n_layers", type=int, default=1)
parser.add_argument("--gru_hid_dim", type=int, default=150)
# Forecasting Model
parser.add_argument("--fc_n_layers", type=int, default=3)
parser.add_argument("--fc_hid_dim", type=int, default=150)
# Reconstruction Model
parser.add_argument("--recon_n_layers", type=int, default=1)
parser.add_argument("--recon_hid_dim", type=int, default=150)
# Other
parser.add_argument("--alpha", type=float, default=0.2)
# --- Train params ---
parser.add_argument("--epochs", type=int, default=30)
parser.add_argument("--val_split", type=float, default=0.1)
parser.add_argument("--bs", type=int, default=256)
parser.add_argument("--init_lr", type=float, default=1e-3)
parser.add_argument("--shuffle_dataset", type=str2bool, default=True)
parser.add_argument("--dropout", type=float, default=0.3)
parser.add_argument("--use_cuda", type=str2bool, default=True)
parser.add_argument("--print_every", type=int, default=1)
parser.add_argument("--log_tensorboard", type=str2bool, default=True)
# --- Predictor params ---
parser.add_argument("--scale_scores", type=str2bool, default=False)
parser.add_argument("--use_mov_av", type=str2bool, default=False)
parser.add_argument("--gamma", type=float, default=1)
parser.add_argument("--level", type=float, default=None)
parser.add_argument("--q", type=float, default=None)
parser.add_argument("--dynamic_pot", type=str2bool, default=False)
# --- Other ---
parser.add_argument("--comment", type=str, default="")
return parser