Skip to content

Commit 2c65744

Browse files
support default config node
1 parent 1fefb10 commit 2c65744

File tree

125 files changed

+1757
-929
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

125 files changed

+1757
-929
lines changed

examples/NLS-MB/NLS-MB_optical_rogue_wave.py

+7-16
Original file line numberDiff line numberDiff line change
@@ -233,14 +233,10 @@ def train(cfg: DictConfig):
233233
solver = ppsci.solver.Solver(
234234
model,
235235
constraint,
236-
cfg.output_dir,
237-
optimizer,
238-
epochs=cfg.TRAIN.epochs,
239-
iters_per_epoch=cfg.TRAIN.iters_per_epoch,
240-
eval_during_train=cfg.TRAIN.eval_during_train,
241-
eval_freq=cfg.TRAIN.eval_freq,
236+
optimizer=optimizer,
242237
equation=equation,
243238
validator=validator,
239+
cfg=cfg,
244240
)
245241
# train model
246242
solver.train()
@@ -258,14 +254,11 @@ def train(cfg: DictConfig):
258254
model,
259255
constraint,
260256
OUTPUT_DIR,
261-
optimizer_lbfgs,
262-
None,
263-
EPOCHS,
264-
cfg.TRAIN.lbfgs.iters_per_epoch,
265-
eval_during_train=cfg.TRAIN.lbfgs.eval_during_train,
266-
eval_freq=cfg.TRAIN.lbfgs.eval_freq,
257+
optimizer=optimizer_lbfgs,
258+
epochs=EPOCHS,
267259
equation=equation,
268260
validator=validator,
261+
cfg=cfg,
269262
)
270263
# train model
271264
solver.train()
@@ -339,11 +332,9 @@ def evaluate(cfg: DictConfig):
339332
# initialize solver
340333
solver = ppsci.solver.Solver(
341334
model,
342-
output_dir=cfg.output_dir,
343-
eval_freq=cfg.TRAIN.eval_freq,
344335
equation=equation,
345336
validator=validator,
346-
pretrained_model_path=cfg.EVAL.pretrained_model_path,
337+
cfg=cfg,
347338
)
348339
solver.eval()
349340

@@ -371,7 +362,7 @@ def export(cfg: DictConfig):
371362
# initialize solver
372363
solver = ppsci.solver.Solver(
373364
model,
374-
pretrained_model_path=cfg.INFER.pretrained_model_path,
365+
cfg=cfg,
375366
)
376367
# export model
377368
from paddle.static import InputSpec

examples/NLS-MB/NLS-MB_optical_soliton.py

+5-13
Original file line numberDiff line numberDiff line change
@@ -210,14 +210,10 @@ def train(cfg: DictConfig):
210210
solver = ppsci.solver.Solver(
211211
model,
212212
constraint,
213-
cfg.output_dir,
214-
optimizer,
215-
epochs=cfg.TRAIN.epochs,
216-
iters_per_epoch=cfg.TRAIN.iters_per_epoch,
217-
eval_during_train=cfg.TRAIN.eval_during_train,
218-
eval_freq=cfg.TRAIN.eval_freq,
213+
optimizer=optimizer,
219214
equation=equation,
220215
validator=validator,
216+
cfg=cfg,
221217
)
222218
# train model
223219
solver.train()
@@ -236,13 +232,11 @@ def train(cfg: DictConfig):
236232
constraint,
237233
OUTPUT_DIR,
238234
optimizer_lbfgs,
239-
None,
240235
EPOCHS,
241236
cfg.TRAIN.lbfgs.iters_per_epoch,
242-
eval_during_train=cfg.TRAIN.lbfgs.eval_during_train,
243-
eval_freq=cfg.TRAIN.lbfgs.eval_freq,
244237
equation=equation,
245238
validator=validator,
239+
cfg=cfg,
246240
)
247241
# train model
248242
solver.train()
@@ -316,11 +310,9 @@ def evaluate(cfg: DictConfig):
316310
# initialize solver
317311
solver = ppsci.solver.Solver(
318312
model,
319-
output_dir=cfg.output_dir,
320-
eval_freq=cfg.TRAIN.eval_freq,
321313
equation=equation,
322314
validator=validator,
323-
pretrained_model_path=cfg.EVAL.pretrained_model_path,
315+
cfg=cfg,
324316
)
325317
solver.eval()
326318

@@ -348,7 +340,7 @@ def export(cfg: DictConfig):
348340
# initialize solver
349341
solver = ppsci.solver.Solver(
350342
model,
351-
pretrained_model_path=cfg.INFER.pretrained_model_path,
343+
cfg=cfg,
352344
)
353345
# export model
354346
from paddle.static import InputSpec

examples/NLS-MB/conf/NLS-MB_rogue_wave.yaml

