Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleSeg
提交
d4df83f4
P
PaddleSeg
项目概览
PaddlePaddle
/
PaddleSeg
通知
285
Star
8
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
53
列表
看板
标记
里程碑
合并请求
3
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleSeg
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
53
Issue
53
列表
看板
标记
里程碑
合并请求
3
合并请求
3
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
d4df83f4
编写于
12月 18, 2019
作者:
W
wuyefeilin
提交者:
wuzewu
12月 18, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
save best model (#123)
* save best model
上级
0f365acc
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
17 addition
and
0 deletion
+17
-0
pdseg/train.py
pdseg/train.py
+17
-0
未找到文件。
pdseg/train.py
浏览文件 @
d4df83f4
...
...
@@ -179,6 +179,13 @@ def load_checkpoint(exe, program):
return
begin_epoch
def
update_best_model
(
ckpt_dir
):
best_model_dir
=
os
.
path
.
join
(
cfg
.
TRAIN
.
MODEL_SAVE_DIR
,
'best_model'
)
if
os
.
path
.
exists
(
best_model_dir
):
shutil
.
rmtree
(
best_model_dir
)
shutil
.
copytree
(
ckpt_dir
,
best_model_dir
)
def
print_info
(
*
msg
):
if
cfg
.
TRAINER_ID
==
0
:
print
(
*
msg
)
...
...
@@ -341,6 +348,8 @@ def train(cfg):
all_step
*=
(
cfg
.
SOLVER
.
NUM_EPOCHS
-
begin_epoch
+
1
)
avg_loss
=
0.0
best_mIoU
=
0.0
timer
=
Timer
()
timer
.
start
()
if
begin_epoch
>
cfg
.
SOLVER
.
NUM_EPOCHS
:
...
...
@@ -445,6 +454,14 @@ def train(cfg):
log_writer
.
add_scalar
(
'Evaluate/mean_acc'
,
mean_acc
,
global_step
)
if
mean_iou
>
best_mIoU
:
best_mIoU
=
mean_iou
update_best_model
(
ckpt_dir
)
print_info
(
"Save best model {} to {}, mIoU = {:.4f}"
.
format
(
ckpt_dir
,
os
.
path
.
join
(
cfg
.
TRAIN
.
MODEL_SAVE_DIR
,
'best_model'
),
mean_iou
))
# Use Tensorboard to visualize results
if
args
.
use_tb
and
cfg
.
DATASET
.
VIS_FILE_LIST
is
not
None
:
visualize
(
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录