news 2026/4/20 18:58:09

YOLO26数据集怎么配?data.yaml修改步骤详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
YOLO26数据集怎么配?data.yaml修改步骤详解

YOLO26数据集怎么配?data.yaml修改步骤详解

最新 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的完整运行环境提供了无缝支持,无需手动安装复杂依赖。无论是本地部署还是云端使用,都能快速进入模型训练和推理阶段,特别适合刚接触YOLO系列的新手用户以及希望高效迭代项目的开发者。

2. 快速上手


启动完是这样的

2.1 激活环境与切换工作目录

在使用前,请先激活 Conda 环境,命令如下:

conda activate yolo

镜像启动后,默认代码存放在系统盘。为了防止误操作影响原始文件,并方便后续修改,建议将代码复制到数据盘进行操作。执行以下命令完成复制:

cp -r /root/ultralytics-8.4.2 /root/workspace/

随后进入新目录开始工作:

cd /root/workspace/ultralytics-8.4.2


这一步看似简单,但非常重要——它确保你在可写路径下进行开发,避免权限问题导致训练中断或配置无法保存。

3. data.yaml 文件详解与修改方法

3.1 什么是 data.yaml?

data.yaml是 YOLO 模型识别数据集的核心配置文件。它告诉模型:你的数据在哪里、有多少类、每个类别叫什么名字。没有正确配置这个文件,哪怕模型再强大也“看不懂”你给的数据。

YOLO26 延续了 Ultralytics 的设计风格,data.yaml通常位于项目根目录或自定义数据集文件夹中。一个标准的配置长这样:

train: ../datasets/coco/train/images val: ../datasets/coco/val/images test: ../datasets/coco/test/images nc: 80 names: ['person', 'bicycle', 'car', ...]

我们来逐项解释:

  • train: 训练集图像路径(相对或绝对)
  • val: 验证集图像路径
  • test: 测试集图像路径(可选)
  • nc: 类别数量(number of classes)
  • names: 所有类别的名称列表,顺序必须与标签索引一致

3.2 如何准备自己的数据集?

要让 YOLO26 学会识别你关心的目标,首先要准备好符合 YOLO 格式的数据集。结构如下:

my_dataset/ ├── images/ │ ├── train/ │ │ └── img1.jpg │ ├── val/ │ │ └── img2.jpg │ └── test/ │ └── img3.jpg └── labels/ ├── train/ │ └── img1.txt ├── val/ │ └── img2.txt └── test/ └── img3.txt

每张图片对应一个.txt标注文件,内容格式为:

<class_id> <x_center> <y_center> <width> <height>

所有坐标都是归一化后的值(0~1),这是 YOLO 的硬性要求。

你可以用 LabelImg、CVAT 或其他标注工具生成这些文件。关键是要保证:

  • 图片和标签文件同名
  • 路径层级清晰
  • 类别编号从 0 开始连续排列

3.3 修改 data.yaml 实际操作

假设你已将数据集上传至/root/workspace/my_dataset,现在需要创建并编辑data.yaml文件。

首先,在代码目录下新建文件:

touch data.yaml

然后用nanovim编辑:

nano data.yaml

填入以下内容(根据实际情况调整):

train: /root/workspace/my_dataset/images/train val: /root/workspace/my_dataset/images/val test: /root/workspace/my_dataset/images/test nc: 3 names: ['cat', 'dog', 'bird']

保存退出即可。

重要提示:路径一定要写对!推荐使用绝对路径,避免因相对路径计算错误导致找不到数据。如果训练时报错 “No images found”,八成是路径写错了。

3.4 常见配置错误排查

问题现象可能原因解决方案
报错“No images found”路径错误或空目录检查train/val路径是否正确,确认目录中有图片
类别数不匹配ncnames数量不符确保nc等于len(names)
标签越界标注文件中的 class_id 超出范围检查所有.txt文件,class_id 应在[0, nc-1]范围内
图像读取失败图片损坏或格式不支持删除异常图片或统一转为 JPG/PNG

一个小技巧:可以在 Python 中临时测试路径是否有效:

import os print(os.listdir("/root/workspace/my_dataset/images/train")[:5])

只要能列出文件名,就说明路径没问题。

4. 模型训练全流程演示

4.1 train.py 配置说明

YOLO26 的训练入口是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, )

参数说明:

  • data: 指向你刚修改好的data.yaml
  • imgsz: 输入图像尺寸,常用 640
  • epochs: 训练轮数,一般设为 100~300
  • batch: 批次大小,根据显存调整(128 对应 A100)
  • workers: 数据加载线程数,建议设为 GPU 数量的 2~4 倍
  • device: 使用哪块 GPU,'0' 表示第一块
  • optimizer: 优化器选择,SGD 更稳定,Adam 收敛快
  • close_mosaic: 最后 N 个 epoch 关闭 Mosaic 数据增强,提升收敛质量
  • resume: 断点续训,训练中断后可设为 True 继续
  • project/name: 结果保存路径,最终会生成runs/train/exp/weights/best.pt

4.2 启动训练

保存train.py后,在终端运行:

python train.py

