首页 炼丹房 帖子详情
训练后模型文件没有保存或修改
收藏
快速回复
炼丹房 其他新手上路 2253 11
训练后模型文件没有保存或修改
收藏
快速回复
炼丹房 其他新手上路 2253 11

准备利用yolov3_mobilenet_v3_large_ssld_270e_voc.yml模型文件进行训练:

python tools/train.py -c configs/yolov3/yolov3_mobilenet_v3_large_ssld_270e_voc.yml --eval --use_v
dl=True --vdl_log_dir=vdl_dir
WARNING: Detect dataset only contains single fileds, return format changed since Paddle 2.1. In Paddle <= 2.0, DataLoader add a list surround output data(e.g. return [data]
), and in Paddle >= 2.1, DataLoader return the single filed directly (e.g. return data). For example, in following code:

import numpy as np
from paddle.io import DataLoader, Dataset

class RandomDataset(Dataset):
def __getitem__(self, idx):
data = np.random.random((2, 3)).astype('float32')

return data

def __len__(self):
return 10

dataset = RandomDataset()
loader = DataLoader(dataset, batch_size=1)
data = next(loader())

In Paddle <= 2.0, data is in format '[Tensor(shape=(1, 2, 3), dtype=float32)]', and in Paddle >= 2.1, data is in format 'Tensor(shape=(1, 2, 3), dtype=float32)'

[07/22 09:43:04] ppdet.utils.checkpoint INFO: Finish loading model weights: C:\Users\10987/.cache/paddle/weights\MobileNetV3_large_x1_0_ssld_pretrained.pdparams
[07/22 09:43:23] ppdet.engine INFO: Epoch: [0] [ 0/88] learning_rate: 0.000000 loss_xy: 2.711101 loss_wh: 3.853383 loss_obj: 10911.280273 loss_cls: 2.024891 loss: 10919.869
141 eta: 3 days, 22:59:13 batch_cost: 19.4292 data_cost: 0.0000 ips: 0.4118 images/s
[07/22 09:49:13] ppdet.engine INFO: Epoch: [0] [20/88] learning_rate: 0.000020 loss_xy: 3.320251 loss_wh: 4.666603 loss_obj: 69.493683 loss_cls: 2.637279 loss: 81.992119 et
a: 3 days, 13:58:09 batch_cost: 17.5134 data_cost: 0.0002 ips: 0.4568 images/s
[07/22 09:55:36] ppdet.engine INFO: Epoch: [0] [40/88] learning_rate: 0.000040 loss_xy: 2.924265 loss_wh: 3.692574 loss_obj: 17.627541 loss_cls: 2.405848 loss: 27.666325 et
a: 3 days, 17:31:52 batch_cost: 19.1428 data_cost: 0.0002 ips: 0.4179 images/s
[07/22 10:02:03] ppdet.engine INFO: Epoch: [0] [60/88] learning_rate: 0.000060 loss_xy: 2.802311 loss_wh: 3.030344 loss_obj: 17.003349 loss_cls: 1.925341 loss: 24.669910 et
a: 3 days, 18:59:21 batch_cost: 19.3315 data_cost: 0.0002 ips: 0.4138 images/s
[07/22 10:08:04] ppdet.engine INFO: Epoch: [0] [80/88] learning_rate: 0.000080 loss_xy: 2.768898 loss_wh: 2.607930 loss_obj: 13.920586 loss_cls: 1.840746 loss: 21.383327 et
a: 3 days, 18:09:31 batch_cost: 18.0701 data_cost: 0.0000 ips: 0.4427 images/s

 

最后,就这样结束了。

检查C:\Users\10987/.cache/paddle/weights\MobileNetV3_large_x1_0_ssld_pretrained.pdparams文件,好像没修改过。

是不是参数有问题?哪位大佬能帮助解惑么?谢谢!!

 

0
收藏
回复
全部评论(11)
时间顺序
FutureSI
#2 回复于2021-07

这是用的ppdet套件么?

0
回复
FutureSI
#3 回复于2021-07

套件训练完毕后应该提示保存的,应该保存在设置的存储路径的final文件夹里

0
回复
FutureSI
#4 回复于2021-07

C:\Users\10987/.cache/paddle/weights\MobileNetV3_large_x1_0_ssld_pretrained.pdparams

这个是下载的预训练参数

0
回复
FutureSI
#5 回复于2021-07

套件使用参考这个

https://github.com/PaddlePaddle/PaddleDetection

0
回复
深渊上的坑
#6 回复于2021-07

模型当然没修改……

0
回复
深渊上的坑
#7 回复于2021-07

保存的话,要自己设置检查点,确定多少轮保存一次

0
回复
深渊上的坑
#8 回复于2021-07
configs/runtime.yml

这个文件里面有设置多少个epoch保存一次模型

use_gpu: true
log_iter: 20
save_dir: output
snapshot_epoch: 1
0
回复
深渊上的坑
#9 回复于2021-07

我看默认是1个epoch就保存了,楼主是否跑完了一个epoch?

0
回复
深渊上的坑
#10 回复于2021-07

我看主贴的日志里:

[07/22 10:08:04] ppdet.engine INFO: Epoch: [0] [80/88] learning_rate: 0.000080 loss_xy: 2.768898 loss_wh: 2.607930 loss_obj: 13.920586 loss_cls: 1.840746 loss: 21.383327 et
a: 3 days, 18:09:31 batch_cost: 18.0701 data_cost: 0.0000 ips: 0.4427 images/s


还在epoch0啊?所以没保存模型是正常的

0
回复
e
essex
#11 回复于2021-07

回 FutureSI 大佬的话:

         用的是paddledetection套件的,还在学习中,谢谢!!!

回 深渊上的坑 大佬的话:

        您一眼就看出问题了。

         原因应该是只跑了一个epoch就结束训练了,所有没有保存。

        这几天在研究为什么只跑一个epoch就结束。

       看到论坛也有人在提过类似的情况。

谢谢二位大佬!!

 

         

 

 

0
回复
倾月公主是我的
#12 回复于2022-04

这些loss_xy、loss_wh、loss_iou_aware分别都是什么意思呀

0
回复
在@后输入用户全名并按空格结束,可艾特全站任一用户