generated from odtp-org/odtp-component-template
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathodtp.yml
372 lines (332 loc) · 8.68 KB
/
odtp.yml
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
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
# This file should contain basic component information for your component.
component-name: odtp-next-location-prediction
component-author: Ye Hong & Carlos Vivar Rios
component-version: v0.0.4
component-repository: https://github.com/odtp-org/odtp-next-location-prediction
component-license: BSD-3-Clause
component-type: ephemeral
component-description: TBD
tags:
- training
- inference
# Information about the tools
tools:
- tool-name: next-location-prediction
tool-author: Ye Hong
tool-version: 33e17ae3f857b22a6164ecb5f9c384f62b279b34
tool-repository: Tool's repository
tool-license: Apache-2.0 license
# If your tool require some secrets token to be passed as ENV to the component
# This won't be traced in MongoDB
secrets:
- name: GITHUB_USERNAME
description: Github username
- name: GITHUB_TOKEN
description: Github token
# If the tool requires some building arguments such as Matlab license
build-args: null
# If applicable, ports exposed by the component
# Include Name, Description, and Port Value for each port
ports: null
# If applicable, parameters exposed by the component
# Datatype can be str, int, float, or bool.
parameters:
- name: TRAINING
default-value: True
datatype: bool
description: Train 'networkName' NN with 'train_dataset' in 'data_save_root' if true, use 'pretrain_file' NN to test data from 'inference_data_dir' in 'data_save_root' if false
parameter-bounds: null
options: null
allow-custom-value: false
- name: TRAIN_DATASET
default-value: dtepr
datatype: str
description: Dataset name for training, shall be available in 'data_save_root'
parameter-bounds: null
options: null
allow-custom-value: false
- name: INFERENCE_DATA_DIR
default-value: inference
datatype: str
description: Directory containing all datasets for inference, shall be available in 'data_save_root'
parameter-bounds: null
options: null
allow-custom-value: false
- name: PRETRAIN_DIR
default-value: dtepr_mhsa_demo
datatype: str
description: Directory containing the trained NN weights, shall be available in 'run_save_root'
parameter-bounds: null
options: null
allow-custom-value: false
- name: IF_EMBED_TIME
default-value: True
datatype: bool
description: Whether to embed time information
parameter-bounds: null
options: null
allow-custom-value: false
- name: VERBOSE
default-value: True
datatype: bool
description: Verbose output
parameter-bounds: null
options: null
allow-custom-value: false
- name: DEBUG
default-value: False
datatype: bool
description: Debug mode
parameter-bounds: null
options: null
allow-custom-value: false
- name: BATCH_SIZE
default-value: 256
datatype: int
description: Batch size for training
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: PRINT_STEP
default-value: 10
datatype: int
description: Steps between printing training progress
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: NUM_WORKERS
default-value: 0
datatype: int
description: Number of worker threads for data loading
parameter-bounds:
- 0
- inf
options: null
allow-custom-value: false
- name: BASE_EMB_SIZE
default-value: 64
datatype: int
description: Base embedding size
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: NETWORK_NAME
default-value: mhsa
datatype: str
description: Name of the network
parameter-bounds: null
options:
- mhsa
- lstm
allow-custom-value: false
- name: FC_DROPOUT
default-value: 0.1
datatype: float
description: Dropout rate for fully connected layers
parameter-bounds:
- 0.0
- 1.0
options: null
allow-custom-value: false
- name: MHSA_NUM_ENCODER_LAYERS
default-value: 4
datatype: int
description: Number of encoder layers in MHSA
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: MHSA_NHEAD
default-value: 8
datatype: int
description: Number of attention heads in MHSA
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: MHSA_DIM_FEEDFORWARD
default-value: 256
datatype: int
description: Feedforward dimension in MHSA
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: MHSA_DROPOUT
default-value: 0.1
datatype: float
description: Dropout rate in MHSA
parameter-bounds:
- 0.0
- 1.0
options: null
allow-custom-value: false
- name: LSTM_ATTENTION
default-value: False
datatype: bool
description: Whether to include self-attention layer in LSTM
parameter-bounds: null
options: null
allow-custom-value: false
- name: LSTM_RNN_TYPE
default-value: LSTM
datatype: str
description: Type of RNN (LSTM or GRU)
parameter-bounds: null
options:
- LSTM
- GRU
allow-custom-value: false
- name: LSTM_HIDDEN_SIZE
default-value: 128
datatype: int
description: Hidden size for LSTM
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: OPTIMIZER
default-value: Adam
datatype: str
description: Optimizer type
parameter-bounds: null
options:
- Adam
- SGD
allow-custom-value: false
- name: OPTIMIZER_MAX_EPOCH
default-value: 100
datatype: int
description: Maximum number of epochs for optimizer
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: OPTIMIZER_LR
default-value: 0.001
datatype: float
description: Learning rate for optimizer
parameter-bounds:
- 0.0
- 1.0
options: null
allow-custom-value: false
- name: OPTIMIZER_WEIGHT_DECAY
default-value: 0.000001
datatype: float
description: Weight decay for optimizer
parameter-bounds:
- 0.0
- 1.0
options: null
allow-custom-value: false
- name: OPTIMIZER_ADAM_BETA1
default-value: 0.9
datatype: float
description: Beta1 parameter for Adam optimizer
parameter-bounds:
- 0.0
- 1.0
options: null
allow-custom-value: false
- name: OPTIMIZER_ADAM_BETA2
default-value: 0.999
datatype: float
description: Beta2 parameter for Adam optimizer
parameter-bounds:
- 0.0
- 1.0
options: null
allow-custom-value: false
- name: OPTIMIZER_SGD_MOMENTUM
default-value: 0.98
datatype: float
description: Momentum for SGD optimizer
parameter-bounds:
- 0.0
- 1.0
options: null
allow-custom-value: false
- name: OPTIMIZER_NUM_WARMUP_EPOCHS
default-value: 2
datatype: int
description: Number of warmup epochs for optimizer
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: OPTIMIZER_NUM_TRAINING_EPOCHS
default-value: 50
datatype: int
description: Number of training epochs for optimizer
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: OPTIMIZER_PATIENCE
default-value: 3
datatype: int
description: Patience for learning rate decay
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: OPTIMIZER_LR_STEP_SIZE
default-value: 1
datatype: int
description: Step size for learning rate decay
parameter-bounds:
- 1
- inf
options: null
allow-custom-value: false
- name: OPTIMIZER_LR_GAMMA
default-value: 0.1
datatype: float
description: Gamma value for learning rate decay
parameter-bounds:
- 0.0
- 1.0
options: null
allow-custom-value: false
# If applicable, data-input list required by the component
data-inputs:
- name: INPUT A
type: TYPE_A # Folder or filetype
path: VALUE_A
description: Description of Input A
- name: INPUT B
type: TYPE_B # Folder or filetype
path: VALUE_B
description: Description of Input B
# If applicable, data-output list produced by the component
data-output:
- name: OUTPUT A
type: TYPE_A # Folder or filetype
path: VALUE_A
description: Description of Output A
- name: OUTPUT B
type: TYPE_B # Folder or filetype
path: VALUE_B
description: Description of Output B
# If applicable, path to schemas to perform semantic validation.
# Still under development. Ignore.
schema-input: null
schema-output: null
# If applicable, define devices needed such as GPU.
devices:
gpu: True