AI Notebooks - Tutorial - Train YOLOv5 on a custom dataset

How to train the YOLOv5 model on a custom dataset with AI Notebooks

Last updated 10th March, 2023.

Objective

The purpose of this tutorial is to show how it is possible to train YOLOv5 to recognize objects. YOLOv5 is an object detection algorithm. Although closely related to image classification, object detection performs image classification on a more precise scale. Object detection locates and categories features in images.

image

It is based on the YOLOv5 open source repository by Ultralytics.

Requirements

Instructions

Uploading your dataset on Public Cloud Storage

If you want to upload it from the OVHcloud Control Panel, go to the Object Storage section and create a new object container by clicking Object Storage > Create an object container.

image

If you want to run it with the CLI, just follow this guide. You have to choose the region, the name of your container and the path where your data is located and use the following command:

ovhai data upload <region> <container> <paths>

This tutorial has been realized with the COCO dataset. If you don't have your own dataset, you can use it by downloading the COCO version "YOLOv5 PyTorch" available for free on Roboflow.

Launching and accessing Jupyter notebook with PyTorch framework

You need to attach a volume if your data is in your OVHcloud object storage and you want to use it during your experiment, or if you need to save the results of your work in the object storage. For more information on data, volumes and permissions, see our guide on data.

If you want to launch it from the OVHcloud Control Panel, just follow this guide.

  1. Name your notebook
  2. Choose Jupyterlab editor
  3. Select the PyTorch framework
  4. Choose the access type
  5. Select the datacenter location (same region as your object container)
  6. Choose the number of GPUs or CPUs you need

For this tutorial, we advise you to use at least 2 GPUs.

  1. Attach Object Storage containers

In this tutorial, you need 2 object containers.

  • the first object container contains your dataset (labelled and separated) and your data.yaml file.
  • the second object container is empty. It is intended to save your model weights (for a future inference for example).

image

Once the repository has been cloned, find the YOLOv5 notebook by following this path: ai-training-examples > notebooks > computer-vision > object-detection > miniconda > notebook_object_detection_yolov5.ipynb.

  1. Attach public ssh keys only if you want to
  2. Check that everything is ok and launch your notebook

If you want to launch it with the CLI, choose the volumes you want to attach and the number of GPUs (<nb-gpus>) to use on your notebook and use the following command:

ovhai notebook run pytorch jupyterlab \
    --name <name> \
    --gpu <nb-gpus> \
    --volume <dataset-container>@<region>/:/workspace/data:<permission> \
    --volume <weights-container>@<region>/:/workspace/models_train:<permission>

You can then reach your notebook’s URL once it is running.

You should have this overview:

image

Experimenting YOLOv5 notebook

Once your dataset is ready and uploaded, you are able to train the YOLOv5 model of your choice!

A preview of this notebook can be found on GitHub here.

Go further

  • Do you want to observe the evolution of your metrics during the training of your model? Click here!
  • Do you want to use your YOLOv5 model in an app? Here it is.

Feedback

Please send us your questions, feedback and suggestions to improve the service:


Czy ten przewodnik był pomocny?

Zachęcamy do przesyłania sugestii, które pomogą nam ulepszyć naszą dokumentację.

Obrazy, zawartość, struktura - podziel się swoim pomysłem, my dołożymy wszelkich starań, aby wprowadzić ulepszenia.

Zgłoszenie przesłane za pomocą tego formularza nie zostanie obsłużone. Skorzystaj z formularza "Utwórz zgłoszenie" .

Dziękujemy. Twoja opinia jest dla nas bardzo cenna.


Inne przewodniki, które mogą Cię zainteresować...

OVHcloud Community

Dostęp do OVHcloud Community Przesyłaj pytania, zdobywaj informacje, publikuj treści i kontaktuj się z innymi użytkownikami OVHcloud Community.

Porozmawiaj ze społecznością OVHcloud

Zgodnie z Dyrektywą 2006/112/WE po zmianach, od dnia 1 stycznia 2015 r., ceny brutto mogą różnić się w zależności od kraju zameldowania klienta
(ceny brutto wyświetlane domyślnie zawierają stawkę podatku VAT na terenie Polski).