使用YOLO训练好自己的模型并持续训练
- 一、断点续传
- 二、在上次训练结果的基础上继续开始训练
- 三、last.pt 和 best.pt区别
运行环境:Ubuntu18.04 + anaconda虚拟环境
一、断点续传
对于上次训练时意外中断的情况
将patser中第9个参数resume,设置为default=True
或运行:
python train.py --resume True
二、在上次训练结果的基础上继续开始训练
将patser中第1个参数weights,设置为上次运行完
~/yolov5/runs/train/exp/weights/last.pt
同样可以在运行时进行修改,如:
python train.py --weights runs/train/exp/weights/last.pt
三、last.pt 和 best.pt区别
有博主提示:不能加载best,只能加载last,best里面没有节点信息。
last.pt 和 best.pt 是在 YOLO 训练过程中生成的两个不同的模型权重文件,它们之间的主要区别如下:
- last.pt
定义:这是训练过程中最后一个 epoch 的模型权重,表示训练结束时的状态。
包含所有训练迭代的学习成果。
不一定是性能最好的模型,可能在训练后期过拟合于训练数据。
- best.pt
定义:这是在训练过程中根据验证集性能(如 mAP 或损失值)保存的最佳模型权重。
在训练过程中,模型在验证集上的表现最好的时刻的权重。
通常是在多个 epoch 中保存的最佳结果,旨在提高模型的泛化能力。
- 对pt文件的选择使用
- 使用 last.pt:如果你希望在模型训练的最后状态基础上进行进一步训练或评估。
- 使用 best.pt:如果你想要在验证集上表现最佳的模型进行推理或部署。