Maîtriser le déploiement de YOLOv5 sur une VM Deep Learning de Google Cloud Platform (GCP)#
Se lancer dans l'intelligence artificielle (AI) et l'apprentissage automatique (ML) peut être passionnant, surtout lorsque tu profites de la puissance et de la flexibilité d'une plateforme de cloud computing. Google Cloud Platform (GCP) propose des outils performants adaptés aux passionnés comme aux professionnels du ML. L'un d'eux, la VM Deep Learning, est préconfiguré pour les tâches de science des données et de ML. Dans ce tutoriel, nous verrons comment configurer Ultralytics YOLOv5 sur une VM Deep Learning de GCP. Que tu débutes en ML ou que tu sois un praticien expérimenté, ce guide te présente clairement les étapes pour mettre en œuvre des modèles de détection d'objets propulsés par YOLOv5.
🆓 De plus, si tu utilises GCP pour la première fois, tu peux profiter d'une offre de crédit gratuit de 300 $ pour lancer tes projets.
En plus de GCP, découvre d'autres options accessibles pour démarrer rapidement avec YOLOv5, comme notre notebook Google Colab pour travailler dans un navigateur, ou l'évolutivité d'Amazon AWS. Les adeptes des conteneurs peuvent aussi utiliser notre image Docker officielle disponible sur Docker Hub
pour bénéficier d'un environnement encapsulé, en suivant notre guide de démarrage rapide Docker.
Étape 1 : créer et configurer ta VM Deep Learning#
Commençons par créer une machine virtuelle optimisée pour le deep learning :
- Accède à la place de marché GCP et sélectionne Deep Learning VM.
- Choisis une instance n1-standard-8 ; avec ses 8 vCPU et ses 30 Go de mémoire, elle convient à de nombreuses tâches de ML.
- Sélectionne un GPU. Le choix dépend de ta charge de travail ; même un GPU T4 d'entrée de gamme accélérera considérablement l'entraînement des modèles.
- Coche la case « Installer automatiquement le pilote GPU NVIDIA au premier démarrage ? » pour simplifier la configuration.
- Alloue un disque SSD persistant de 300 Go afin d'éviter les goulots d'étranglement des E/S.
- Clique sur « Deploy » et laisse GCP provisionner ta VM Deep Learning personnalisée.
Cette VM est préchargée avec les outils et frameworks essentiels, notamment la distribution Python Anaconda, qui regroupe commodément de nombreuses dépendances nécessaires à YOLOv5.

Étape 2 : préparer la VM pour YOLOv5#
Une fois l'environnement configuré, installons YOLOv5 pour qu'il soit prêt à l'emploi :
# Clone the YOLOv5 repository
git clone https://github.com/ultralytics/yolov5
cd yolov5
# Install dependencies
pip install -r requirements.txtCette configuration garantit que tu disposes d'un environnement Python en version 3.8.0 ou ultérieure et de PyTorch 1.8 ou ultérieur. Nos scripts téléchargent automatiquement les modèles et les jeux de données depuis la dernière version de YOLOv5, ce qui simplifie le démarrage de l'entraînement des modèles.
Étape 3 : entraîner et déployer tes modèles YOLOv5#
La configuration terminée, tu peux entraîner, valider, effectuer des prédictions et exporter des modèles YOLOv5 sur ta VM GCP :
# Train a YOLOv5 model on your dataset (e.g., yolov5s)
python train.py --data coco128.yaml --weights yolov5s.pt --img 640
# Validate the trained model to check Precision, Recall, and mAP
python val.py --weights yolov5s.pt --data coco128.yaml
# Run inference using the trained model on images or videos
python detect.py --weights yolov5s.pt --source path/to/your/images_or_videos
# Export the trained model to various formats like ONNX, CoreML, TFLite for deployment
python export.py --weights yolov5s.pt --include onnx coreml tfliteAvec seulement quelques commandes, YOLOv5 te permet d'entraîner des modèles personnalisés de détection d'objets adaptés à tes besoins ou d'utiliser des poids préentraînés pour obtenir rapidement des résultats sur diverses tâches. Après l'exportation, découvre les différentes options de déploiement de modèles.

