YOLO resume断点续训(不能用官方的权重,是自己训练一半生成的last.pt)

训练 YOLO 模型(v5/v8/v11)常需数百 epoch,耗时数天。断电、SSH 断开、显存溢出、进程误杀等意外极易导致训练中断,从头开始会浪费大量算力与时间。

断点续训(Resume Training)可从最近保存的检查点(checkpoint) 恢复训练,完整还原模型权重、优化器状态、学习率调度与训练进度

训练中断后,在对应的runs中对应训练的结果中包含两个关键文件:

  • last.pt:最新epoch的完整训练快照(用于续训)
  • best.pt :验证集最优权重(仅用于推理,不可直接续训)

last.pt 绝非仅模型权重,而是全训练状态快照:

  • 模型网络参数(权重 + 偏置)
  • 优化器状态(SGD/Adam 动量、梯度缓存)
  • 学习率调度器状态(当前步数、余弦退火参数)
  • 当前 epoch 计数与剩余轮数
  • 数据加载器随机种子(保证数据增强一致性)

成功续训日志会显示:

from epoch 217:接续中断前轮数,成功

from epoch 0:用了 best.pt 或路径错误,从头训练

必守前提(否则续训失败)

配置完全一致:data.yaml(类别数)、模型 yaml(网络结构)、batch size、device、超参(lr0、momentum)不可修改

last.pt 完整 :文件未损坏、路径正确、由同一代码版本生成

不混用 best.pt:best.pt 不含优化器状态,只能用于推理

在对应的.yaml文件中,只需要将resume修改为True,然后训练导入的预训练权重用训练一半的last.pt。

复制代码
from ultralytics import YOLO

# 加载预训练模型
model = YOLO("./runs/detect/exp2/last.pt")  # n/s/m/l/x 任选

# 开始训练
model.train(
    data="your_data.yaml",    # 你的数据集配置 .\ultralytics\cfg\***.yaml
)
相关推荐
Easy_API1 小时前
2.8万亿参数,编程反超GPT-6 Astra:Kimi K3.1 Pro把开源模型推到了哪一步
大数据·人工智能·gpt·深度学习
小奶包他干奶奶3 小时前
AI学习——1、机器学习概念
人工智能·机器学习
迪菲赫尔曼6 小时前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测
Angeldream1237 小时前
第 10 章 医学影像伦理与安全
图像处理·人工智能·python·安全·机器学习·医学影像
吕布辕门8 小时前
DeepSeek 大模型落地应用与价值实现指南
人工智能·机器学习
迪菲赫尔曼8 小时前
【基础篇 12】把环境与源码接起来:检查 GPU,再安装服务器上的项目
运维·服务器·开发语言·人工智能·python·yolo·目标检测
龙腾AI白云9 小时前
大模型检索增强生成(RAG)的技术原理与架构设计
数据库·python·机器学习·知识图谱
智购科技自动售货机厂家9 小时前
让AI经营自动售货机:从Project Vend看工具权限与业务规则~YH
大数据·服务器·单片机·嵌入式硬件·深度学习
用户0807759078510 小时前
第三方并行库"静默算错":一次 ring attention 的排查记录
深度学习
yyk3332410 小时前
YOLOv4算法
人工智能·yolo·目标跟踪