Comment entraîner, valider, prédire, exporter et évaluer les modèles Ultralytics YOLO
Découvre le fonctionnement des modes train, val, predict, export, track et benchmark d’Ultralytics YOLO, avec des conseils sur les métriques de validation et les résultats de benchmarks en conditions réelles.
Nuvola Ladi4 min de lecture
Les modèles YOLO d’Ultralytics proposent plusieurs modes qui couvrent tout le cycle de vie du modèle. 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.
Dans la documentation d’Ultralytics, tu trouveras plusieurs modes utilisables avec tes modèles, que ce soit pour les entraîner, les valider, effectuer des prédictions, les exporter, les suivre ou les évaluer. Chacun de ces modes a un objectif particulier et t’aide à optimiser les performances et le déploiement de ton modèle.
Mode Train#
Commençons par le mode train. C’est là que tu construis et affines ton modèle. La documentation contient des instructions détaillées et des guides vidéo qui te permettront de commencer facilement à entraîner tes modèles personnalisés.
L’entraînement d’un modèle consiste à lui fournir un nouveau jeu de données pour 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 sur lesquels il a été entraîné. Avant de commencer l’entraînement, il est essentiel d’annoter ton jeu de données au format YOLO.
Mode Validate#
Passons ensuite au mode validate. La validation est essentielle pour régler les hyperparamètres et s’assurer que ton modèle fonctionne bien. Ultralytics propose différentes 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 lancer la validation directement depuis l’interface en ligne de commande (CLI) à l’aide d’une seule commande.
Pourquoi valider ?#
La validation est essentielle pour :
- Précision : garantir que ton modèle détecte les objets avec exactitude.
- Simplicité : rationaliser le processus de validation.
- Flexibilité : proposer plusieurs méthodes de validation.
- Ajustement des hyperparamètres : optimiser ton modèle pour obtenir de meilleures performances.
Ultralytics propose également des exemples que tu peux copier-coller dans tes scripts Python. Ces exemples comprennent des paramètres comme la taille des images, la taille des lots, le périphérique (CPU ou GPU) et l’intersection sur l’union (IoU).
Mode Predict#
Une fois ton modèle entraîné et validé, tu peux passer aux prédictions. Le mode Predict te permet de lancer des inférences 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 seulement quelques lignes de code Python, tu pourras lancer des prédictions sur tes images.
Mode Export#
Après la validation et les prédictions, tu voudras peut-être déployer ton modèle. Le mode Export te permet de le convertir en différents formats, comme ONNX ou TensorRT, pour faciliter son déploiement sur diverses plateformes.
Mode Benchmark#
Enfin, le mode Benchmark permet d’évaluer les performances de ton modèle dans différents scénarios. Ce mode t’aide à prendre des décisions éclairées en matière d’allocation des ressources, d’optimisation et de rentabilité.
Comment effectuer une évaluation comparative#
Pour lancer une évaluation comparative, tu peux utiliser les exemples fournis dans la documentation. Ils couvrent les métriques clés et les formats d’exportation, notamment ONNX et TensorRT. Tu peux aussi définir l’argument quantize pour utiliser la quantification entière (INT8) ou la précision réduite de moitié (FP16) et observer l’impact des différents paramètres sur les performances.
Exemple d’évaluation comparative en conditions réelles#
Prenons un exemple concret d’évaluation comparative. Lorsque nous évaluons notre modèle PyTorch, nous constatons une vitesse d’inférence de 68 millisecondes sur un GPU RTX 3070. Après l’exportation au format TorchScript, la vitesse d’inférence passe à 4 millisecondes, ce qui représente une amélioration considérable.
Avec les modèles ONNX, nous obtenons une vitesse d’inférence de 21 millisecondes. Lorsque nous testons ces modèles sur un CPU (un Intel i9 de 13e génération), les résultats varient. TorchScript s’exécute en 115 millisecondes, tandis qu’ONNX est plus performant avec 84 millisecondes. Enfin, OpenVINO, optimisé pour le matériel Intel, atteint 23 millisecondes.

Fig. 1. Nicolai Nielsen montre comment réaliser des tests de performance avec les modèles YOLO d’Ultralytics.
L’importance de l’évaluation comparative#
L’évaluation comparative montre comment le matériel et les formats d’exportation peuvent influer sur les performances de ton modèle. Il est essentiel d’évaluer tes modèles, surtout si tu prévois de les déployer sur du matériel personnalisé ou des appareils de périphérie. Ce processus garantit que ton modèle est optimisé pour l’environnement cible et offre les meilleures performances possibles.
Conclusion#
En résumé, les modes de la documentation Ultralytics sont des outils puissants pour entraîner, valider, effectuer des prédictions, exporter et évaluer 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é et de la rejoindre, puis 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.
Écrit par
Commentaires
Pose une question, partage tes résultats ou aide quelqu’un.










