DAMO-YOLO vs YOLOv7 : Évaluation des détecteurs d'objets en temps réel

L'évolution rapide de la vision par ordinateur a produit des modèles de détection d'objets hautement efficaces, conçus pour équilibrer précision et coût computationnel. Deux modèles notables introduits en 2022 sont DAMO-YOLO et YOLOv7. Bien que les deux visent à repousser les limites des tâches de vision en temps réel, ils atteignent leurs résultats grâce à des paradigmes architecturaux et des méthodologies d'entraînement très différents.

Cette comparaison technique complète explore les approches distinctes des deux modèles, en examinant leurs architectures, leur potentiel de déploiement et leurs métriques de performance pour aider les ingénieurs en apprentissage automatique à choisir le bon outil pour leurs applications de vision par ordinateur spécifiques.

Origines et métadonnées du modèle

Avant de plonger dans l'analyse technique approfondie, il est essentiel de contextualiser les origines de ces deux modèles de vision par ordinateur.

DAMO-YOLO

Développé par des chercheurs d'Alibaba Group, DAMO-YOLO a été introduit pour optimiser à la fois la vitesse et la précision grâce à la recherche automatique d'architecture et à la distillation.

En savoir plus sur DAMO-YOLO

YOLOv7

Sorti en tant qu'état de l'art mi-2022, YOLOv7 a poussé l'inférence en temps réel plus loin en introduisant des « bag-of-freebies » entraînables sans augmenter les coûts de déploiement.

En savoir plus sur YOLOv7

Écosystème pris en charge

YOLOv7 est officiellement pris en charge au sein de l'écosystème Ultralytics, permettant un entraînement, une validation et une exportation fluides avec une API unifiée.

Innovations architecturales

DAMO-YOLO : NAS et distillation

DAMO-YOLO intègre plusieurs techniques de pointe orientées vers une efficacité maximale :

  • Backbones NAS : Utilise la recherche d'architecture neuronale (NAS) pour concevoir automatiquement des backbones optimaux (MAE-NAS) adaptés aux environnements critiques en termes de latence.
  • Efficient RepGFPN : Un réseau de pyramide de caractéristiques généralisé modifié qui améliore considérablement l'efficacité de la fusion des caractéristiques à travers plusieurs échelles.
  • ZeroHead & AlignedOTA : Incorpore une tête de détection légère et une stratégie d'affectation d'étiquettes optimisée (AlignedOTA) pour réduire la surcharge computationnelle.
  • Amélioration par distillation : Tire fortement parti de la distillation des connaissances pendant l'entraînement pour augmenter les performances des variantes de modèles plus petits sans gonfler leur nombre de paramètres.

YOLOv7 : E-ELAN et Bag-of-Freebies

YOLOv7 a adopté une approche d'ingénierie structurelle, se concentrant sur l'optimisation du chemin de gradient et des stratégies d'entraînement robustes.

  • Architecture E-ELAN : Le réseau d'agrégation de couches efficaces étendu permet au modèle d'apprendre des caractéristiques plus diversifiées en contrôlant les chemins de gradient les plus courts et les plus longs, assurant une convergence d'apprentissage efficace.
  • Mise à l'échelle du modèle : Introduit une méthode de mise à l'échelle composée adaptée aux modèles basés sur la concaténation, mettant à l'échelle la profondeur et la largeur simultanément pour l'alignement structurel.
  • Bag-of-Freebies entraînable : Emploie des techniques comme les convolutions re-paramétrées (RepConv) sans connexions d'identité, et des stratégies dynamiques d'affectation d'étiquettes, qui augmentent la précision pendant l'entraînement sans affecter la vitesse d'inférence.

Analyse des performances

Lors de l'évaluation de la précision moyenne moyenne (mAP), de la vitesse et de l'efficacité, les deux modèles présentent des métriques impressionnantes, bien qu'ils ciblent des segments légèrement différents. YOLOv7 se concentre fortement sur le déploiement GPU de haute précision, tandis que les structures dérivées du NAS de DAMO-YOLO visent un déploiement agressif sur CPU et périphérie à faible latence.

Modèletaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Comme le montrent les métriques, bien que DAMO-YOLO fournisse des variantes extrêmement légères (comme le modèle tiny avec seulement 8,5 M de paramètres), YOLOv7 atteint un pic de précision globale plus élevé, avec YOLOv7x atteignant un impressionnant 53,1 mAP sur le jeu de données COCO.

L'avantage de l'écosystème Ultralytics

