Skip to content

Commit f3743db

Browse files
[Doc] Refine doc and code (#935)
* update develop mkdocs * allow alias for mike * fix code * use full instead of to_tensor * reset time statistics after printing
1 parent 45fcb52 commit f3743db

File tree

11 files changed

+33
-32
lines changed

11 files changed

+33
-32
lines changed

docs/zh/install_setup.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -180,16 +180,14 @@ pybind11、pysdf、PyMesh 四个依赖库(上述**1.1 从 docker 镜像启动*
180180

181181
!!! warning "安装注意事项"
182182

183-
如果使用 git 命令下载 PyMesh 项目文件,则安装过程中可能会出现两个问题,可以按照以下方式解决:
184-
185183
1. 由于网络问题,`git submodule update` 过程中可能某些 submodule 会 clone 失败,此时只需
186184
反复执行 `git submodule update --init --recursive --progress` 直到所有库都 clone 成功即可。
187185

188186
2. 所有 submodule 都 clone 成功后,请检查 `PyMesh/third_party/` 下是否有空文件夹,若有则需
189187
手动找到并删除这些空文件夹,再执行 `git submodule update --init --recursive --progress`
190188
令即可恢复这些空文件夹至正常含有文件的状态,此时再继续执行剩余安装命令即可。
191189

192-
3. 由于自测工具 nose 未适配 Python>=3.10,因此执行 `pymesh.test()` 会报错,**不影响 pymesh 正常使用**
190+
3. 由于自测工具 nose 未适配 Python>=3.10,因此执行 `pymesh.test()` 会报错,**但这不影响 pymesh 正常使用**
193191
194192
## 2. 验证安装
195193

examples/RegAE/dataloader.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,25 +24,25 @@ def fit(self, data):
2424

2525
def transform(self, data):
2626
mean = (
27-
paddle.to_tensor(self.mean, dtype=data.dtype)
27+
paddle.full([], self.mean, dtype=data.dtype)
2828
if paddle.is_tensor(data)
2929
else self.mean
3030
)
3131
std = (
32-
paddle.to_tensor(self.std, dtype=data.dtype)
32+
paddle.full([], self.std, dtype=data.dtype)
3333
if paddle.is_tensor(data)
3434
else self.std
3535
)
3636
return (data - mean) / std
3737

3838
def inverse_transform(self, data):
3939
mean = (
40-
paddle.to_tensor(self.mean, dtype=data.dtype)
40+
paddle.full([], self.mean, dtype=data.dtype)
4141
if paddle.is_tensor(data)
4242
else self.mean
4343
)
4444
std = (
45-
paddle.to_tensor(self.std, dtype=data.dtype)
45+
paddle.full([], self.std, dtype=data.dtype)
4646
if paddle.is_tensor(data)
4747
else self.std
4848
)
@@ -64,12 +64,12 @@ def fit(self, data):
6464

6565
def transform(self, data):
6666
_min = (
67-
paddle.to_tensor(self.min, dtype=data.dtype)
67+
paddle.full([], self.min, dtype=data.dtype)
6868
if paddle.is_tensor(data)
6969
else self.min
7070
)
7171
_max = (
72-
paddle.to_tensor(self.max, dtype=data.dtype)
72+
paddle.full([], self.max, dtype=data.dtype)
7373
if paddle.is_tensor(data)
7474
else self.max
7575
)
@@ -78,12 +78,12 @@ def transform(self, data):
7878

7979
def inverse_transform(self, data, axis=None):
8080
_min = (
81-
paddle.to_tensor(self.min, dtype=data.dtype)
81+
paddle.full([], self.min, dtype=data.dtype)
8282
if paddle.is_tensor(data)
8383
else self.min
8484
)
8585
_max = (
86-
paddle.to_tensor(self.max, dtype=data.dtype)
86+
paddle.full([], self.max, dtype=data.dtype)
8787
if paddle.is_tensor(data)
8888
else self.max
8989
)

examples/earthformer/sevir_metric.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ def csi(hits, misses, fas, eps):
117117
@staticmethod
118118
def bias(hits, misses, fas, eps):
119119
bias = (hits + fas) / (hits + misses + eps)
120-
logbias = paddle.pow(bias / paddle.log(paddle.to_tensor(2.0)), 2.0)
120+
logbias = paddle.pow(bias / paddle.log(paddle.full([], 2.0)), 2.0)
121121
return logbias
122122

123123
@property

examples/epnn/functions.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ def eval_loss_func(output_dict, *args) -> paddle.Tensor:
158158

159159

160160
def metric_expr(output_dict, *args) -> Dict[str, paddle.Tensor]:
161-
return {"dummy_loss": paddle.to_tensor(0.0)}
161+
return {"dummy_loss": paddle.full([], 0.0)}
162162

163163

164164
def loss_func(output_dict, criterion) -> paddle.Tensor:

examples/graphcast/graphcast.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ def loss(
6363
pred = atmospheric_dataset.dataset_to_stacked(pred)
6464
target = atmospheric_dataset.dataset_to_stacked(target)
6565
loss = np.average(np.square(pred.data - target.data))
66-
loss = paddle.to_tensor(loss)
66+
loss = paddle.full([], loss)
6767
return {"loss": loss}
6868

6969
def metric(

examples/heat_exchanger/heat_exchanger.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -473,7 +473,7 @@ def evaluate(cfg: DictConfig):
473473
output_expr={
474474
"T_h": lambda out: out["T_h"] - cfg.T_hin,
475475
},
476-
metric={"MSE": ppsci.metric.MSE()},
476+
metric={"left_MSE": ppsci.metric.MSE()},
477477
name="left_mse",
478478
)
479479
right_validator = ppsci.validate.SupervisedValidator(
@@ -494,7 +494,7 @@ def evaluate(cfg: DictConfig):
494494
output_expr={
495495
"T_h": lambda out: out["T_c"] - cfg.T_cin,
496496
},
497-
metric={"MSE": ppsci.metric.MSE()},
497+
metric={"right_MSE": ppsci.metric.MSE()},
498498
name="right_mse",
499499
)
500500
interior_validator = ppsci.validate.SupervisedValidator(
@@ -513,7 +513,7 @@ def evaluate(cfg: DictConfig):
513513
},
514514
ppsci.loss.MSELoss("mean"),
515515
output_expr=equation["heat_exchanger"].equations,
516-
metric={"MSE": ppsci.metric.MSE()},
516+
metric={"interior_MSE": ppsci.metric.MSE()},
517517
name="interior_mse",
518518
)
519519
validator = {

examples/hpinns/functions.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -283,8 +283,8 @@ def obj_loss_fun(output_dict: Dict[str, paddle.Tensor], *args) -> paddle.Tensor:
283283
e_re = output_dict["e_real"]
284284
e_im = output_dict["e_imaginary"]
285285

286-
f1 = paddle.heaviside((x + 0.5) * (0.5 - x), paddle.to_tensor(0.5))
287-
f2 = paddle.heaviside((y - 1) * (2 - y), paddle.to_tensor(0.5))
286+
f1 = paddle.heaviside((x + 0.5) * (0.5 - x), paddle.full([], 0.5))
287+
f2 = paddle.heaviside((y - 1) * (2 - y), paddle.full([], 0.5))
288288
j = e_re[:bound] ** 2 + e_im[:bound] ** 2 - f1[:bound] * f2[:bound]
289289
loss_opt_area = paddle.mean(j**2)
290290

@@ -309,8 +309,8 @@ def eval_loss_fun(output_dict: Dict[str, paddle.Tensor], *args) -> paddle.Tensor
309309
e_re = output_dict["e_real"]
310310
e_im = output_dict["e_imaginary"]
311311

312-
f1 = paddle.heaviside((x + 0.5) * (0.5 - x), paddle.to_tensor(0.5))
313-
f2 = paddle.heaviside((y - 1) * (2 - y), paddle.to_tensor(0.5))
312+
f1 = paddle.heaviside((x + 0.5) * (0.5 - x), paddle.full([], 0.5))
313+
f2 = paddle.heaviside((y - 1) * (2 - y), paddle.full([], 0.5))
314314
j = e_re**2 + e_im**2 - f1 * f2
315315
losses = paddle.mean(j**2)
316316

examples/phylstm/functions.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222

2323
def metric_expr(output_dict, *args) -> Dict[str, paddle.Tensor]:
24-
return {"dummy_loss": paddle.to_tensor(0.0)}
24+
return {"dummy_loss": paddle.full([], 0.0)}
2525

2626

2727
# transform

ppsci/solver/eval.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -256,11 +256,6 @@ def _eval_by_batch(
256256

257257
# collect batch metric
258258
for metric_name, metric_func in _validator.metric.items():
259-
if metric_name in metric_dict_group:
260-
logger.warning(
261-
f"Metric name({metric_name}) already exists, please ensure "
262-
"all metric names are unique over all validators."
263-
)
264259
metric_dict_group[metric_name] = misc.Prettydefaultdict(list)
265260
metric_dict = metric_func(output_dict, label_dict)
266261
for var_name, metric_value in metric_dict.items():
@@ -292,6 +287,11 @@ def _eval_by_batch(
292287

293288
# concatenate all metric and discard metric of padded sample(s)
294289
for metric_name, metric_dict in metric_dict_group.items():
290+
if metric_name in metric_dict_group:
291+
logger.warning(
292+
f"Metric name({metric_name}) already exists, please ensure "
293+
"all metric names are unique over all validators."
294+
)
295295
for var_name, metric_value in metric_dict.items():
296296
# NOTE: concat single metric(scalar) list into metric vector
297297
metric_value = paddle.concat(metric_value)[:num_samples]

ppsci/solver/printer.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,10 @@ def log_train_info(
9292
log_str += f", {max_mem_reserved_msg}, {max_mem_allocated_msg}"
9393
logger.info(log_str)
9494

95+
# reset time information after printing
96+
for key in solver.train_time_info:
97+
solver.train_time_info[key].reset()
98+
9599
logger.scalar(
96100
{
97101
"train/lr": solver.optimizer.get_lr(),
@@ -144,6 +148,10 @@ def log_eval_info(
144148
f"{metric_msg}, {time_msg}, {ips_msg}, {eta_msg}"
145149
)
146150

151+
# reset time information after printing
152+
for key in solver.train_time_info:
153+
solver.train_time_info[key].reset()
154+
147155
# logger.scalar(
148156
# {
149157
# f"eval/{key}": solver.eval_output_info[key].avg

0 commit comments

Comments
 (0)