Skip to content

YOLOv5 🚀 sur AWS Deep Learning Instance : Ton guide complet

La mise en place d'un environnement d'apprentissage profond performant peut être décourageante pour les nouveaux venus, mais n'aie pas peur ! 🛠️ Avec ce guide, nous allons t'accompagner dans le processus de mise en place de YOLOv5 sur une instance AWS Deep Learning. En tirant parti de la puissance d'Amazon Web Services (AWS), même ceux qui sont novices en matière d'apprentissage automatique peuvent se lancer rapidement et à moindre coût. L'évolutivité de la plateforme AWS est parfaite pour l'expérimentation comme pour le déploiement en production.

D'autres options de démarrage rapide pour YOLOv5 incluent notre Carnet de notes Colab Open In Colab Ouvrir dans Kaggle, GCP Deep Learning VM, et notre image Docker à . Docker Hub Les tirages de Docker.

Étape 1 : Connexion à la console AWS

Commence par créer un compte ou par te connecter à la console AWS à l'adresse https://aws.amazon.com/console/. Une fois connecté, sélectionne le service EC2 à gérer et configure tes instances.

Console

Étape 2 : Lancer ton instance

Dans le tableau de bord EC2, tu trouveras le bouton Lancer une instance qui est ta porte d'entrée pour créer un nouveau serveur virtuel.

Lancer

Choisir la bonne Amazon Machine Image (AMI)

C'est ici que tu choisis le système d'exploitation et la pile logicielle pour ton instance. Tape "Deep Learning" dans le champ de recherche et sélectionne la dernière AMI Deep Learning basée sur Ubuntu, à moins que tes besoins ne l'imposent autrement. Les AMI de Deep Learning d'Amazon sont préinstallées avec des frameworks et des pilotes de GPU populaires pour rationaliser ton processus d'installation.

Choisis l'AMI

Choisir un type d'instance

Pour les tâches d'apprentissage profond, la sélection d'un type d'instance GPU est généralement recommandée car elle peut considérablement accélérer la formation du modèle. Pour les considérations relatives à la taille de l'instance, rappelle-toi que les besoins en mémoire du modèle ne doivent jamais dépasser ce que ton instance peut fournir.

Note : La taille de ton modèle doit être un facteur dans la sélection d'une instance. Si ton modèle dépasse la mémoire vive disponible d'une instance, choisis un autre type d'instance avec suffisamment de mémoire pour ton application.

Pour obtenir une liste des types d'instances GPU disponibles, consulte la page Types d'instances EC2, plus précisément sous Calcul accéléré.

Choisis un type

Pour plus d'informations sur la surveillance et l'optimisation des GPU, voir Surveillance et optimisation des GPU. Pour la tarification, voir Tarification Ă  la demande et Tarification ponctuelle.

Configuration de ton instance

Les Amazon EC2 Spot Instances offrent un moyen rentable d'exécuter des applications, car elles te permettent de faire une offre pour une capacité inutilisée à une fraction du coût standard. Pour une expérience persistante qui conserve les données même lorsque l'Instance Spot tombe en panne, opte pour une requête persistante.

Demande de spot

N'oublie pas d'ajuster le reste des paramètres de ton instance et des configurations de sécurité si nécessaire dans les étapes 4 à 7 avant de lancer.

Étape 3 : Connexion à ton instance

Une fois que ton instance est en cours d'exécution, coche sa case et clique sur Connecter pour accéder aux informations SSH. Utilise la commande SSH affichée dans ton terminal préféré pour établir une connexion avec ton instance.

Connecte-toi

Étape 4 : Exécution YOLOv5

Connecté à ton instance, tu es maintenant prêt à cloner le dépôt YOLOv5 et à installer les dépendances dans un environnement Python 3.8 ou plus récent. YOLOv5 Les modèles et les ensembles de données d'EMC seront automatiquement téléchargés à partir de la dernière version.

git clone https://github.com/ultralytics/yolov5  # clone repository
cd yolov5
pip install -r requirements.txt  # install dependencies

Une fois ton environnement mis en place, tu peux commencer à former, valider, effectuer des inférences et exporter tes modèles YOLOv5 :

# Train a model on your data
python train.py

# Validate the trained model for Precision, Recall, and mAP
python val.py --weights yolov5s.pt

# Run inference using the trained model on your images or videos
python detect.py --weights yolov5s.pt --source path/to/images

# Export the trained model to other formats for deployment
python export.py --weights yolov5s.pt --include onnx coreml tflite

Extras optionnels

Pour ajouter plus de mémoire d'échange, ce qui peut être un sauveur pour les grands ensembles de données, exécute :

sudo fallocate -l 64G /swapfile  # allocate 64GB swap file
sudo chmod 600 /swapfile  # modify permissions
sudo mkswap /swapfile  # set up a Linux swap area
sudo swapon /swapfile  # activate swap file
free -h  # verify swap memory

Et voilà ! 🎉 Tu as réussi à créer une instance AWS Deep Learning et à exécuter YOLOv5. Que tu commences avec la détection d'objets ou que tu passes à l'échelle pour la production, cette configuration peut t'aider à atteindre tes objectifs en matière d'apprentissage automatique. Bonne formation, bonne validation et bon déploiement ! Si tu rencontres des difficultés en cours de route, la solide documentation d'AWS et la communauté active de Ultralytics sont là pour t'aider.



Créé le 2023-11-12, Mis à jour le 2023-12-03
Auteurs : glenn-jocher (2)

Commentaires