YOLO26训练如何resume?断点续训部署教程
最新 YOLO26 官方版训练与推理镜像
本镜像基于YOLO26 官方代码库构建,预装了完整的深度学习开发环境,集成了训练、推理及评估所需的所有依赖,开箱即用。
1. 镜像环境说明
- 核心框架:
pytorch == 1.10.0 - CUDA版本:
12.1 - Python版本:
3.9.5 - 主要依赖:
torchvision==0.11.0,torchaudio==0.10.0,cudatoolkit=11.3,numpy,opencv-python,pandas,matplotlib,tqdm,seaborn等。
该环境专为YOLO26系列模型的训练和推理优化设计,确保在主流GPU设备上稳定运行。所有依赖均已预先配置完成,避免了常见的版本冲突问题,用户可直接进入开发阶段。
2. 快速上手
启动完是这样的
2.1 激活环境与切换工作目录
在使用前,请先激活 Conda 环境,命令如下:
conda activate yolo镜像启动后,默认代码存放在系统盘。为了方便修改和持久化保存,请将代码复制到数据盘:
cp -r /root/ultralytics-8.4.2 /root/workspace/进入新目录开始操作:
cd /root/workspace/ultralytics-8.4.22.2 模型推理
YOLO26支持多种任务类型(检测、分割、姿态估计等),以下以姿态估计为例进行演示。
编辑detect.py文件:
# -*- coding: utf-8 -*- """ @Auth :落花不写码 @File :detect.py @IDE :PyCharm @Motto :学习新思想,争做新青年 """ from ultralytics import YOLO if __name__ == '__main__': # 加载模型 model = YOLO(model=r'yolo26n-pose.pt') # 执行推理 model.predict( source=r'./ultralytics/assets/zidane.jpg', save=True, show=False )参数说明:
- model:指定模型权重路径,可以是
.pt或.yaml文件 - source:输入源,支持图片、视频路径或摄像头编号(如
0) - save:是否保存结果,默认
False,建议设为True - show:是否实时显示窗口,默认
True,服务器环境下建议关闭
运行推理:
python detect.py推理结果会自动保存在
runs/detect/predict/目录下,终端也会输出检测信息。
2.3 模型训练
要训练自定义数据集,需准备 YOLO 格式的数据,并修改data.yaml配置文件。
上传数据集后,编辑data.yaml:
train: /root/workspace/dataset/images/train val: /root/workspace/dataset/images/val nc: 80 names: ['person', 'bicycle', 'car', ...]
data.yaml 参数解析如图所示:
接下来配置train.py:
# -*- coding: utf-8 -*- """ @Auth :落花不写码 @File :train.py @IDE :PyCharm @Motto :学习新思想,争做新青年 """ import warnings warnings.filterwarnings('ignore') from ultralytics import YOLO if __name__ == '__main__': # 从配置文件构建模型结构 model = YOLO(model='/root/workspace/ultralytics-8.4.2/ultralytics/cfg/models/26/yolo26.yaml') # 加载预训练权重(可选) model.load('yolo26n.pt') # 注意:部分场景下加载预训练权重提升有限 # 开始训练 model.train( data=r'data.yaml', imgsz=640, epochs=200, batch=128, workers=8, device='0', optimizer='SGD', close_mosaic=10, resume=False, # 关键参数:是否断点续训 project='runs/train', name='exp', single_cls=False, cache=False, )执行训练命令:
python train.py训练过程中会实时输出损失值、mAP等指标,并自动保存最佳模型和最后检查点。
2.4 下载训练结果
训练完成后,模型文件默认保存在runs/train/exp/weights/目录下。
可通过 Xftp 等工具下载:
- 将右侧远程服务器文件拖拽至左侧本地目录
- 单个文件可双击直接下载
- 大文件建议先压缩再传输,节省时间
双击传输任务可查看进度:
3. 如何实现断点续训(Resume Training)
当训练因意外中断(如断电、手动停止)时,可以通过resume功能继续训练,无需从头开始。
3.1 断点续训原理
YOLO26 在每次训练时会自动保存两个关键文件:
last.pt:最新一轮的模型权重opt.yaml:训练超参数记录
这些文件位于runs/train/exp/weights/和同级目录中,用于恢复训练状态。
3.2 启用 Resume 的正确方式
只需将train.py中的resume参数改为True,并指向上次中断的权重文件路径:
model.train( ... resume=True, # 启用断点续训 # 注意:启用 resume 后,其他参数(如 epochs, batch)会被自动读取,无需重复设置 )或者直接通过命令行调用:
yolo train resume model=runs/train/exp/weights/last.pt3.3 实际操作步骤
- 确保原始训练目录未被删除
- 检查
runs/train/exp/weights/last.pt是否存在 - 修改代码或使用 CLI 命令启用
resume - 重新运行训练脚本
系统会自动:
- 恢复模型权重
- 继承原训练的超参数
- 从上次结束的 epoch 继续训练
- 使用相同的日志和保存路径
注意事项:
- 不要手动更改
epochs、batch等参数,否则可能导致行为异常- 若想调整学习率等参数,应在
opt.yaml中修改后再 resume- 多卡训练中断后 resume,需保证 GPU 数量一致
3.4 验证 Resume 是否成功
成功 resume 后,终端会输出类似信息:
Resuming training from runs/train/exp/weights/last.pt Loading model and optimizer state... Starting at epoch 87 / 200这表明训练已从第 87 轮继续,而非从 0 开始。
4. 已包含权重文件
镜像内已预下载常用权重文件,放置在代码根目录下,便于快速测试与迁移学习。
包含但不限于:
yolo26n.pt:轻量级检测模型yolo26s.pt:标准尺寸yolo26m.pt:中等规模yolo26l.pt:大型模型yolo26x.pt:超大容量yolo26n-seg.pt:实例分割版本yolo26n-pose.pt:姿态估计专用
这些模型均可直接用于推理或作为预训练权重加载。
5. 常见问题与解决方案
5.1 数据集路径错误
现象:提示No labels found或Dataset not found
解决方法:
- 检查
data.yaml中路径是否为绝对路径或相对于项目根目录的相对路径 - 确认图像与标签文件一一对应
- 标签格式应为
.txt,每行格式:class_id center_x center_y width height
5.2 显存不足(CUDA Out of Memory)
现象:训练启动时报错CUDA out of memory
解决方法:
- 减小
batch大小(如从 128 改为 64 或 32) - 降低
imgsz(如从 640 改为 320) - 设置
cache=False禁用缓存 - 使用梯度累积:添加
amp=True和适当调整accumulate参数
5.3 Resume 失败或从头开始
现象:设置了resume=True但仍然从 epoch 0 开始
原因分析:
last.pt文件丢失或损坏- 训练目录被移动或重命名
- 手动修改了
epochs导致逻辑判断失败
解决方案:
- 确保
runs/train/exp/目录完整 - 使用 CLI 方式调用更可靠:
yolo train resume model=xxx.pt - 避免手动干预训练过程中的配置文件
5.4 环境激活失败
现象:运行conda activate yolo报错
解决方法:
- 先运行
source ~/.bashrc初始化 conda - 检查是否存在该环境:
conda env list - 如缺失,可用
conda create -n yolo python=3.9重建
6. 总结
6.1 核心要点回顾
本文详细介绍了基于官方 YOLO26 镜像的完整训练与推理流程,重点解决了“如何 resume”这一高频需求。关键点包括:
- 镜像开箱即用,省去复杂环境配置
- 推理脚本简单易改,支持多任务类型
- 训练流程标准化,只需修改
data.yaml和train.py - 断点续训功能强大:通过
resume=True或 CLI 命令即可恢复训练 - 权重文件预置齐全,支持快速迁移学习
6.2 实践建议
- 定期备份:即使有 resume 功能,也建议定期将
runs/train/exp打包下载 - 合理命名:不同实验使用不同
name参数,避免覆盖 - 监控资源:注意显存占用,避免 OOM 导致中断
- 善用 last.pt:它是 resume 的核心,切勿删除
6.3 下一步行动
现在你已经掌握了 YOLO26 的基本使用和断点续训技巧,下一步可以尝试:
- 在自己的数据集上微调模型
- 调整超参数提升性能
- 使用更大模型(如 yolo26x)进行高精度检测
- 部署模型到边缘设备进行实时推理
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。