4.6 Entraîner et déployer votre propre modèle de vision

Introduction

YOLO26 est la dernière génération de la famille YOLO, conçue pour une vision par IA en temps réel et adaptée à l'edge. Elle est conçue pour être plus rapide, plus légère et plus facile à déployer, tout en offrant une précision élevée pour des tâches telles que la détection d'objets, la segmentation, la classification et l'estimation de pose. Comparée aux modèles YOLO précédents, YOLO26 met davantage l'accent sur le déploiement efficace et l'inférence de bout en bout, ce qui la rend particulièrement adaptée aux dispositifs edge et aux applications pratiques.

Graphiques de performance YOLO26

Dans ce chapitre, nous présenterons comment entraîner et déployer rapidement votre propre modèle de détection avancé sur reComputer, afin que vous puissiez passer des données à une application IA fonctionnelle dans le monde réel grâce à un flux de travail efficace et moderne.

Expérience rapide

Étape 1 : Définir clairement la tâche

Un projet solide commence par une question claire.

Exemples :

  • détecter des casques et des personnes
  • détecter des places de parking occupées
  • détecter des palettes et des chariots élévateurs

Pour faciliter la démonstration, nous avons fourni un script qui peut nous aider à effectuer l'ensemble du processus, de la collecte de données au déploiement du modèle.

🚀 Essayez-le et exécutez-le vous-même !

python
cd 4.6-Train-and-Deploy-Your-Own-Vision-Model/code
python yolo_end_to_end.py

Étape 2 : Collecter des données

Connectez une caméra à votre appareil, sélectionnez la cible que vous voulez détecter et collectez les images appropriées pour le jeu de données.

capture_picture

Étape 3 : Annoter les données

Pour la détection, annoter signifie généralement dessiner des boîtes englobantes et attribuer des étiquettes de classe.

Utilisez notre outil et faites glisser la souris pour marquer la cible que vous souhaitez détecter.

mark_img

Étape 4 : Entraîner un modèle

Divisez vos jeux de données et sélectionnez un modèle pré-entraîné à entraîner.

L'ensemble d'entraînement est utilisé pour enseigner au modèle en ajustant ses paramètres. L'ensemble de validation est utilisé pendant le développement pour vérifier la généralisation du modèle, comparer différents paramètres et décider quand arrêter l'entraînement. En bref, le découpage du jeu de données nous aide à entraîner, améliorer et évaluer le modèle de manière fiable.

tarin

L'entraînement est l'étape où le modèle apprend à partir du jeu de données et améliore progressivement ses prédictions. En général, nous commençons avec un checkpoint de départ, ce qui signifie utiliser un modèle pré-entraîné plutôt que de partir de zéro. Cela aide le modèle à apprendre plus vite et donne souvent de meilleurs résultats.

Étape 5 : Inférence

Sélectionnez les poids du modèle qui ont été précédemment entraînés et observez ses performances.

infer

Remarque : Si vous voulez que votre modèle soit plus performant, vous devez augmenter votre jeu de données ou effectuer des opérations d'augmentation de données.

Idées reçues fréquentes

  • « Une métrique élevée signifie toujours que le modèle est prêt. »
    • Les tests en conditions réelles restent nécessaires.
  • « Plus de données signifie automatiquement un meilleur modèle. »
    • Plus de données n'aide que si elles sont pertinentes et bien étiquetées.
  • « Si l'entraînement se termine, le déploiement est facile. »
    • Le déploiement introduit des contraintes de vitesse, de mémoire et de système.

Exercices / Réflexion

  1. Concevez un projet de détection d'objets à deux classes qui pourrait être réalisé par un débutant.
  2. Listez cinq types de variations de scène que vous voudriez avoir dans le jeu de données.
  3. Expliquez la différence entre les résultats de validation et les performances réelles en déploiement.
  4. Après avoir lancé un entraînement, examinez trois cas d'échec et décrivez quel type de données pourrait les corriger.

Résumé

Entraîner un modèle de vision personnalisé n'est pas seulement une question d'exécuter une commande. C'est un processus piloté par les données qui implique la définition de la tâche, l'annotation, l'entraînement, la validation et l'analyse des erreurs. Dans la section suivante, nous passons du premier modèle réussi à l'exportation et au déploiement sur l'edge.

Étape suivante suggérée

Poursuivez avec 4.7 Exportation de modèles et déploiement sur l'edge.

Références