+9
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
defaults:
2+
- ppsci_default
3+
- TRAIN: train_default
4+
- TRAIN/ema: ema_default
5+
- TRAIN/swa: swa_default
6+
- EVAL: eval_default
7+
- INFER: infer_default
8+
- _self_
9+
110
hydra:
211
run:
312
# dynamic output directory according to running time and override name

examples/NLS-MB/conf/NLS-MB_soliton.yaml

+9
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
defaults:
2+
- ppsci_default
3+
- TRAIN: train_default
4+
- TRAIN/ema: ema_default
5+
- TRAIN/swa: swa_default
6+
- EVAL: eval_default
7+
- INFER: infer_default
8+
- _self_
9+
110
hydra:
211
run:
312
# dynamic output directory according to running time and override name

examples/RegAE/RegAE.py

+3-13
Original file line numberDiff line numberDiff line change
@@ -88,16 +88,9 @@ def loss_expr(output_dict, label_dict, weight_dict=None):
8888
solver = ppsci.solver.Solver(
8989
model,
9090
constraint,
91-
cfg.output_dir,
92-
optimizer,
93-
None,
94-
cfg.TRAIN.epochs,
95-
cfg.TRAIN.iters_per_epoch,
96-
save_freq=cfg.TRAIN.save_freq,
97-
eval_during_train=cfg.TRAIN.eval_during_train,
98-
eval_freq=cfg.TRAIN.eval_freq,
91+
optimizer=optimizer,
9992
validator=validator,
100-
eval_with_no_grad=cfg.EVAL.eval_with_no_grad,
93+
cfg=cfg,
10194
)
10295
# train model
10396
solver.train()
@@ -135,11 +128,8 @@ def evaluate(cfg: DictConfig):
135128
# initialize solver
136129
solver = ppsci.solver.Solver(
137130
model,
138-
None,
139-
output_dir=cfg.output_dir,
140131
validator=validator,
141-
pretrained_model_path=cfg.EVAL.pretrained_model_path,
142-
eval_with_no_grad=cfg.EVAL.eval_with_no_grad,
132+
cfg=cfg,
143133
)
144134
# evaluate after finished training
145135
solver.eval()

examples/RegAE/conf/RegAE.yaml

+9
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
defaults:
2+
- ppsci_default
3+
- TRAIN: train_default
4+
- TRAIN/ema: ema_default
5+
- TRAIN/swa: swa_default
6+
- EVAL: eval_default
7+
- INFER: infer_default
8+
- _self_
9+
110
hydra:
211
run:
312
# dynamic output directory according to running time and override name
+96
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
defaults:
2+
- ppsci_default
3+
- TRAIN: train_default
4+
- TRAIN/ema: ema_default
5+
- TRAIN/swa: swa_default
6+
- EVAL: eval_default
7+
- INFER: infer_default
8+
- _self_
9+
10+
hydra:
11+
run:
12+
# dynamic output directory according to running time and override name
13+
dir: outputs_advection_plain/${now:%Y-%m-%d}/${now:%H-%M-%S}/${hydra.job.override_dirname}
14+
job:
15+
name: ${mode} # name of logfile
16+
chdir: false # keep current working direcotry unchaned
17+
config:
18+
override_dirname:
19+
exclude_keys:
20+
- TRAIN.checkpoint_path
21+
- TRAIN.pretrained_model_path
22+
- EVAL.pretrained_model_path
23+
- INFER.pretrained_model_path
24+
- mode
25+
- output_dir
26+
- log_freq
27+
callbacks:
28+
init_callback:
29+
_target_: ppsci.utils.callbacks.InitCallback
30+
sweep:
31+
# output directory for multirun
32+
dir: ${hydra.run.dir}
33+
subdir: ./
34+
35+
# general settings
36+
mode: train # running mode: train/eval
37+
seed: 42
38+
output_dir: ${hydra:run.dir}
39+
log_freq: 100
40+
41+
DATA_PATH: ./dataset/allen_cahn.mat
42+
43+
# model settings
44+
MODEL:
45+
input_keys: [t, x]
46+
output_keys: [u]
47+
num_layers: 4
48+
hidden_size: 256
49+
activation: tanh
50+
periods:
51+
t: [2*np.pi, False]
52+
53+
# training settings
54+
TRAIN:
55+
epochs: 200
56+
iters_per_epoch: 1000
57+
save_freq: 10
58+
eval_during_train: true
59+
eval_freq: 1
60+
lr_scheduler:
61+
epochs: ${TRAIN.epochs}
62+
iters_per_epoch: ${TRAIN.iters_per_epoch}
63+
learning_rate: 1.0e-3
64+
gamma: 0.9
65+
decay_steps: 2000
66+
by_epoch: false
67+
batch_size: 4096
68+
pretrained_model_path: null
69+
checkpoint_path: null
70+
ema:
71+
decay: 0.9
72+
avg_freq: 1
73+
74+
# evaluation settings
75+
EVAL:
76+
pretrained_model_path: null
77+
eval_with_no_grad: true
78+
batch_size: 4096
79+
80+
# inference settings
81+
INFER:
82+
pretrained_model_path: https://paddle-org.bj.bcebos.com/paddlescience/models/AllenCahn/allen_cahn_plain_pretrained.pdparams
83+
export_path: ./inference/allen_cahn
84+
pdmodel_path: ${INFER.export_path}.pdmodel
85+
pdpiparams_path: ${INFER.export_path}.pdiparams
86+
onnx_path: ${INFER.export_path}.onnx
87+
device: gpu
88+
engine: native
89+
precision: fp32
90+
ir_optim: true
91+
min_subgraph_size: 5
92+
gpu_mem: 2000
93+
gpu_id: 0
94+
max_batch_size: 1024
95+
num_cpu_threads: 10
96+
batch_size: 1024

