Passer au contenu

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

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

Cette comparaison technique exhaustive explore les approches distinctes des deux modèles, en examinant leur architecture, leur potentiel de déploiement et leurs indicateurs de performance afin d'aider les ingénieurs en apprentissage automatique à choisir l'outil le mieux adapté à leurs applications spécifiques de vision par ordinateur.

Origines du modèle et métadonnées

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 du groupe Alibaba, DAMO-YOLO a été introduit pour optimiser à la fois la vitesse et la précision grâce à la recherche d'architecture automatisée et à la distillation.

En savoir plus sur DAMO-YOLO

YOLOv7

Lancé comme la technologie de pointe à la mi-2022, YOLOv7 l'inférence en temps réel 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 officiellement pris en charge dans Ultralytics , ce qui permet une formation, une validation et une exportation transparentes grâce à une API unifiée.

Innovations architecturales

YOLO: NAS et distillation

DAMO-YOLO intègre plusieurs techniques de pointe visant une efficacité maximale :

  • Backbones NAS : Utilise la recherche d'architecture neuronale (NAS) pour concevoir automatiquement des backbones optimaux (MAE-NAS) adaptés aux environnements où la latence est critique.
  • RepGFPN Efficace : 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 sur plusieurs échelles.
  • ZeroHead & AlignedOTA: Intègre une tête de détection légère et une stratégie d'attribution d'étiquettes optimisée (AlignedOTA) pour réduire la charge computationnelle.
  • Amélioration de la Distillation : Exploite fortement la distillation de connaissances pendant l'entraînement pour améliorer les performances des variantes de modèles plus petites sans augmenter leur nombre de paramètres.

YOLOv7: E-ELAN et Bag-of-Freebies

YOLOv7 une approche plus structurelle, en 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 Efficace Étendu permet au modèle d'apprendre des caractéristiques plus diverses 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 un alignement structurel.
  • Ensemble d'améliorations entraînables : Emploie des techniques comme les convolutions re-paramétrées (RepConv) sans connexions d'identité, et des stratégies d'attribution dynamique d'étiquettes, qui augmentent la précision pendant l'entraînement sans affecter la vitesse d'inférence.

Analyse des performances

Lorsqu'on évalue la précision moyenne (mAP), la vitesse et l'efficacité, les deux modèles affichent des résultats impressionnants, bien qu'ils ciblent des segments légèrement différents. YOLOv7 principalement sur GPU à haute précision, tandis que les structures dérivées du NASYOLO visent un déploiement CPU périphérique agressif à faible latence.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(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 propose des variantes extrêmement légères (comme le modèle tiny avec seulement 8,5M paramètres), YOLOv7 atteint un pic de précision global plus élevé, avec YOLOv7x atteignant un impressionnant 53,1 mAP sur le jeu de données COCO.

L'avantage de l'écosystème Ultralytics

Si l'architecture théorique est importante, la praticité d'un modèle dépend de 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 performance : Les modèles Ultralytics trouvent constamment un compromis optimal entre la vitesse d'inférence et la précision de détection, ce qui les rend idéaux pour les appareils de périphérie et le déploiement de modèles basé sur le cloud.
  • Exigences de mémoire : Contrairement aux modèles plus lourds basés sur des transformeurs, les modèles Ultralytics YOLO maintiennent de faibles exigences en mémoire CUDA pendant l'entraînement. Cela permet des tailles de lot plus importantes, simplifiant 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 pour inclure des tâches telles que la segmentation d'instances et l'estimation de pose, offrant aux développeurs une boîte à outils complète pour la vision par ordinateur.

Efficacité de l'entraînement

Ultralytics vous permet de passer en quelques minutes seulement et en toute transparence d'un ensemble de données à un modèle entièrement entraîné, grâce à des chargeurs de données hautement optimisés et des poids pré-entraînés.

Exemple de code : Entraînement de YOLOv7 avec Ultralytics

L'intégration YOLOv7 votre pipeline de vision par ordinateur est extrêmement simple grâce à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

Si YOLOv7 YOLO des avancées significatives en 2022, le domaine de l'IA visuelle évolue rapidement. Pour les équipes qui lancent aujourd'hui de nouveaux projets, le modèle recommandé est le tout dernier Ultralytics , sorti en janvier 2026.

YOLO26 apporte un bond générationnel en termes de performances et de convivialité, intégrant des innovations de pointe :

  • Conception de bout en bout sans NMS : YOLO26 est nativement de bout en bout. 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 initié 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 de Muon. Cet optimiseur assure une dynamique d'entraînement très stable et des taux de convergence considérablement plus rapides.
  • Jusqu'à 43 % plus rapide pour l'inférence CPU : Grâce à la suppression ciblée de la Distribution Focal Loss (DFL) et à des améliorations structurelles profondes, YOLO26 est fortement optimisé pour l'edge computing basse consommation, surpassant les générations précédentes sur le matériel sans GPU.
  • ProgLoss + STAL: Intègre 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, le RLE pour l'estimation de pose, et des pertes angulaires spécifiques pour les boîtes englobantes orientées (OBB).

En savoir plus sur YOLO26

Cas d'utilisation idéaux

Le choix de la bonne architecture dépend entièrement de votre environnement de déploiement cible et des contraintes de votre projet.

Quand choisirYOLO:

  • Vous travaillez dans des environnements périphériques fortement contraints et aux ressources limitées, où le nombre de paramètres bruts doit être maintenu à un niveau extrêmement bas (par exemple, les microcontrôleurs).
  • Vous utilisez des pipelines d'apprentissage automatique intégrés spécifiquement aux services cloud propriétaires d'Alibaba.

Quand choisir YOLOv7:

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

Quand choisir YOLO26 (recommandé) :

  • Vous développez une nouvelle application de vision par ordinateur à partir de zéro et avez besoin d'une technologie de pointe en matière de précision et de vitesse d'inférence CPU.
  • Vous avez besoin d'un déploiement rapide et transparent (tel que l'exportation vers CoreML ou TensorRT) sans avoir à gérer les contraintes liées NMS .
  • Vous souhaitez exploiter toutes les fonctionnalités de la Ultralytics pour la formation au cloud, la gestion des ensembles de données et le déploiement automatisé.

En exploitant 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 réelles.


Commentaires