训练过程中会实时输出损失值、mAP 等指标。最佳模型会自动保存在weights/best.pt,最终结果也会生成 PR 曲线、混淆矩阵等可视化图表,帮助你分析性能瓶颈。

5. 推理与结果查看

5.1 detect.py 简单修改即可推理

训练完成后,可以用detect.py对新图片或视频做预测。代码如下:

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: 指定模型权重路径,可以是best.pt自定义模型
  • source: 输入源,支持图片路径、视频路径、摄像头(填 0)
  • save: 是否保存结果图,默认 False
  • show: 是否弹窗显示,默认 True,服务器环境下建议设为 False

运行命令:

python detect.py

结果会保存在runs/detect/predict/目录下。


6. 模型与数据下载管理

训练结束后,模型权重默认保存在服务器上。你可以通过 Xftp 等工具将其下载到本地使用。

操作方式很简单:

  • 打开 Xftp 连接实例
  • 左侧是你本地电脑的文件系统
  • 右侧是远程服务器的目录结构
  • 找到runs/train/exp/weights/文件夹
  • best.ptlast.pt双击拖拽到左侧本地目录即可下载

小贴士:大文件建议先压缩再传输。例如:

zip best.zip runs/train/exp/weights/best.pt

下载后再解压,能显著减少等待时间。

上传数据集也是同样操作,只是方向反过来:把本地数据拖到右侧服务器目录即可。

7. 总结

本文详细讲解了如何在 YOLO26 官方镜像中配置data.yaml并完成整个训练流程。核心要点回顾:

  1. 环境激活不可少:务必执行conda activate yolo,否则依赖缺失。
  2. 数据路径要准确data.yaml中使用绝对路径最稳妥,避免相对路径陷阱。
  3. 数据格式要规范:图片与标签一一对应,类别编号从 0 开始。
  4. 训练参数可调优batchepochsoptimizer根据硬件和任务灵活设置。
  5. 结果下载很方便:Xftp 拖拽即可完成模型传输,适合本地部署或二次集成。

只要你按照这个流程走一遍,就能成功用自己的数据训练出专属的 YOLO26 模型。无论是做科研、比赛还是工业落地,这套方法都经得起实战检验。


获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 1:54:32

CentOS和Ubuntu配置差异,你知道吗?

CentOS和Ubuntu配置差异&#xff0c;你知道吗&#xff1f; 1. 引言&#xff1a;为什么系统差异会影响自动化脚本部署 你有没有遇到过这样的情况&#xff1a;在一台服务器上运行得好好的开机启动脚本&#xff0c;换到另一台机器却完全不起作用&#xff1f;尤其是当你从 CentOS…

作者头像 李华
网站建设 2026/4/18 14:43:44

探索决策树回归:用MATLAB预测房价

DT决策树回归预测MATLAB代码 代码注释清楚。 可以读取本地EXCEL数据。 很方便&#xff0c;初学者容易上手。 温馨提示&#xff1a;联系请考虑是否需要&#xff0c;程序代码商品&#xff0c;一经售出&#xff0c;概不退换。在机器学习的世界里&#xff0c;决策树回归模型是一…

作者头像 李华
网站建设 2026/4/17 14:37:53

Qwen轻量模型选型指南:0.5B参数适用场景分析

Qwen轻量模型选型指南&#xff1a;0.5B参数适用场景分析 1. 小而精的AI引擎&#xff1a;为什么0.5B参数值得你关注 在大模型动辄上百亿、千亿参数的今天&#xff0c;一个仅5亿参数的模型听起来似乎“不够看”。但如果你正面临以下问题&#xff1a; 设备资源有限&#xff0c;…

作者头像 李华
网站建设 2026/4/17 9:35:40

【干货收藏】上下文工程详解:构建高效AI应用的核心方法论

上下文工程是面向开发者的大模型应用设计方法&#xff0c;超越简单提示词&#xff0c;强调动态构建系统化上下文。它结合科学方法论&#xff08;信息组织、token控制&#xff09;与艺术直觉&#xff08;模型交互经验&#xff09;&#xff0c;通过写入、筛选、压缩、隔离四大策略…

作者头像 李华
网站建设 2026/4/18 23:45:00

程序员如何转行AI大模型领域?(小白必收藏入门指南)

给想转行AI大模型的程序员、技术小白提个醒&#xff1a;别再死磕硬件配置了&#xff0c;先动手实践才是王道&#xff01; 我认识个朋友&#xff0c;一门心思想切入AI领域&#xff0c;上来就陷入了“硬件焦虑”。花了半个月疯狂研究AI炼丹的显卡配置、算力要求&#xff0c;又蹲…

作者头像 李华
网站建设 2026/4/18 13:09:30

Qwen2.5-0.5B如何实现打字机效果?流式输出详解

Qwen2.5-0.5B如何实现打字机效果&#xff1f;流式输出详解 1. 为什么这个小模型能“边想边说”&#xff1f; 你有没有用过那种AI聊天机器人——你一提问&#xff0c;它沉默几秒&#xff0c;然后“唰”地一下把整段话全蹦出来&#xff1f;体验上总感觉不够自然。 但如果你试过…

作者头像 李华