examples/allen_cahn/allen_cahn_causal.py

+3-18
Original file line numberDiff line numberDiff line change
@@ -158,21 +158,9 @@ def gen_label_batch(input_batch):
158158
solver = ppsci.solver.Solver(
159159
model,
160160
constraint,
161-
cfg.output_dir,
162-
optimizer,
163-
lr_scheduler,
164-
cfg.TRAIN.epochs,
165-
cfg.TRAIN.iters_per_epoch,
166-
save_freq=cfg.TRAIN.save_freq,
167-
log_freq=cfg.log_freq,
168-
eval_during_train=True,
169-
eval_freq=cfg.TRAIN.eval_freq,
161+
optimizer=optimizer,
170162
equation=equation,
171163
validator=validator,
172-
pretrained_model_path=cfg.TRAIN.pretrained_model_path,
173-
checkpoint_path=cfg.TRAIN.checkpoint_path,
174-
eval_with_no_grad=cfg.EVAL.eval_with_no_grad,
175-
use_tbd=True,
176164
cfg=cfg,
177165
)
178166
# train model
@@ -221,11 +209,8 @@ def evaluate(cfg: DictConfig):
221209
# initialize solver
222210
solver = ppsci.solver.Solver(
223211
model,
224-
output_dir=cfg.output_dir,
225-
log_freq=cfg.log_freq,
226212
validator=validator,
227-
pretrained_model_path=cfg.EVAL.pretrained_model_path,
228-
eval_with_no_grad=cfg.EVAL.eval_with_no_grad,
213+
cfg=cfg,
229214
)
230215

231216
# evaluate after finished training
@@ -247,7 +232,7 @@ def export(cfg: DictConfig):
247232
# initialize solver
248233
solver = ppsci.solver.Solver(
249234
model,
250-
pretrained_model_path=cfg.INFER.pretrained_model_path,
235+
cfg=cfg,
251236
)
252237
# export model
253238
from paddle.static import InputSpec

examples/allen_cahn/allen_cahn_plain.py

+3-18
Original file line numberDiff line numberDiff line change
@@ -156,21 +156,9 @@ def gen_label_batch(input_batch):
156156
solver = ppsci.solver.Solver(
157157
model,
158158
constraint,
159-
cfg.output_dir,
160-
optimizer,
161-
lr_scheduler,
162-
cfg.TRAIN.epochs,
163-
cfg.TRAIN.iters_per_epoch,
164-
save_freq=cfg.TRAIN.save_freq,
165-
log_freq=cfg.log_freq,
166-
eval_during_train=True,
167-
eval_freq=cfg.TRAIN.eval_freq,
159+
optimizer=optimizer,
168160
equation=equation,
169161
validator=validator,
170-
pretrained_model_path=cfg.TRAIN.pretrained_model_path,
171-
checkpoint_path=cfg.TRAIN.checkpoint_path,
172-
eval_with_no_grad=cfg.EVAL.eval_with_no_grad,
173-
use_tbd=True,
174162
cfg=cfg,
175163
)
176164
# train model
@@ -219,11 +207,8 @@ def evaluate(cfg: DictConfig):
219207
# initialize solver
220208
solver = ppsci.solver.Solver(
221209
model,
222-
output_dir=cfg.output_dir,
223-
log_freq=cfg.log_freq,
224210
validator=validator,
225-
pretrained_model_path=cfg.EVAL.pretrained_model_path,
226-
eval_with_no_grad=cfg.EVAL.eval_with_no_grad,
211+
cfg=cfg,
227212
)
228213

229214
# evaluate after finished training
@@ -245,7 +230,7 @@ def export(cfg: DictConfig):
245230
# initialize solver
246231
solver = ppsci.solver.Solver(
247232
model,
248-
pretrained_model_path=cfg.INFER.pretrained_model_path,
233+
cfg=cfg,
249234
)
250235
# export model
251236
from paddle.static import InputSpec

0 commit comments

Comments
 (0)