yushuang88 commited on
Commit
a31b489
·
verified ·
1 Parent(s): d46980f

Add model configuration

Browse files
Files changed (1) hide show
  1. config.json +300 -0
config.json ADDED
@@ -0,0 +1,300 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "DeepONet"
4
+ ],
5
+ "framework": "pytorch",
6
+ "model_name": "DeepONet",
7
+ "model_type": "deeponet",
8
+ "source_config": "config/config.yaml",
9
+ "project": {
10
+ "name": "DeepONet",
11
+ "paper": "DeepONet: Learning nonlinear operators for identifying differential equations based on the universal approximation theorem of operators",
12
+ "arxiv": "1910.03193v3",
13
+ "paper_url": "https://arxiv.org/abs/1910.03193",
14
+ "implementation_policy": "paper_first_independent_reimplementation",
15
+ "paper_scale": true
16
+ },
17
+ "paths": {
18
+ "checkpoint": "weight/best_model.pth",
19
+ "results": "results",
20
+ "cache": "results/cache"
21
+ },
22
+ "runtime": {
23
+ "seed": 0,
24
+ "device": "auto",
25
+ "dtype": "float32",
26
+ "num_workers": 0
27
+ },
28
+ "function_space": {
29
+ "type": "grf",
30
+ "length_scale": 0.2,
31
+ "grf_grid_size": 1000,
32
+ "jitter": 1e-13,
33
+ "interpolation": "cubic",
34
+ "generation_chunk_size": 128,
35
+ "chebyshev": {
36
+ "degree": 10,
37
+ "coefficient_bound": 1.0
38
+ }
39
+ },
40
+ "model_defaults": {
41
+ "architecture": "deeponet",
42
+ "activation": "relu",
43
+ "initializer": "xavier_normal",
44
+ "dense_bias": true,
45
+ "branch_depth": 2,
46
+ "trunk_depth": 3,
47
+ "width": 40,
48
+ "latent_dim": 40
49
+ },
50
+ "variants": {
51
+ "unstacked_bias": {
52
+ "architecture": "deeponet",
53
+ "stacked": false,
54
+ "branch_output_bias": true,
55
+ "global_bias": true
56
+ },
57
+ "unstacked_no_bias": {
58
+ "architecture": "deeponet",
59
+ "stacked": false,
60
+ "branch_output_bias": false,
61
+ "global_bias": false
62
+ },
63
+ "stacked_bias": {
64
+ "architecture": "deeponet",
65
+ "stacked": true,
66
+ "branch_output_bias": true,
67
+ "global_bias": true
68
+ },
69
+ "stacked_no_bias": {
70
+ "architecture": "deeponet",
71
+ "stacked": true,
72
+ "branch_output_bias": false,
73
+ "global_bias": false
74
+ },
75
+ "fnn": {
76
+ "architecture": "fnn",
77
+ "depth": 3,
78
+ "width": 40,
79
+ "output_bias": true
80
+ }
81
+ },
82
+ "training_defaults": {
83
+ "optimizer": "adam",
84
+ "learning_rate": 0.001,
85
+ "batch_size": null,
86
+ "evaluation_batch_size": 8192,
87
+ "weight_decay": 0.0,
88
+ "print_every": 1000,
89
+ "evaluate_every": 1000,
90
+ "checkpoint_metric": "test_mse",
91
+ "resume": false
92
+ },
93
+ "solver_defaults": {
94
+ "method": "RK45",
95
+ "rtol": 1e-07,
96
+ "atol": 1e-09,
97
+ "pde_newton_tolerance": 1e-10,
98
+ "pde_newton_max_iterations": 20
99
+ },
100
+ "experiments": {
101
+ "antiderivative": {
102
+ "equation": "ds/dx = u(x), s(0) = 0",
103
+ "sensor_points": 100,
104
+ "trunk_dim": 1,
105
+ "domain_end": 1.0,
106
+ "train_size": 10000,
107
+ "test_size": 100000,
108
+ "iterations": 50000,
109
+ "default_variant": "unstacked_bias",
110
+ "sweeps": {
111
+ "architectures": [
112
+ "fnn",
113
+ "unstacked_no_bias",
114
+ "unstacked_bias",
115
+ "stacked_no_bias",
116
+ "stacked_bias"
117
+ ],
118
+ "fnn_depths": [
119
+ 2,
120
+ 3,
121
+ 4
122
+ ],
123
+ "fnn_widths": [
124
+ 20,
125
+ 40,
126
+ 100
127
+ ],
128
+ "learning_rates": [
129
+ 0.0001,
130
+ 0.001,
131
+ 0.01
132
+ ]
133
+ }
134
+ },
135
+ "nonlinear_ode": {
136
+ "equation": "ds/dx = -s^2 + u(x), s(0) = 0",
137
+ "sensor_points": 100,
138
+ "trunk_dim": 1,
139
+ "domain_end": 1.0,
140
+ "train_size": 10000,
141
+ "test_size": 100000,
142
+ "iterations": 100000,
143
+ "default_variant": "unstacked_bias",
144
+ "trim_fraction": 0.001,
145
+ "ood_functions": [
146
+ "linear",
147
+ "sin_pi",
148
+ "sin_2pi"
149
+ ],
150
+ "sweeps": {
151
+ "architectures": [
152
+ "stacked_no_bias",
153
+ "stacked_bias",
154
+ "unstacked_no_bias",
155
+ "unstacked_bias"
156
+ ]
157
+ }
158
+ },
159
+ "pendulum": {
160
+ "equation": "ds1/dt = s2; ds2/dt = -k*sin(s1) + u(t); s(0) = (0,0)",
161
+ "sensor_points": 100,
162
+ "trunk_dim": 1,
163
+ "domain_end": 1.0,
164
+ "k": 1.0,
165
+ "train_size": 10000,
166
+ "test_size": 100000,
167
+ "iterations": 100000,
168
+ "default_variant": "unstacked_bias",
169
+ "convergence_iterations": 500000,
170
+ "convergence_test_size": 1000000,
171
+ "sweeps": {
172
+ "sensor_points": [
173
+ 10,
174
+ 20,
175
+ 50,
176
+ 100,
177
+ 200
178
+ ],
179
+ "domain_end": [
180
+ 1.0,
181
+ 2.0,
182
+ 3.0,
183
+ 4.0
184
+ ],
185
+ "length_scale": [
186
+ 0.1,
187
+ 0.2,
188
+ 0.5,
189
+ 1.0
190
+ ],
191
+ "k": [
192
+ 0.5,
193
+ 1.0,
194
+ 2.0
195
+ ],
196
+ "width": [
197
+ 20,
198
+ 40,
199
+ 100
200
+ ],
201
+ "train_size": [
202
+ 1000,
203
+ 5000,
204
+ 10000
205
+ ],
206
+ "chebyshev_degree": [
207
+ 5,
208
+ 10,
209
+ 20
210
+ ]
211
+ }
212
+ },
213
+ "diffusion_reaction": {
214
+ "equation": "s_t = D*s_xx + k*s^2 + u(x)",
215
+ "sensor_points": 100,
216
+ "trunk_dim": 2,
217
+ "domain_end": 1.0,
218
+ "train_functions": 100,
219
+ "points_per_function": 1000,
220
+ "test_functions": 1000,
221
+ "test_points_per_function": 1000,
222
+ "test_size": 1000000,
223
+ "iterations": 500000,
224
+ "default_variant": "unstacked_bias",
225
+ "diffusion": 0.01,
226
+ "reaction": 0.01,
227
+ "space_points": 100,
228
+ "time_points": 100,
229
+ "branch_depth": 2,
230
+ "trunk_depth": 3,
231
+ "width": 100,
232
+ "latent_dim": 100,
233
+ "sweeps": {
234
+ "train_functions": [
235
+ 50,
236
+ 100,
237
+ 200,
238
+ 400
239
+ ],
240
+ "points_per_function": [
241
+ 10,
242
+ 100,
243
+ 1000,
244
+ 10000
245
+ ]
246
+ }
247
+ }
248
+ },
249
+ "inference": {
250
+ "batch_size": 8192,
251
+ "ood_query_points": 100,
252
+ "save_inputs": true
253
+ },
254
+ "smoke_test": {
255
+ "project": {
256
+ "paper_scale": false
257
+ },
258
+ "function_space": {
259
+ "grf_grid_size": 32,
260
+ "generation_chunk_size": 16
261
+ },
262
+ "training_defaults": {
263
+ "batch_size": 16,
264
+ "evaluation_batch_size": 32,
265
+ "print_every": 1,
266
+ "evaluate_every": 1
267
+ },
268
+ "experiments": {
269
+ "antiderivative": {
270
+ "sensor_points": 16,
271
+ "train_size": 32,
272
+ "test_size": 24,
273
+ "iterations": 2
274
+ },
275
+ "nonlinear_ode": {
276
+ "sensor_points": 16,
277
+ "train_size": 24,
278
+ "test_size": 16,
279
+ "iterations": 2
280
+ },
281
+ "pendulum": {
282
+ "sensor_points": 16,
283
+ "train_size": 24,
284
+ "test_size": 16,
285
+ "iterations": 2
286
+ },
287
+ "diffusion_reaction": {
288
+ "sensor_points": 16,
289
+ "train_functions": 4,
290
+ "points_per_function": 8,
291
+ "test_functions": 2,
292
+ "test_points_per_function": 8,
293
+ "test_size": 16,
294
+ "space_points": 12,
295
+ "time_points": 12,
296
+ "iterations": 2
297
+ }
298
+ }
299
+ }
300
+ }