代码单元-
from ultralytics import YOLO
model = YOLO("yolov8n.pt")
results = model.train(data="/workspace/awadh/nvidia/apis_mellifera/v8/datasets/Apis_mellifera_IIT_front_view-1/data.yaml", epochs=200, batch=16, imgsz=640)
显示错误-
/usr/local/lib/python3.8/dist-packages/ultralytics/yolo/data/utils.py in check_dataset_yaml(dataset, autodownload)
232 LOGGER.warning(msg)
233 else:
--> 234 raise FileNotFoundError(msg)
235 t = time.time()
236 if s.startswith('http') and s.endswith('.zip'): # URL
FileNotFoundError:
Dataset '/workspace/awadh/nvidia/apis_mellifera/v8/datasets/Apis_mellifera_IIT_front_view-1/data.yaml' not found ⚠️, missing paths ['/workspace/awadh/nvidia/Species_detection/Apis_Mellifera/y8/datasets/Apis_mellifera_IIT_front_view-1/valid/images']
因此,同一行代码在 google colab 中工作,但是当我使用 jupyter 时它不起作用。数据集存在于文件位置中,但出现了此错误。
我发现您可以将数据集包含在“数据集”目录的根目录中。
这是您在“数据集”目录中应遵循的文件夹结构:
data.yaml
train
-images
-labels
test
-images
-labels
valid
-images
-labels
对于您的训练,请检查您的数据集是否位于“datasets/data.yaml”
之后,您可以使用此命令来训练您的数据集:
yolo task=detect mode=train model=yolov8s.pt data=datasets/data.yaml epochs=100 imgsz=640
我遇到了同样的问题 - 都在 colab 中工作,但在 Docker 上运行时找不到路径(明确抱怨验证路径)。设置完整路径解决了我的问题。比如说,在您的示例中,您应该将 data.yaml 更改为:
火车: /workspace/awadh/nvidia/Species_detection/Apis_Mellifera/y8/datasets/Apis_mellifera_IIT_front_view-1/train/images val:/workspace/awadh/nvidia/Species_detection/Apis_Mellifera/y8/datasets/Apis_mellifera_IIT_front_view-1/valid/images 测试:/workspace/awadh/nvidia/Species_detection/Apis_Mellifera/y8/datasets/Apis_mellifera_IIT_front_view-1/test/images
我在使用 ultralytics 8.0.22 的云 GPU 实例上发生了这种情况。降级到 ultralytics 8.0.20 运行 pytorch/pytorch Docker 镜像为我解决了这个问题。
pip uninstall ultralytics
pip install ultralytics==8.0.20
但是,在我运行 MacOS Ventura (Apple Silicon) 的本地计算机上,此问题仍然存在。