Passer au contenu

Évaluation des modèles avec Ultralytics YOLO

Écosystème et intégrations Ultralytics YOLO

Visualisation des benchmarks

Actualiser le navigateur

Vous devrez peut-être actualiser la page pour afficher correctement les graphiques en raison de problèmes potentiels de cookies.

Introduction

Une fois votre modèle entraîné et validé, l'étape logique suivante consiste à évaluer ses performances dans divers scénarios réels. Le mode Benchmark d'Ultralytics YOLO26 sert cet objectif en fournissant un cadre robuste pour évaluer la vitesse et la précision de votre modèle sur une gamme de formats d'exportation.



Regarder : Évaluer les modèles Ultralytics YOLO26 | Comment comparer les performances des modèles sur différents matériels ?

Pourquoi l'évaluation comparative est-elle cruciale ?

  • Décisions éclairées : Obtenez des informations sur les compromis entre la vitesse et la précision.
  • Allocation des ressources : Comprenez comment différents formats d'exportation fonctionnent sur différents matériels.
  • Optimisation : Découvrez quel format d'exportation offre les meilleures performances pour votre cas d'utilisation spécifique.
  • Rentabilité : Utilisez plus efficacement les ressources matérielles en fonction des résultats des benchmarks.

Métriques clés en mode Benchmark

Formats d'exportation pris en charge

  • ONNX : Pour des performances CPU optimales
  • TensorRT : Pour une efficacité GPU maximale
  • OpenVINO : Pour l'optimisation du matériel Intel
  • CoreML, TensorFlow SavedModel, et bien plus : Pour répondre à divers besoins de déploiement.

Astuce

  • Exportez vers ONNX ou OpenVINO pour un gain de vitesse CPU jusqu'à 3x.
  • Exportez vers TensorRT pour un gain de vitesse GPU jusqu'à 5x.

Exemples d'utilisation

Exécutez les benchmarks YOLO26n sur tous les formats d'exportation pris en charge (ONNX, TensorRT, etc.). Consultez la section Arguments ci-dessous pour une liste complète des options d'exportation.

Exemple

from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolo26n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)

# Benchmark specific export format
benchmark(model="yolo26n.pt", data="coco8.yaml", imgsz=640, format="onnx")
yolo benchmark model=yolo26n.pt data='coco8.yaml' imgsz=640 half=False device=0

# Benchmark specific export format
yolo benchmark model=yolo26n.pt data='coco8.yaml' imgsz=640 format=onnx

Arguments

Les arguments tels que model, data, imgsz, half, device, verbose et format offrent aux utilisateurs la flexibilité d'affiner les benchmarks en fonction de leurs besoins spécifiques et de comparer facilement les performances des différents formats d'exportation.

CléValeur par défautDescription
modelNoneSpécifie le chemin d'accès au fichier du modèle. Accepte les deux formats .pt et .yaml par exemple, "yolo26n.pt" pour les modèles pré-entraînés ou les fichiers de configuration.
dataNoneChemin d'accès à un fichier YAML définissant l'ensemble de données pour le benchmarking, incluant généralement les chemins d'accès et les paramètres pour validation. Exemple : "coco8.yaml".
imgsz640La taille de l'image d'entrée pour le modèle. Peut être un entier unique pour les images carrées ou un tuple (width, height) pour non carré, par exemple, (640, 480).
halfFalseActive l'inférence FP16 (demi-précision), réduisant l'utilisation de la mémoire et augmentant potentiellement la vitesse sur le matériel compatible. Utilisez half=True pour activer.
int8FalseActive la quantification INT8 pour des performances encore optimisées sur les appareils pris en charge, particulièrement utile pour les appareils périphériques. Définissez int8=True pour utiliser.
deviceNoneDéfinit le(s) périphérique(s) de calcul pour le benchmarking, tels que "cpu" ou "cuda:0".
verboseFalseContrôle le niveau de détail dans la sortie de journalisation. Définir verbose=True pour des journaux détaillés.
format''Effectue des benchmarks uniquement pour le format d'exportation spécifié (par exemple, format=onnx). Laissez ce champ vide pour tester automatiquement tous les formats pris en charge.

Formats d'exportation

Les évaluations comparatives tenteront de s'exécuter automatiquement sur tous les formats d'exportation possibles énumérés ci-dessous. Vous pouvez également exécuter des évaluations comparatives pour un format spécifique en utilisant le format argument, qui accepte l'un des formats mentionnés ci-dessous.

