首页IT科技yolo停止训练(YOLOV5-断点训练/继续训练)

yolo停止训练(YOLOV5-断点训练/继续训练)

时间2025-09-14 16:48:53分类IT科技浏览29612
导读:YOLOV5-断点训练/继续训练...

YOLOV5-断点训练/继续训练

情况:

1.训练过程中中断了                         ,继续训练

2.训练完了                                     ,但是未收敛              ,在这个基础上                   ,还想用这个权重                         、学习率等参数继续训练多一些批次

1. 训练过程中中断了                                    ,继续训练

断电                                       、或者什么原因中断了                    ,比如设定epoch为200             ,但是在90这里中断了                                    ,想从断点这里继续 训练到 200个epoch

直接在trainds.py设置参数–resume的defualt=True即可(在代码 517行附近) 1.parser.add_argument(--resume, nargs=?, const=True, default=True, help=resume most recent training)

2.训练完原有epoch                          ,发现没有收敛       ,想继续训练

训练完原有epoch后                                     ,但还继续训练                                ,比如设置epoch为30,已经训练完了                               ,但是没有收敛                                      ,想使用训练了30 epoch的权重继续训练40个epoch       , 总共就是70个epoch

**注意:**不是直接在train.py设置weight参数为训练好的权重(last.pt)                         ,然后设置epoch为70                                     ,这样不行              ,因为学习率等超参数启动时还是按照默认的                         。(自己把一些超参数设置好也可以                   ,比较麻烦)

在train.py代码里面设置就可以使用原有30 epoch的权重后继续训练到40epoch

step1:

先将–resume的defualt改为True                                    ,再将–epochs设为想要继续训练到的epochs                    ,即defualt=70(在trainds.py代码的513行附近)

parser.add_argument(--epochs, type=int, default=70)

step2:

在trainds.py文件中             ,按下Ctrl+F搜索Epochs定位到大概197行的位置                                    ,做以下两处修改:

添加一行代码:ckpt[‘epoch’] = 30

修改代码:start_epoch = ckpt[‘epoch’](后面不加1)

注意:这两处修改是为了断点训练                          ,如果不再需要断点训练       ,请将这两处修改都还原                                     。

step3:

在trainds.py文件中                                     ,按下Ctrl+F搜索replace定位到大概565行的位置                                ,做以下两处修改:

如图添加一行代码:init_epochs = opt.epochs(记录最开始由epochs参数设定的数值70,因为replace这行代码                               ,将epochs替换成了原始的epochs数值30)

修改代码:如图进行添加                                      ,reinstate恢复成设定的epochs

做完以上3个修改       ,训练就会从第30个epoch的基础上进行继续训练到70个epoch                         ,和直接设置epoch为70一样

参考文献:https://blog.csdn.net/LWD19981223

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
桌面internet explorer图标删不掉(在WIN7中,为什么桌面上的ie图标无法删除?) best wishes for you的翻译(Best Proxy Extensions For Your Google Chrome)