目录
前提:虽然成功训练完了,但是想到以后万一训练轮数太少没收敛,怎么在已经训练好的模型基础上继续进行多轮epoch的训练。或者训练着突然中断,之前训练的岂不是功亏一篑。
起因:在kaggle上训练完150轮之后查看结果,mAP值和recall值感觉不是特别高,思考是不是再多训练几轮网络会更收敛。寻找继续训练的方法。
找了好多解决办法,都没解决问题,一下午没了,已经没有动力debug了,记录一下,方便下次有同样的问题拿来再尝试。
继续训练包括两种方式:
- 训练过程中中断了,继续训练
- 训练完了,但是未收敛,在这个基础上,还想用这个权重、学习率等参数继续训练多一些批次
尝试1--唯一运行成功的
思路:
直接用last.pt权重,epoch=要继续训练的轮数,比如想在训练100轮,epoch=100
!python train.py --weights /kaggle/input/face-mask/last.pt --epochs 100 --device 0
思考:
相当于重新在原来基础上重新训练,并不是继续训练,结果也并没有很好,有一种不连贯的感觉。

- 原来训练的结果150轮:

- 重新用last.pt训练150轮的结果:(以为再训练150轮就能更好,结果并没有,糟糕糟糕OMG)

尝试2
- 思路:
- 把要训练的轮次分两次训练,比如100+100,第一次训练epoch=100,

最低0.47元/天 解锁文章
514

被折叠的 条评论
为什么被折叠?



