Link to this sectionDAMO-YOLO vs YOLOv7#
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 tous 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 exhaustive 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 l'outil adapté à leurs applications de vision par ordinateur spécifiques.
Link to this sectionOrigines et métadonnées des modèles#
Avant de plonger dans l'analyse technique approfondie, il est essentiel de remettre dans leur contexte les origines de ces deux modèles de vision par ordinateur.
Link to this sectionDAMO-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 d'architecture automatisée et à la distillation.
- Auteurs : Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang et Xiuyu Sun
- Organisation : Alibaba Group
- Date : 23 novembre 2022
- Arxiv : 2211.15444v2
- GitHub : tinyvision/DAMO-YOLO
Link to this sectionYOLOv7#
Sorti comme l'état de l'art à la mi-2022, YOLOv7 a fait progresser l'inférence en temps réel en introduisant des "bag-of-freebies" entraînables sans augmenter les coûts de déploiement.
- Auteurs : Chien-Yao Wang, Alexey Bochkovskiy et Hong-Yuan Mark Liao
- Organisation : Institute of Information Science, Academia Sinica, Taïwan
- Date : 6 juillet 2022
- Arxiv : 2207.02696
- Docs : Documentation YOLOv7
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.
Link to this sectionInnovations architecturales#
Link to this sectionDAMO-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 où la latence est critique.
- Efficient RepGFPN : Un réseau de pyramide de caractéristiques généralisé modifié qui améliore considérablement l'efficacité de la fusion de caractéristiques à travers plusieurs échelles.
- ZeroHead & AlignedOTA : Intègre 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 largement parti de la distillation de connaissances pendant l'entraînement pour augmenter les performances des variantes de modèles plus petits sans augmenter leur nombre de paramètres.
Link to this sectionYOLOv7 : E-ELAN et Bag-of-Freebies#
YOLOv7 a adopté une approche d'ingénierie plus structurelle, se concentrant sur l'optimisation des chemins de gradient et des stratégies d'entraînement robustes.
- Architecture E-ELAN : L'Extended Efficient Layer Aggregation Network 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, ajustant la profondeur et la largeur simultanément pour un alignement structurel.
- Bag-of-Freebies entraînables : Emploie des techniques comme les convolutions reparamétrées (RepConv) sans connexions d'identité, et des stratégies d'affectation dynamique d'étiquettes, qui augmentent la précision pendant l'entraînement sans affecter la vitesse d'inférence.
Link to this sectionAnalyse des performances#
Lors de l'évaluation de la précision moyenne (mAP), de la vitesse et de l'efficacité, les deux modèles présentent des métriques impressionnantes, bien qu'ils visent des segments légèrement différents. YOLOv7 se concentre fortement sur le déploiement GPU haute précision, tandis que les structures issues du NAS de DAMO-YOLO visent un déploiement agressif sur CPU et périphérie à faible latence.
| Modèle | taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97,3 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.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,5M de paramètres), YOLOv7 atteint un pic de précision globale plus élevé, avec YOLOv7x atteignant un mAP impressionnant de 53,1 sur le jeu de données COCO.
Link to this sectionL'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 atteignent systématiquement un compromis optimal entre vitesse d'inférence et précision de détection, les rendant idéaux pour les appareils en périphérie comme pour le déploiement de modèles sur le cloud.
- Exigences de mémoire : Contrairement aux modèles plus lourds basés sur Transformer, les modèles YOLO d'Ultralytics maintiennent de faibles exigences de mémoire CUDA pendant l'entraînement. Cela permet des tailles de batch plus grandes, 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 à 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.
Le package Ultralytics te permet de passer facilement des jeux de données à un modèle entièrement entraîné en quelques minutes, en tirant parti de chargeurs de données hautement optimisés et de poids pré-entraînés.
Link to this sectionExemple de code : Entraînement de YOLOv7 avec Ultralytics#
Intégrer YOLOv7 dans ton pipeline de vision par ordinateur est incroyablement simple en utilisant l'API Python d'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)Link to this sectionLa 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 lançant de nouveaux projets aujourd'hui, le modèle recommandé est le Ultralytics YOLO26 de pointe, sorti en janvier 2026.
YOLO26 apporte un saut générationnel en termes de performance et d'utilisabilité, intégrant des innovations de pointe :
- Conception end-to-end sans NMS : YOLO26 est nativement end-to-end. En éliminant le post-traitement Non-Maximum Suppression (NMS), il offre une logique de déploiement plus rapide et plus simple—un changement de paradigme initialement introduit 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 des dynamiques d'entraînement hautement stables et des taux de convergence considérablement 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 : Intègre de nouvelles fonctions de perte avancées qui ciblent explicitement et améliorent la reconnaissance des petits objets, une capacité essentielle pour les applications dans l'imagerie aérienne, la robotique et la 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, incluant le prototypage multi-échelle pour la segmentation, RLE pour l'estimation de pose, et des pertes d'angle spécifiques pour les boîtes englobantes orientées (OBB).
Link to this sectionCas d'utilisation idéaux#
Le choix de 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 (ex : 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 existants 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 à grande vitesse ou la robotique avancée.
Quand choisir YOLO26 (recommandé) :
- Tu construis une nouvelle application de vision par ordinateur à partir de zéro et tu as besoin de ce qu'il y a de plus moderne 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 (comme l'exportation vers CoreML ou TensorRT) sans avoir à gérer les contraintes des opérateurs NMS.
- Tu souhaites 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 plan pour leurs applications réelles.