Formatformat ArgumentModèleMétadonnéesArguments
PyTorch-yolo26n.pt-
TorchScripttorchscriptyolo26n.torchscriptimgsz, half, dynamic, optimize, nms, batch, device
ONNXonnxyolo26n.onnximgsz, half, dynamic, simplify, opset, nms, batch, device
OpenVINOopenvinoyolo26n_openvino_model/imgsz, half, dynamic, int8, nms, batch, data, fraction, device
TensorRTengineyolo26n.engineimgsz, half, dynamic, simplify, workspace, int8, nms, batch, data, fraction, device
CoreMLcoremlyolo26n.mlpackageimgsz, dynamic, half, int8, nms, batch, device
TF SavedModelsaved_modelyolo26n_saved_model/imgsz, keras, int8, nms, batch, device
TF GraphDefpbyolo26n.pbimgsz, batch, device
TF Litetfliteyolo26n.tfliteimgsz, half, int8, nms, batch, data, fraction, device
TF Edge TPUedgetpuyolo26n_edgetpu.tfliteimgsz, device
TF.jstfjsyolo26n_web_model/imgsz, half, int8, nms, batch, device
PaddlePaddlepaddleyolo26n_paddle_model/imgsz, batch, device
MNNmnnyolo26n.mnnimgsz, batch, int8, half, device
NCNNncnnyolo26n_ncnn_model/imgsz, half, batch, device
IMX500imxyolo26n_imx_model/imgsz, int8, data, fraction, device
RKNNrknnyolo26n_rknn_model/imgsz, batch, name, device
ExecuTorchexecutorchyolo26n_executorch_model/imgsz, device
Axeleraaxelerayolo26n_axelera_model/imgsz, int8, data, fraction, device

Voir tous les export détails dans la section Exporter page.

FAQ

Comment évaluer les performances de mon modèle YOLO26 à l'aide d'Ultralytics ?

Ultralytics YOLO26 propose un mode Benchmark pour évaluer les performances de votre modèle sur différents formats d'exportation. Ce mode fournit des informations sur des métriques clés telles que la précision moyenne (mAP50-95), l'exactitude et le temps d'inférence en millisecondes. Pour exécuter des benchmarks, vous pouvez utiliser des commandes python ou CLI. Par exemple, pour effectuer un benchmark sur un GPU :

Exemple

from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolo26n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)
yolo benchmark model=yolo26n.pt data='coco8.yaml' imgsz=640 half=False device=0

Pour plus de détails sur les arguments de benchmark, consultez la section Arguments.

Quels sont les avantages d'exporter les modèles YOLO26 vers différents formats ?

L'exportation des modèles YOLO26 vers différents formats tels que ONNX, TensorRT et OpenVINO vous permet d'optimiser les performances en fonction de votre environnement de déploiement. Par exemple :

  • ONNX : Fournit un gain de vitesse CPU jusqu'à 3x.
  • TensorRT : Offre une accélération GPU jusqu'à 5x.
  • OpenVINO : Spécifiquement optimisé pour le matériel Intel.

Ces formats améliorent à la fois la vitesse et la précision de vos modèles, les rendant plus efficaces pour diverses applications du monde réel. Visitez la page Exportation pour tous les détails.

Pourquoi le benchmarking est-il crucial pour l'évaluation des modèles YOLO26 ?

L'évaluation comparative de vos modèles YOLO26 est essentielle pour plusieurs raisons :

  • Décisions éclairées : Comprendre les compromis entre vitesse et précision.
  • Allocation des ressources : Évaluer les performances sur différentes options matérielles.
  • Optimisation : Déterminer quel format d'exportation offre les meilleures performances pour des cas d'utilisation spécifiques.
  • Rentabilité : Optimisez l'utilisation du matériel en fonction des résultats des benchmarks.

Les indicateurs clés tels que le mAP50-95, la précision Top-5 et le temps d'inférence aident à effectuer ces évaluations. Consultez la section Indicateurs clés pour plus d'informations.

Quels formats d'exportation sont pris en charge par YOLO26, et quels sont leurs avantages ?

YOLO26 prend en charge une variété de formats d'exportation, chacun adapté à des matériels et des cas d'utilisation spécifiques :

  • ONNX : Idéal pour les performances du CPU.
  • TensorRT : Idéal pour l'efficacité du GPU.
  • OpenVINO : Optimisé pour le matériel Intel.
  • CoreML & TensorFlow : Utile pour les applications iOS et ML générales.

Pour une liste complète des formats pris en charge et de leurs avantages respectifs, consultez la section Formats d'exportation pris en charge.

Quels arguments puis-je utiliser pour affiner mes benchmarks YOLO26 ?

Lors de l'exécution de benchmarks, plusieurs arguments peuvent être personnalisés pour répondre à des besoins spécifiques :

  • modèle : Chemin d'accès au fichier du modèle (par exemple, "yolo26n.pt").
  • data : Chemin d'accès à un fichier YAML définissant l'ensemble de données (par exemple, « coco8.yaml »).
  • imgsz : La taille de l'image d'entrée, soit sous forme d'un entier unique, soit sous forme d'un tuple.
  • half : Activer l'inférence FP16 pour de meilleures performances.
  • int8 : Activer la quantification INT8 pour les appareils périphériques.
  • device : Spécifier le dispositif de calcul (par exemple, « cpu », « cuda:0 »).
  • verbose : Contrôle le niveau de détail de la journalisation.

Pour une liste complète des arguments, consultez la section Arguments.



📅 Créé il y a 2 ans ✏️ Mis à jour il y a 7 jours
glenn-jocherRizwanMunawarBurhan-Qambitious-octopuspderrengerlakshanthadY-T-GUltralyticsAssistantjk4eMatthewNoyceRizwanMunawar

Commentaires