Bien que l'architecture théorique soit importante, la praticité d'un modèle est dictée par son écosystème. Les modèles pris en charge par Ultralytics, tels que YOLOv7, bénéficient d'un écosystème bien entretenu et d'une facilité d'utilisation inégalée.

  • Équilibre des performances : Les modèles Ultralytics trouvent systématiquement un compromis optimal entre la vitesse d'inférence et la précision de détection, ce qui les rend idéaux à la fois pour les appareils en périphérie et le déploiement de modèles basé sur le cloud.
  • Exigences en mémoire : Contrairement aux modèles plus lourds basés sur Transformer, les modèles YOLO d'Ultralytics maintiennent de faibles exigences en mémoire CUDA pendant l'entraînement. Cela permet des tailles de batch plus importantes, rationalisant le processus d'entraînement même sur du matériel grand public.
  • Polyvalence : Le framework Ultralytics s'étend au-delà de la détection d'objets à des tâches telles que la segmentation d'instance et l'estimation de pose, offrant aux développeurs une boîte à outils complète de vision par ordinateur.
Efficacité de l'entraînement

Le package Ultralytics te permet de passer de manière transparente des jeux de données à un modèle entièrement entraîné en quelques minutes seulement, en tirant parti de chargeurs de données hautement optimisés et de poids pré-entraînés.

Exemple de code : Entraîner YOLOv7 avec Ultralytics

Intégrer YOLOv7 dans ton pipeline de vision par ordinateur est incroyablement simple en utilisant l'API Python Ultralytics.

from ultralytics import YOLO

# Load a pre-trained YOLOv7 model
model = YOLO("yolov7.pt")

# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)

# Run inference and validate results
metrics = model.val()
predictions = model.predict("https://ultralytics.com/images/bus.jpg", save=True)

La nouvelle norme : Présentation de YOLO26

Bien que YOLOv7 et DAMO-YOLO aient représenté des percées significatives en 2022, le domaine de l'IA visuelle évolue rapidement. Pour les équipes qui lancent de nouveaux projets aujourd'hui, le modèle recommandé est le Ultralytics YOLO26 de pointe, publié en janvier 2026.

YOLO26 apporte un saut générationnel en termes de performances et de facilité d'utilisation, intégrant des innovations à la pointe de la technologie :

  • Conception end-to-end sans NMS : YOLO26 est nativement end-to-end. En éliminant le post-traitement de suppression non maximale (NMS), il offre une logique de déploiement plus rapide et plus simple — un changement de paradigme initialement lancé par YOLOv10.
  • Optimiseur MuSGD : Inspiré par les innovations des grands modèles de langage comme Kimi K2 de Moonshot AI, YOLO26 utilise un hybride de SGD et Muon. Cet optimiseur assure une dynamique d'entraînement hautement stable et des taux de convergence nettement plus rapides.
  • Inférence CPU jusqu'à 43 % plus rapide : Avec la suppression ciblée de la Distribution Focal Loss (DFL) et des améliorations structurelles profondes, YOLO26 est fortement optimisé pour l'informatique en périphérie à faible consommation, surpassant les générations précédentes sur le matériel non-GPU.
  • ProgLoss + STAL : Incorpore de nouvelles fonctions de perte avancées qui ciblent et améliorent explicitement la reconnaissance des petits objets, une capacité essentielle pour les applications en imagerie aérienne, robotique et surveillance de sécurité.
  • Améliorations spécifiques aux tâches : Au-delà de la détection standard, YOLO26 propose des améliorations sur mesure pour diverses tâches, notamment le prototypage multi-échelle pour la segmentation, RLE pour l'estimation de pose et des pertes d'angle spécifiques pour les Oriented Bounding Boxes (OBB).

En savoir plus sur YOLO26

Cas d'utilisation idéaux

Choisir la bonne architecture dépend entièrement de ton environnement de déploiement cible et des contraintes de ton projet.

Quand choisir DAMO-YOLO :

  • Tu travailles dans des environnements en périphérie fortement contraints et limités en ressources où le nombre brut de paramètres doit être maintenu extrêmement bas (par exemple, des microcontrôleurs).
  • Tu utilises des pipelines d'apprentissage automatique automatisés spécifiquement intégrés aux services cloud propriétaires d'Alibaba.

Quand choisir YOLOv7 :

  • Tu as des pipelines GPU hérités déjà optimisés pour l'inférence basée sur des ancres et de haute précision.
  • Tu opères dans des environnements où la précision en temps réel est primordiale, comme les véhicules autonomes à haute vitesse ou la robotique avancée.

Quand choisir YOLO26 (Recommandé) :

  • Tu construis une nouvelle application de vision par ordinateur à partir de zéro et as besoin de ce qui se fait de mieux en termes de précision et de vitesse d'inférence CPU/périphérie.
  • Tu as besoin d'un déploiement rapide et fluide (tel que l'exportation vers CoreML ou TensorRT) sans avoir à gérer les contraintes des opérateurs NMS.
  • Tu veux utiliser toutes les capacités de la plateforme Ultralytics pour l'entraînement dans le cloud, la gestion des jeux de données et le déploiement automatisé.

En tirant parti de l'écosystème robuste des modèles Ultralytics, les développeurs peuvent réduire considérablement le temps d'ingénierie tout en garantissant des performances prédictives de premier ordre pour leurs applications concrètes.

Commentaires