0

0

YoloV7训练报错“Dataset not found”解决方案

碧海醫心

碧海醫心

发布时间:2026-01-28 14:21:22

|

199人浏览过

|

来源于php中文网

原创

YoloV7训练报错“Dataset not found”解决方案

yolov7训练时提示“dataset not found”,即使yaml中路径配置正确,也常因残留的旧缓存文件(如`.cache`)导致路径误读,本文提供完整排查与解决步骤。

在使用 YOLOv7 进行模型训练时,出现 Exception: Dataset not found 错误是一个高频问题。值得注意的是:该错误并非总源于 YAML 配置错误——即使你已准确填写 train、val、test 的绝对或相对路径(如 train: ./datasets/mydata/images/train),仍可能因缓存机制失效而触发异常。

根本原因分析

YOLOv7 在首次加载数据集时,会自动生成缓存文件(如 *.cache),其中记录了数据路径、图像尺寸、标签统计等元信息。若后续你修改了 custom_data.yaml 中的路径,但未清除旧缓存,check_dataset() 函数会优先读取 .cache 文件中的过期路径,进而校验失败并抛出 Dataset not found 异常。

解决步骤(推荐顺序执行)

  1. 清除所有 .cache 文件
    在项目根目录及数据集目录下递归搜索并删除:

    # Windows(PowerShell)
    Get-ChildItem -Path . -Recurse -Filter "*.cache" | Remove-Item -Force
    
    # 或手动定位删除(常见位置):
    # - yolov7/ 项目根目录下
    # - datasets/mydata/ 下
    # - utils/ 或 data/ 子目录中
  2. 验证 YAML 路径格式规范
    确保 custom_data.yaml 中路径为相对项目根目录的正确路径(非 Jupyter 工作目录):

    train: datasets/mydata/images/train  # ✅ 推荐:相对路径(以train.py所在目录为基准)
    val: datasets/mydata/images/val
    test: datasets/mydata/images/test
    
    nc: 3
    names: ['cat', 'dog', 'bird']

    ⚠️ 注意:避免使用 ./ 开头(部分版本解析不稳定),也不要用绝对路径(跨平台/环境易失效)。

  3. 检查路径实际存在性与权限
    在训练前,于 Python 中快速验证:

    import os
    from pathlib import Path
    
    data_yaml = "custom_data.yaml"
    with open(data_yaml) as f:
        import yaml
        data = yaml.safe_load(f)
    
    for split in ['train', 'val', 'test']:
        p = Path(data[split])
        print(f"{split}: {p} → exists? {p.exists()}")

    若输出 False,请检查路径拼写、大小写、是否遗漏 images/ 或 labels/ 子目录。

    Jamboss
    Jamboss

    Jamboss是一款简单的AI音乐生成App,可以一键生成歌曲。

    下载
  4. Jupyter Notebook 用户特别注意

    • 确保 notebook 的当前工作目录与 train.py 所在目录一致(可通过 !pwd 或 os.getcwd() 查看);
    • 不要直接在 notebook 中调用 !python train.py ...,建议改用终端运行,避免路径上下文混淆;
    • 如必须在 notebook 中调试,先执行:
      import os
      os.chdir("C:/Users/Nirajan/Desktop/Minor project/yoloV7")  # 切换至项目根目录

补充建议

  • 首次运行前,可临时添加日志到 utils/general.py 的 check_dataset() 函数中(第173行附近),打印 data_dict 内容,确认实际读取路径;
  • 使用 --noautoanchor 或 --cache ram 参数不会绕过此检查,清缓存是必要前提
  • 若使用 WSL 或 Docker,还需确保路径在容器内外映射一致。

完成上述操作后重新启动训练,90% 以上的 “Dataset not found” 问题将被解决。记住:YOLOv7 的鲁棒性依赖于干净的环境与显式的路径约定——缓存不是敌人,但遗忘清理它,就是训练失败的第一步。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
k8s和docker区别
k8s和docker区别

k8s和docker区别有抽象层次不同、管理范围不同、功能不同、应用程序生命周期管理不同、缩放能力不同、高可用性等等区别。本专题为大家提供k8s和docker区别相关的各种文章、以及下载和课程。

280

2023.07.24

docker进入容器的方法有哪些
docker进入容器的方法有哪些

docker进入容器的方法:1. Docker exec;2. Docker attach;3. Docker run --interactive --tty;4. Docker ps -a;5. 使用 Docker Compose。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

517

2024.04.08

docker容器无法访问外部网络怎么办
docker容器无法访问外部网络怎么办

docker 容器无法访问外部网络的原因和解决方法:配置 nat 端口映射以将容器端口映射到主机端口。根据主机兼容性选择正确的网络驱动(如 host 或 overlay)。允许容器端口通过主机的防火墙。配置容器的正确 dns 服务器。选择正确的容器网络模式。排除主机网络问题,如防火墙或连接问题。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

417

2024.04.08

docker镜像有什么用
docker镜像有什么用

docker 镜像是预构建的软件组件,用途广泛,包括:应用程序部署:简化部署,提高移植性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

454

2024.04.08

Docker容器化部署与DevOps实践
Docker容器化部署与DevOps实践

本专题面向后端与运维开发者,系统讲解 Docker 容器化技术在实际项目中的应用。内容涵盖 Docker 镜像构建、容器运行机制、Docker Compose 多服务编排,以及在 DevOps 流程中的持续集成与持续部署实践。通过真实场景演示,帮助开发者实现应用的快速部署、环境一致性与运维自动化。

42

2026.02.11

Python WebSocket实时通信与异步服务开发实践
Python WebSocket实时通信与异步服务开发实践

本专题聚焦 Python 在实时通信场景中的开发实践,系统讲解 WebSocket 协议原理、长连接管理、消息推送机制以及异步服务架构设计。内容包括客户端与服务端通信实现、连接稳定性优化、消息队列集成及高并发处理策略。通过完整案例,帮助开发者构建高效稳定的实时通信系统,适用于聊天应用、实时数据推送等场景。

2

2026.03.18

Java Spring Security权限控制与认证机制实战
Java Spring Security权限控制与认证机制实战

本专题围绕 Java 后端安全体系建设展开,重点讲解 Spring Security 在权限控制与认证机制中的应用实践。内容涵盖用户认证流程、权限模型设计、JWT 鉴权方案、OAuth2 集成以及接口安全防护策略。通过实际项目案例,帮助开发者构建安全可靠的后端认证体系,提升系统安全性与可扩展能力。

0

2026.03.18

抖漫入口地址合集
抖漫入口地址合集

本专题整合了抖漫入口地址相关合集,阅读专题下面的文章了解更多详细地址。

110

2026.03.17

多环境下的 Nginx 安装、结构与运维实战
多环境下的 Nginx 安装、结构与运维实战

本专题聚焦多环境下Nginx实战,详解开发、测试及生产环境的差异化安装策略与目录结构规划。深入剖析配置模块化设计、灰度发布流程及跨环境同步机制。结合监控告警、故障排查与自动化运维工具,提供全链路管理方案,助力团队构建灵活、高可用的Nginx服务体系,从容应对复杂业务场景挑战。

13

2026.03.17

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 22.5万人学习

Django 教程
Django 教程

共28课时 | 5.1万人学习

SciPy 教程
SciPy 教程

共10课时 | 2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号