Weird format for the yaml

When exporting for YOLOv5, the format of the outputted yaml is as followes:

- cone
- cube
nc: 2
  license: Public Domain
  project: 2023-vision
  version: 5
  workspace: frc2023public
test: ../test/images
train: 2023-Vision-5/train/images
val: 2023-Vision-5/valid/images

Why are the values of test, train, and val not test/images, train/images, and val/images?
Why is the format of the directory of test different than the other two?

Hi @Lavi_Arzi

That is just our implementation of the YOLOv5 YAML format. Alternatively, you could add a path property for the dataset root directory.

It seems like the ultralytics YOLOv5 script doesn’t handle that format correctly, and searches the files at base_dir/yolov5/2023-Vision-5. Why is that the output format if the official training script isn’t set up for it?

Hi @Lavi_Arzi

The export formats, while somewhat consistent throughout many frameworks, could handle things differently based on which script handles it.

With that said, our export formats should work with Ultralytics training scripts with none or minimal alterations, but we make the utmost effort to ensure they work in our own notebooks, such as the YOLOv5 training notebook, and our other notebooks, which you can view in our GitHub. If the dataset isn’t working with our notebooks, please let us know.

Thank you. It seems the problem was that I was downloading the dataset into base_dir/datasets/ and when doing it in the same directory of the script (base_dir/yolov5) it works correctly.

Running this notebook leads to an error, because yolo looks for the dataset in /content/ultralytics/dataset_name/dataset_name.

Hi @Lavi_Arzi

Could you specify where (which cell or line) you experienced this error so that we can help you better?

Also, did you run this in Google Colab? If so, could you please share your copy of the notebook? It would be very helpful.

In the training cell. I ran that exact notebook, on Google colab.