Comment entraîner, valider, prédire, exporter et évaluer les performances avec les modèles Ultralytics YOLO
Découvre comment entraîner, valider, prédire, exporter et évaluer les performances avec les modèles Ultralytics YOLO !

Plongeons dans l’univers d’Ultralytics et explorons les différents modes disponibles pour les modèles YOLO. Que tu entraînes des modèles personnalisés de détection d’objets ou que tu travailles sur la segmentation, comprendre ces modes est une étape essentielle. Entrons directement dans le vif du sujet !
Dans la documentation d’Ultralytics, tu trouveras plusieurs modes que tu peux utiliser pour tes modèles, notamment pour entraîner, valider, prédire, exporter, évaluer les performances ou suivre. Chacun de ces modes a une fonction unique et t’aide à optimiser les performances et le déploiement de ton modèle.
Mode entraînement#
Commençons par examiner le mode entraînement. C’est ici que tu construis et affines ton modèle. Tu trouveras des instructions détaillées et des guides vidéo dans la documentation, ce qui facilite le démarrage de l’entraînement de tes modèles personnalisés.
L’entraînement d’un modèle consiste à lui fournir un nouveau jeu de données afin de lui permettre d’apprendre différents motifs. Une fois entraîné, le modèle peut être utilisé en temps réel pour détecter de nouveaux objets correspondant à ceux sur lesquels il a été entraîné. Avant de commencer le processus d’entraînement, il est essentiel d’annoter ton jeu de données au format YOLO.
Mode validation#
Passons ensuite au mode validation. La validation est essentielle pour ajuster les hyperparamètres et garantir les bonnes performances de ton modèle. Ultralytics propose diverses options de validation, notamment des paramètres automatisés, la prise en charge de plusieurs métriques et la compatibilité avec l’API Python. Tu peux même exécuter la validation directement via l’interface de ligne de commande (CLI) à l’aide de la commande ci-dessous.
Pourquoi valider ?#
La validation est essentielle pour :
- Précision : garantir que ton modèle détecte les objets avec exactitude.
- Simplicité : simplifier le processus de validation.
- Flexibilité : proposer plusieurs méthodes de validation.
- Réglage des hyperparamètres : optimiser ton modèle pour améliorer ses performances.
Ultralytics fournit également des exemples que tu peux copier-coller dans tes scripts Python. Ces exemples incluent des paramètres tels que la taille de l’image, la taille du lot, le périphérique (CPU ou GPU) et l’intersection sur union (IoU).
Mode prédiction#
Une fois ton modèle entraîné et validé, il est temps de faire des prédictions. Le mode prédiction te permet d’exécuter l’inférence sur de nouvelles données et de voir ton modèle en action. Ce mode est idéal pour tester les performances de ton modèle sur des données du monde réel. Avec l’extrait de code Python ci-dessous, tu pourras effectuer des prédictions sur tes images !
Mode exportation#
Après la validation et la prédiction, tu voudras peut-être déployer ton modèle. Le mode exportation te permet de convertir ton modèle dans différents formats, comme ONNX ou TensorRT, afin de faciliter son déploiement sur diverses plateformes.
Mode évaluation des performances#
Enfin, voici le mode évaluation des performances. Cette évaluation est essentielle pour mesurer les performances de ton modèle dans différents scénarios. Ce mode t’aide à prendre des décisions éclairées concernant l’allocation des ressources, l’optimisation et la maîtrise des coûts.
Comment évaluer les performances#
Pour effectuer une évaluation des performances, tu peux utiliser les exemples fournis dans la documentation. Ces exemples couvrent les métriques clés et les formats d’exportation, notamment ONNX et TensorRT. Tu peux également spécifier des paramètres tels que la quantification entière (INT8) ou la quantification en virgule flottante (FP16) afin d’observer l’impact de différents réglages sur les performances.
Exemple d’évaluation des performances en conditions réelles#
Examinons un exemple concret d’évaluation des performances. Lorsque nous évaluons les performances de notre modèle PyTorch, nous constatons une vitesse d’inférence de 68 millisecondes sur un GPU RTX 3070. Après l’exportation vers TorchScript, la vitesse d’inférence passe à 4 millisecondes, ce qui illustre une amélioration significative.
Pour les modèles ONNX, nous obtenons une vitesse d’inférence de 21 millisecondes. En testant ces modèles sur un CPU (un Intel i9 de 13e génération), nous observons des résultats variables. TorchScript s’exécute en 115 millisecondes, tandis qu’ONNX offre de meilleures performances avec 84 millisecondes. Enfin, OpenVINO optimisé pour le matériel Intel atteint un temps remarquable de 23 millisecondes.

Fig. 1. Nicolai Nielsen montre comment effectuer une évaluation des performances avec les modèles YOLO d’Ultralytics.
L’importance de l’évaluation des performances#
L’évaluation des performances montre comment les différents matériels et formats d’exportation peuvent influencer les performances de ton modèle. Il est essentiel d’évaluer tes modèles, en particulier si tu prévois de les déployer sur du matériel personnalisé ou des appareils edge. Ce processus garantit que ton modèle est optimisé pour l’environnement cible et fournit les meilleures performances possibles.
Conclusion#
En résumé, les modes présentés dans la documentation d’Ultralytics sont des outils puissants pour entraîner, valider, prédire, exporter et évaluer les performances de tes modèles YOLO. Chaque mode joue un rôle essentiel dans l’optimisation de ton modèle et sa préparation au déploiement.
N’oublie pas d’explorer notre communauté, de la rejoindre et d’essayer les extraits de code fournis dans tes projets. Grâce à ces outils, tu peux créer des modèles performants et garantir leur fonctionnement efficace dans n’importe quel environnement.









