You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Ultralytics YOLOv8训练模型遇FileNotFoundError的问题排查

问题

参考LearnOpenCV教程,使用自定义坑洞数据集训练Ultralytics YOLOv8模型,配置的yaml文件如下:

path: d:/MyData/Yolo8_tutorial/pothole_dataset_v8
train: 'train/images'
val: 'valid/images'

# class names
names:
    0: 'pothole'

在Jupyter Notebook中运行的训练代码:

# Load the model.
model = YOLO('yolov8n.pt')
 
# Training.
results = model.train(
   data=pothole_yaml_file,
   epochs=1,
   name='yolov8n_v8_50e'
)

训练约7分钟后出现错误:

Validating d:\MyData\Yolo8_tutorial\runs\detect\yolov8n_v8_50e7\weights\best.pt...
Ultralytics YOLOv8.0.72  Python-3.9.0 torch-2.0.0+cu118 CUDA:0 (NVIDIA GeForce GTX 1050, 3072MiB)
Model summary (fused): 168 layers, 3005843 parameters, 0 gradients, 8.1 GFLOPs

FileNotFoundError: Dataset 'pathole_data.ymal' for task=detect not found 

错误原因

  • 文件名拼写错误:错误信息里的pathole_data.ymal存在两处错误,一是单词拼写错误(pathole应为pothole),二是文件后缀错误(.ymal应为.yaml)
  • 训练代码中pothole_yaml_file变量指向的文件路径/名称有误,导致训练进入验证阶段时,无法找到正确的数据集配置文件

解决方法

  • 检查pothole_yaml_file变量的赋值,确保它指向你实际创建的yaml文件的完整且正确的路径,文件名必须完全匹配(比如你的yaml文件如果命名为pothole_data.yaml,就不能写成错误的pathole_data.ymal)
  • 确认你的yaml文件后缀是.yaml,文件名拼写为pothole而非pathole
  • 验证yaml文件的存放位置:在Jupyter Notebook中可以执行import os; print(os.getcwd())查看当前工作目录,确保yaml文件的路径(相对路径或绝对路径)能被当前环境正确访问,必要时调整文件路径或切换工作目录

内容的提问来源于stack exchange,提问作者mans

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 01:37:42