This repository has been archived by the owner on Jul 10, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
default_config.yaml
162 lines (161 loc) · 4 KB
/
default_config.yaml
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
name:
value: 'neural_ode'
type: str
help: 'Experiment name. Defines the experiment directory'
dataset:
value: 'concentric_sphere2'
type: str
choices: ['mnist', 'cifar10',
'three_minima', 'concentric_sphere2', 'concentric_sphere3',
'concentric_sphere10', 'concentric_sphere900']
help: 'Name of the dataset'
network:
value: 'simple_odenet'
type: str
choices: ['odenet', 'simple_odenet', 'linear_odenet']
help: 'Architecture used for the Neural ODE'
adjoint:
value: false
type: bool
help: 'If specified, the adjoint method is used for backpropagation'
autodif:
value: 'naive'
type: str
choices: ['adjoint', 'naive']
help: 'Choice of solver used for backpropagation'
tol:
value: 1.e-8
type: float
help: 'Tolerance value for multi-step solvers'
step_size:
value: 1.0
type: float
help: 'Step size used for fixed step solvers'
solver:
value: 'euler'
type: str
choices: ['dopri5', 'fehlberg2', 'euler', 'midpoint', 'rk4']
help: 'Choice of ODE solver'
split:
value: 'train'
type: str
choices: ['train', 'test']
help: 'Data split to use in the current experiment'
phase:
value: 'train'
type: str
choices: ['train', 'infer']
help: 'Training or inference'
ch_residual_block:
value: 32
type: int
help: 'Number of channels in residual block'
act:
value: 'relu'
type: str
choices: ['relu', 'lrelu', 'sigmoid']
help: 'Activation function used'
init_type:
value: 'kaiming'
type: str
choices: ['normal', 'xavier', 'kaiming', 'orthogonal']
help: 'Initialization used for network'
init_variance:
value: 0.02
type: float
help: 'Variance of the initialization distribution'
output_dir:
value: './experiments'
type: str
help: 'Directory where the run is saved to'
niter:
value: 3000
type: int
help: 'Number of iterations to train'
batch_size:
value: 128
type: int
help: 'Number of data samples per GPU'
serial_batches:
value: false
type: bool
help: 'Indicates whether batches are shuffled'
lr:
value: 1.e-4
type: float
help: 'Learning rate'
optimizer:
value: 'adam'
type: str
choices: ['sgd', 'adam', 'rmsprop']
help: 'Choice of optimizer used for training'
weight_decay:
value: 0.
type: float
help: 'L2 weight decay penalty'
use_gpu:
value: false
type: bool
help: 'Specify to use gpus'
gpu_ids:
value: '0'
type: str
help: 'GPU-ids: e.g. 0 0,1,2, 0,2'
num_threads:
value: 2
type: int
help: 'Number of workers to load batch data'
evaluate_test_acc:
value: false
type: bool
help: 'If specified, during the training phase, the test accuracy is also calculated for each epoch'
use_step_adaption_algo:
value: false
type: bool
help: 'If set step size is adjusted automatically'
threshold:
value: 0.1
type: float
help: 'Maximum difference between accuracies. If above precision of training solver is increased. If below precision
training solver remains constant.'
initial_tol:
value: 1.e-6
type: float
help: 'Initial tolerance for tolerance adaption algo.'
adaption_interval:
value: 50
type: int
help: 'Interval at which adaption algo is called'
max_steps:
value: 500
type: int
help: 'Maximum number of steps taken by the solver. This is especially important for large network. So far only
implemented for fixed step solvers.'
evaluate_with_dif_solver:
value: false
type: bool
help: 'Evaluate model with different solver after finishing a run'
test_factor_list:
value: [0.5, 1., 2.]
type: float
nargs: '+'
help: 'test_factor to calculate test step size'
test_solver_list:
value: ['euler', 'midpoint', 'rk4']
type: str
nargs: '+'
choices: ['dopri5', 'fehlberg2',
'euler', 'midpoint', 'rk4']
help: 'test_factor to calculate test step size'
model_checkpoint_freq:
value: 500
type: int
help: 'Iteration frequency for model checkpoints'
random_seed:
value: 0
type: int
help: 'Iteration frequency for model checkpoints'
use_tensorboard:
value: false
type: bool
help: 'Specifies whether to use tensorboard for logging'