Ultralytics YOLO27 :
Get Started

YOLOv8 contre YOLOv7#

Le domaine de la vision par ordinateur évolue sans cesse, et les nouvelles architectures repoussent les limites de la détection d’objets en temps réel. Dans cette analyse approfondie, nous comparons deux modèles très influents : Ultralytics YOLOv8 et YOLOv7. Les deux modèles ont eu un impact important sur la communauté des développeurs et la recherche universitaire, en proposant des approches distinctes pour résoudre des tâches visuelles complexes.

Comprendre les différences structurelles et méthodologiques entre ces deux modèles est essentiel pour les ingénieurs en apprentissage automatique qui cherchent à optimiser leurs pipelines de déploiement. YOLOv7 a introduit une approche puissante de « sac de gratuités » adaptée au débit brut, tandis qu’Ultralytics YOLOv8 s’est concentré sur la création d’un écosystème holistique et facile à utiliser, qui concilie grande précision, faible consommation mémoire et polyvalence multitâche.

Ultralytics YOLOv8 : la référence d’un écosystème polyvalent#

Lancé par Ultralytics début 2023, YOLOv8 marque un changement architectural majeur par rapport à ses prédécesseurs. Conçu dès le départ pour être bien plus qu’un détecteur d’objets en temps réel, il s’agit d’un framework unifié capable de prendre en charge immédiatement un large éventail de tâches de vision.

Innovations architecturales#

YOLOv8 a introduit une tête de détection innovante sans ancres. Elle simplifie fondamentalement le processus d’entraînement en éliminant la nécessité de configurer manuellement des boîtes d’ancrage selon la distribution particulière de ton jeu de données personnalisé. Ce choix de conception rend le modèle très robuste et facilite sa généralisation à différents environnements.

En outre, l’architecture comprend le module C2f (goulot d’étranglement partiel inter-étages avec deux convolutions), une amélioration structurelle qui favorise la propagation du gradient et permet au réseau neuronal d’apprendre des représentations de caractéristiques plus riches sans augmenter considérablement le coût de calcul. Le modèle est ainsi très efficace pour l’inférence avec des frameworks d’apprentissage profond standard comme PyTorch.

Efficacité mémoire

Les modèles YOLO d’Ultralytics sont conçus pour offrir une efficacité d’entraînement maximale. Ils nécessitent généralement beaucoup moins de mémoire CUDA pendant l’entraînement que les architectures fondées sur des Transformers ou les CNN plus lourds. Tu peux ainsi t’entraîner avec des tailles de lot plus importantes sur du matériel grand public, ce qui accélère ton cycle de développement.

YOLOv7 : l’approche du « sac de gratuités »#

Introduit mi-2022, YOLOv7 est rapidement devenu une référence populaire dans les milieux universitaires. Il met fortement l’accent sur le réparamétrage de l’architecture et l’optimisation du chemin du gradient afin de repousser les limites de la détection d’objets en temps réel sur les GPU haut de gamme.

  • Auteurs : Chien-Yao Wang, Alexey Bochkovskiy et Hong-Yuan Mark Liao
  • Organisation : Institute of Information Science, Academia Sinica, Taïwan
  • Date : 2022-07-06
  • arXiv : 2207.02696
  • GitHub : WongKinYiu/yolov7

Innovations architecturales#

YOLOv7 utilise un réseau étendu efficace d’agrégation de couches (E-ELAN), qui permet au modèle d’apprendre continuellement des caractéristiques plus diverses. Il repose largement sur un paradigme avec ancres et introduit un « sac de gratuités » entraînable, c’est-à-dire un ensemble de méthodes d’optimisation qui améliorent la précision sans augmenter le coût d’inférence.

YOLOv7 obtient d’excellents résultats sur des références universitaires standard comme le jeu de données MS COCO, mais son architecture est fortement optimisée pour les accélérateurs de classe serveur. L’exportation et le déploiement de ces modèles sur des appareils périphériques peuvent parfois nécessiter davantage de configuration manuelle qu’avec des frameworks plus modernes et simplifiés.

En savoir plus sur YOLOv7

Comparaison détaillée des performances#

Lors de l’évaluation de ces modèles, le compromis entre vitesse, précision et taille du modèle est le principal facteur à prendre en compte. Le tableau ci-dessous présente les métriques des deux modèles.

Modèletaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.1
YOLOv8x64053.9479.114.3768.2257.8
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Comme le montrent les données, YOLOv8x atteint la précision absolue la plus élevée (53.9 mAP), tandis que la variante nano (YOLOv8n) offre des vitesses d’inférence exceptionnelles et une empreinte extrêmement réduite. Cette diversité rend YOLOv8 beaucoup plus adaptable aux environnements matériels aux ressources limitées.

L’avantage d’Ultralytics : simplicité d’utilisation et écosystème#

