En cliquant sur « Accepter tous les cookies », vous acceptez le stockage de cookies sur votre appareil pour améliorer la navigation sur le site, analyser son utilisation et contribuer à nos efforts de marketing. Plus d’infos
Paramètres des cookies
En cliquant sur « Accepter tous les cookies », vous acceptez le stockage de cookies sur votre appareil pour améliorer la navigation sur le site, analyser son utilisation et contribuer à nos efforts de marketing. Plus d’infos
Découvrez comment évaluer Ultralytics YOLO11, comparez les performances sur différents appareils et explorez différents formats d'exportation pour optimiser la vitesse, la précision et l'efficacité.
Avec le nombre croissant de modèles d'IA disponibles aujourd'hui, il est essentiel de sélectionner le plus approprié pour votre application d'IA spécifique afin d'obtenir des résultats précis et fiables. Chaque modèle varie en termes de vitesse, de précision et de performance globale. Alors, comment déterminer quel modèle est le mieux adapté à une tâche donnée ? Ceci est particulièrement important pour les systèmes en temps réel tels que les véhicules autonomes, les solutions de sécurité et la robotique, où une prise de décision rapide et fiable est essentielle.
L'évaluation comparative (benchmarking) aide à répondre à cette question en évaluant un modèle dans différentes conditions. Elle fournit des informations sur la performance du modèle à travers diverses configurations matérielles, permettant ainsi une prise de décision plus éclairée.
Par exemple, Ultralytics YOLO11 est un modèle de vision par ordinateur qui prend en charge diverses tâches d'analyse de données visuelles telles que la détection d'objets et la segmentation d'instances. Pour bien comprendre ses capacités, vous pouvez évaluer ses performances sur différentes configurations afin de voir comment il se comportera dans des scénarios réels.
Dans cet article, nous allons explorer comment évaluer les modèles Ultralytics YOLO comme YOLO11, comparer leurs performances sur différents matériels et voir comment les différents formats d'exportation ont un impact sur leur vitesse et leur efficacité. Commençons !
Qu'est-ce que l'évaluation comparative de modèles ?
Lorsque vous utilisez un modèle de Vision IA dans une application réelle, comment savoir s'il sera suffisamment rapide, précis et fiable ? L'évaluation comparative du modèle peut fournir des informations pour répondre à cette question. L'évaluation comparative de modèles est le processus de test et de comparaison de différents modèles d'IA pour déterminer lequel est le plus performant.
Elle implique de définir une base de référence pour la comparaison, de choisir les bonnes mesures de performance (comme la précision ou la vitesse) et de tester tous les modèles dans les mêmes conditions. Les résultats aident à identifier les forces et les faiblesses de chaque modèle, ce qui facilite la décision quant à celui qui convient le mieux à votre solution d'IA spécifique. En particulier, un ensemble de données de référence est souvent utilisé pour fournir des comparaisons équitables et évaluer les performances d'un modèle dans différents scénarios réels.
Fig 1. Pourquoi évaluer les modèles de vision par ordinateur ? Image de l'auteur.
Un exemple clair de l'importance de l'évaluation comparative se trouve dans les applications en temps réel telles que la surveillance ou la robotique, où même de légers retards peuvent avoir un impact sur la prise de décision. L'évaluation comparative permet de déterminer si un modèle peut traiter les images rapidement tout en fournissant des prédictions fiables.
Elle joue également un rôle clé dans l'identification des goulets d'étranglement en matière de performances. Si un modèle fonctionne lentement ou utilise des ressources excessives, l'évaluation comparative peut révéler si le problème provient de limitations matérielles, de configurations de modèle ou de formats d'exportation. Ces informations sont essentielles pour sélectionner la configuration la plus efficace.
Évaluation comparative de modèles par rapport à l'évaluation et aux tests de modèles
L'évaluation comparative, l'évaluation et les tests de modèles sont des termes d'IA populaires qui sont utilisés ensemble. Bien que similaires, ils ne sont pas identiques et ont des fonctions différentes. Les tests de modèles vérifient les performances d'un seul modèle en l'exécutant sur un ensemble de données de test et en mesurant des facteurs tels que la précision et la vitesse. Pendant ce temps, l'évaluation du modèle va encore plus loin en analysant les résultats pour comprendre les forces, les faiblesses du modèle et son fonctionnement dans des situations réelles. Les deux se concentrent sur un seul modèle à la fois.
L'évaluation comparative de modèles, cependant, compare plusieurs modèles côte à côte en utilisant les mêmes tests et ensembles de données. Elle permet de déterminer quel modèle fonctionne le mieux pour une tâche spécifique en mettant en évidence les différences de précision, de vitesse et d'efficacité entre eux. Alors que les tests et l'évaluation se concentrent sur un seul modèle, l'évaluation comparative permet de choisir le bon (ou le meilleur) en comparant équitablement différentes options.
Fig 2. En quoi l'évaluation comparative de modèles est différente de l'évaluation et des tests. Image de l'auteur.
Présentation de Ultralytics YOLO11
Ultralytics YOLO11 est un modèle de Vision IA fiable conçu pour effectuer diverses tâches de vision par ordinateur avec précision. Il améliore les versions antérieures du modèle YOLO et regorge de fonctionnalités qui peuvent aider à résoudre des problèmes du monde réel. Par exemple, il peut être utilisé pour détecter des objets, classer des images, segmenter des régions, suivre des mouvements, et plus encore. Il peut également être utilisé dans des applications dans de nombreux secteurs, de la sécurité à l'automatisation et à l'analyse.
Fig 3. Un exemple d'utilisation de YOLO11 pour segmenter des personnes dans une image.
L'un des principaux avantages liés à Ultralytics YOLO11 est sa facilité d'utilisation. Avec seulement quelques lignes de code, n'importe qui peut l'intégrer à ses projets d'IA sans avoir à gérer des configurations compliquées ou une expertise technique avancée.
Il fonctionne également de manière fluide sur différents matériels, fonctionnant efficacement sur les CPU (Central Processing Units), les GPU (Graphics Processing Units) et autres accélérateurs d'IA spécialisés. Qu'il soit déployé sur des appareils périphériques ou des serveurs cloud, il offre de solides performances.
YOLO11 est disponible en différentes tailles de modèle, chacune étant optimisée pour différentes tâches. L'évaluation comparative permet de déterminer quelle version correspond le mieux à vos besoins spécifiques. Par exemple, une information clé que l'évaluation comparative peut révéler est que les modèles plus petits, tels que nano ou small, ont tendance à fonctionner plus rapidement, mais peuvent sacrifier une certaine précision.
Comment évaluer les modèles YOLO comme YOLO11
Maintenant que nous avons compris ce qu'est l'évaluation comparative et son importance, voyons comment vous pouvez évaluer les modèles YOLO comme YOLO11 et évaluer leur efficacité pour recueillir des informations précieuses.
Pour commencer, vous pouvez installer le package Python Ultralytics en exécutant la commande suivante dans votre terminal ou invite de commande : “pip install ultralytics”. Si vous rencontrez des problèmes lors de l'installation, consultez notre Guide des problèmes courants pour obtenir des conseils de dépannage.
Une fois le package installé, vous pouvez facilement évaluer YOLO11 avec seulement quelques lignes de code Python :
from ultralytics.utils.benchmarks import benchmark
# Benchmark on GPUbenchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)
Lorsque vous exécutez le code indiqué ci-dessus, il calcule la vitesse à laquelle le modèle traite les images, le nombre d'images qu'il peut traiter en une seconde et la précision avec laquelle il détecte les objets.
La mention de « coco8.yaml » dans le code fait référence à un fichier de configuration de l'ensemble de données basé sur l'ensemble de données COCO8 (Common Objects in Context) – une petite version échantillon de l'ensemble de données COCO complet, souvent utilisée pour les tests et l'expérimentation.
Si vous testez YOLO11 pour une application spécifique, telle que la surveillance du trafic ou l'imagerie médicale, l'utilisation d'un ensemble de données pertinent (par exemple, un ensemble de données sur le trafic ou un ensemble de données médicales) fournira des informations plus précises. L'évaluation comparative avec COCO donne une idée générale des performances, mais pour de meilleurs résultats, vous pouvez choisir un ensemble de données qui reflète votre cas d'utilisation réel.
Comprendre les résultats de l'évaluation comparative de YOLO11
Une fois que YOLO11 a été évalué, l'étape suivante consiste à interpréter les résultats. Après avoir exécuté l'évaluation comparative, vous verrez différents chiffres dans les résultats. Ces métriques permettent d'évaluer les performances de YOLO11 en termes de précision et de vitesse.
Voici quelques métriques d'évaluation comparative de YOLO11 notables à surveiller :
mAP50-95 : Elle mesure la précision de la détection d'objets. Une valeur plus élevée signifie que le modèle est meilleur pour reconnaître les objets.
accuracy_top5 : Elle est couramment utilisée pour les tâches de classification. Elle indique la fréquence à laquelle l'étiquette correcte apparaît dans les cinq premières prédictions.
Temps d'inférence : Le temps nécessaire pour traiter une seule image, mesuré en millisecondes. Des valeurs plus faibles signifient un traitement plus rapide.
Fig. 4. Un graphique montrant les performances de référence de YOLO11.
Autres facteurs à prendre en compte lors de l'évaluation comparative de YOLO11
L'examen des seuls résultats de l'évaluation comparative ne donne qu'une partie de l'histoire. Pour mieux comprendre les performances, il est utile de comparer différents paramètres et options matérielles. Voici quelques éléments importants à examiner :
GPU vs. CPU : Les GPU peuvent traiter les images beaucoup plus rapidement que les CPU. L'évaluation comparative vous aide à déterminer si un CPU est suffisamment rapide pour vos besoins ou si vous bénéficierez de l'utilisation d'un GPU.
Paramètres de précision (FP32, FP16, INT8) : Ils contrôlent la façon dont le modèle gère les nombres. Une précision plus faible (comme FP16 ou INT8) permet au modèle de s'exécuter plus rapidement et d'utiliser moins de mémoire, mais cela pourrait légèrement réduire la précision.
Formats d'exportation : La conversion du modèle dans un format tel que TensorRT peut accélérer considérablement son exécution sur certains matériels. Ceci est utile si vous optimisez la vitesse sur des appareils spécifiques.
Comment évaluer YOLO11 sur différents matériels
Le package Python Ultralytics vous permet de convertir les modèles YOLO11 dans différents formats qui s'exécutent plus efficacement sur du matériel spécifique, améliorant ainsi la vitesse et l'utilisation de la mémoire. Chaque format d'exportation est optimisé pour différents appareils.
D'une part, le format ONNX peut accélérer les performances dans divers environnements. D'autre part, OpenVINO améliore l'efficacité sur le matériel Intel, et les formats tels que CoreML ou TF SavedModel sont idéaux pour les appareils Apple et les applications mobiles.
Voyons comment vous pouvez évaluer YOLO11 dans un format spécifique. Le code ci-dessous évalue YOLO11 au format ONNX, qui est largement utilisé pour exécuter des modèles d'IA sur les CPU et les GPU.
from ultralytics.utils.benchmarks import benchmark
# Benchmark a specific export format (e.g., ONNX) benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, format="onnx")
Au-delà des résultats de l'évaluation comparative, le choix du bon format dépend des spécifications de votre système et de vos besoins de déploiement. Par exemple, les voitures autonomes ont besoin d'une détection d'objets rapide. Si vous prévoyez d'utiliser des GPU NVIDIA pour accélérer les performances, le format TensorRT est le choix idéal pour exécuter YOLO11 sur un GPU NVIDIA.
Fig. 5. Utilisation de YOLO11 pour la détection d'objets dans les voitures autonomes.
Principaux points à retenir
Le package Python Ultralytics facilite l'évaluation comparative de YOLO11 en fournissant des commandes simples qui peuvent gérer les tests de performance pour vous. En quelques étapes seulement, vous pouvez voir comment différentes configurations affectent la vitesse et la précision des modèles, ce qui vous aide à faire des choix éclairés sans avoir besoin d'une expertise technique approfondie.
Le bon matériel et les bons paramètres peuvent également faire une énorme différence. L'ajustement de paramètres tels que la taille du modèle et l'ensemble de données vous permet d'affiner YOLO11 pour obtenir les meilleures performances, que vous l'exécutiez sur un GPU haut de gamme ou localement sur un appareil périphérique.