Allouer de l'espace d'échange (facultatif)#
Si tu travailles avec des jeux de données particulièrement volumineux susceptibles de dépasser la RAM de ta VM, envisage d'ajouter de l'espace d'échange pour éviter les erreurs de mémoire :
# Allocate a 64GB swap file
sudo fallocate -l 64G /swapfile
# Set the correct permissions for the swap file
sudo chmod 600 /swapfile
# Set up the Linux swap area
sudo mkswap /swapfile
# Enable the swap file
sudo swapon /swapfile
# Verify the swap space allocation (should show increased swap memory)
free -hEntraîner des modèles sur des jeux de données personnalisés#
Pour entraîner YOLOv5 sur ton jeu de données personnalisé dans GCP, suis ces étapes générales :
-
Prépare ton jeu de données au format YOLO (images et fichiers d'annotations correspondants). Consulte notre présentation des jeux de données pour obtenir des conseils.
-
Téléverse ton jeu de données sur ta VM GCP avec
gcloud compute scpou la fonctionnalité SSH de la console Web. -
Crée un fichier de configuration YAML pour le jeu de données (
custom_dataset.yaml) qui indique les chemins d'accès aux données d'entraînement et de validation, le nombre de classes et leurs noms. -
Lance le processus d'entraînement avec le fichier YAML de ton jeu de données personnalisé et, éventuellement, des poids préentraînés comme point de départ :
# Example: Train YOLOv5s on a custom dataset for 100 epochs python train.py --img 640 --batch 16 --epochs 100 --data custom_dataset.yaml --weights yolov5s.pt
Pour obtenir des instructions complètes sur la préparation des données et l'entraînement avec des jeux de données personnalisés, consulte le tutoriel Entraîner sur des données personnalisées.
Tirer parti du stockage cloud#
Pour gérer efficacement tes données, en particulier avec de grands jeux de données ou de nombreuses expériences, intègre ton flux de travail YOLOv5 à Google Cloud Storage :
# Ensure Google Cloud SDK is installed and initialized
# If not installed: curl https://sdk.cloud.google.com/ | bash
# Then initialize: gcloud init
# Example: Copy your dataset from a GCS bucket to your VM
gsutil cp -r gs://your-data-bucket/my_dataset ./datasets/
# Example: Copy trained model weights from your VM to a GCS bucket
gsutil cp -r ./runs/train/exp/weights gs://your-models-bucket/yolov5_custom_weights/Cette approche te permet de stocker de grands jeux de données et des modèles entraînés dans le cloud de manière sécurisée et économique, tout en réduisant l'espace de stockage nécessaire sur ta VM.
Pour conclure#
Félicitations ! Tu es maintenant prêt à tirer parti des capacités d'Ultralytics YOLOv5 et de la puissance de calcul de Google Cloud Platform. Cette configuration apporte évolutivité, efficacité et polyvalence à tes projets de détection d'objets. Que ce soit pour explorer à titre personnel, mener des recherches universitaires ou créer des solutions industrielles, tu as franchi une étape importante dans le monde de l'IA et du ML dans le cloud.
Envisage d'utiliser Ultralytics Platform pour entraîner et gérer tes modèles simplement, sans code.
Pense à documenter tes progrès, à partager tes idées avec la communauté Ultralytics dynamique et à utiliser des ressources comme les discussions GitHub pour collaborer et obtenir de l'aide. À toi maintenant d'innover avec YOLOv5 et GCP !
Tu veux continuer à développer tes compétences en ML ? Plonge dans notre documentation et explore le blog Ultralytics pour découvrir d'autres tutoriels et analyses. Que ton aventure avec l'IA continue !
FAQ#
Une machine
n1-standard-8équipée d'un seul GPU T4 suffit pour la plupart des tâches d'entraînement et d'inférence avec YOLOv5. Passe à une L4 ou une A100 pour les grands jeux de données ou les modèles plus volumineux, et coche toujours l'option d'installation automatique du pilote NVIDIA au premier démarrage.Arrête la VM depuis la console Compute Engine lorsqu'elle est inactive. Le disque associé reste facturé : supprime donc la VM et le disque une fois le projet terminé et tes poids copiés en toute sécurité dans Cloud Storage.
Pour les petits jeux de données, utilise
gcloud compute scp. Pour les jeux de données plus volumineux, importe-les dans un bucket Cloud Storage et récupère-les avecgsutil cp -r gs://your-bucket/dataset ./datasets/, ce qui est beaucoup plus rapide sur le réseau de Google.Oui. La Deep Learning VM dispose déjà de PyTorch ;
pip install ultralyticsajoute donc l'entraînement et l'exportation de YOLO26 avec l'interface en ligne de commandeyolo. Consulte le guide de démarrage rapide pour en savoir plus.