YOLOv7 offre de solides métriques de détection brutes, mais Ultralytics YOLOv8 le surpasse nettement en matière d’expérience de développement, d’intégration à l’écosystème et de capacités multitâches.

Une polyvalence inégalée#

YOLOv7 est principalement un modèle de détection, avec des branches expérimentales pour d’autres tâches. À l’inverse, YOLOv8 prend nativement en charge la détection d’objets, la segmentation d’instances, la classification d’images, l’estimation de pose et les boîtes englobantes orientées (OBB). Cette approche unifiée permet à une équipe de maîtriser une seule API et de la déployer pour répondre à des exigences de projets très différentes.

Déploiement simplifié et intégrations#

L’exportation d’un modèle pour la production peut souvent constituer un goulot d’étranglement. Le paquet Ultralytics permet aux développeurs d’exporter dans des formats comme ONNX, TensorRT et CoreML en une seule ligne de code Python. Cela évite les problèmes de prise en charge des opérateurs parfois rencontrés lors de l’exportation de graphes complexes fondés sur des ancres.

De plus, YOLOv8 s’intègre facilement aux outils MLOps. Que tu suives tes expériences avec Weights & Biases ou que tu testes des déploiements sur Hugging Face Spaces, l’écosystème Ultralytics prend en charge les tâches complexes.

Exemple de code : entraîner et exporter YOLOv8#

Le code suivant montre la simplicité de l’API Python d’Ultralytics. En moins de dix lignes de code, tu peux passer de l’initialisation d’un modèle à son entraînement et à son exportation pour un déploiement en périphérie.

from ultralytics import YOLO

# Charger un modèle nano YOLOv8 préentraîné pour une inférence rapide
model = YOLO("yolov8n.pt")

# Entraîner le modèle sur le jeu de données COCO8
# L’API gère automatiquement le chargement des données, l’augmentation et la journalisation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Exécuter l’inférence sur une image de test
predictions = model("https://ultralytics.com/images/bus.jpg")

# Exporte le modèle entraîné au format ONNX pour le déploiement
model.export(format="onnx")
Flexibilité du déploiement

La fonction model.export() fournit immédiatement une passerelle vers des moteurs d’inférence haute performance, ce qui te permet d’intégrer facilement YOLOv8 dans des applications mobiles, des systèmes embarqués ou des serveurs cloud à haut débit.

Cas d'utilisation concrets#

Les différences architecturales entre les deux modèles déterminent les scénarios de déploiement qui leur conviennent le mieux.

Quand choisir YOLOv8 :

  • IA en périphérie et appareils IoT : les modèles Nano et Small ultrarapides rendent YOLOv8 idéal pour le matériel aux capacités de calcul limitées, comme les caméras intelligentes ou les drones.
  • Projets multitâches : si ton pipeline doit suivre les articulations humaines (estimation de pose) tout en cartographiant simultanément les obstacles (segmentation), YOLOv8 prend ces tâches en charge nativement.
  • Du prototypage rapide à la production : la documentation complète d’Ultralytics et l’API Python fluide permettent aux équipes de commercialiser leurs produits plus rapidement.

Quand envisager YOLOv7 :

  • Évaluation comparative universitaire : les chercheurs qui étudient les effets des techniques de réparamétrage utilisent souvent YOLOv7 comme référence standard, comme en témoigne sa popularité sur Hugging Face Papers.
  • Pipelines serveur existants : si un pipeline existant nécessitant beaucoup de calcul est déjà strictement optimisé autour des sorties d’ancres spécifiques de YOLOv7, le conserver peut être pratique à court terme.

Perspectives : la prochaine génération#

YOLOv8 reste un modèle polyvalent et puissant, mais le paysage de l’IA évolue rapidement. Pour les équipes qui démarrent de nouveaux projets, nous recommandons vivement d’explorer les dernières avancées de la gamme Ultralytics.

La nouvelle génération, YOLO26, représente le summum actuel de l’IA visuelle. Elle propose une option de conception de bout en bout sans NMS (nms=False) qui élimine le post-traitement par suppression non maximale pour simplifier et accélérer le déploiement. Grâce à la suppression de Distribution Focal Loss (DFL) et à l’introduction de l’optimiseur MuSGD, inspiré des LLM, YOLO26 offre un entraînement plus stable et une inférence sur CPU jusqu’à 43 % plus rapide. Ses fonctions de perte avancées ProgLoss + STAL améliorent considérablement la reconnaissance des petits objets, ce qui en fait le choix ultime pour l’informatique moderne en périphérie et l’imagerie aérienne.

Pour les utilisateurs qui passent d’anciens systèmes à de nouveaux, YOLO11, très performant, et le modèle classique YOLOv5 restent également entièrement pris en charge dans l’écosystème unifié d’Ultralytics. Quelles que soient tes contraintes matérielles, tu disposes ainsi d’un modèle optimisé et performant, prêt à être déployé.

Commentaires