Passer au contenu

YOLOv6.0 vs EfficientDet : équilibre entre vitesse industrielle et précision évolutive

Dans le domaine en constante évolution de la vision par ordinateur, il est essentiel de choisir la bonne architecture de détection d'objets pour garantir le succès du déploiement. Cette comparaison explore deux modèles influents : YOLOv6.YOLOv6, un cadre industriel axé sur la vitesse développé par Meituan, et EfficientDet, une architecture hautement évolutive développée par Google . Alors qu'EfficientDet a introduit des concepts d'efficacité révolutionnaires, YOLOv6. YOLOv6 optimise ces principes pour GPU moderne.

Comparaison des métriques de performance

Le tableau suivant met en évidence les compromis en termes de performances entre les deux architectures. YOLOv6. YOLOv6 affiche une latence supérieure sur GPU grâce à sa conception adaptée au matériel, tandis qu'EfficientDet offre une évolutivité granulaire pour un large éventail de contraintes.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0

YOLOv6-3.0 : Le bolide industriel

Publié le 13 janvier 2023 par les auteurs Chuyi Li, Lulu Li et l'équipe de Meituan, YOLOv6.YOLOv6 (souvent appelé «YOLOv6 .0 ») représente une « refonte complète » du framework. Il a été spécialement conçu pour les applications industrielles où un débit élevé et une faible latence sur les GPU sont indispensables.

Innovations architecturales

YOLOv6.YOLOv6 intègre le réseau d'agrégation de chemins bidirectionnels (Bi-PAN), qui améliore les capacités de fusion des caractéristiques par rapport aux structures PANet standard. Il utilise principalement des blocs de type RepVGG, ce qui permet au modèle d'avoir une topologie à branches multiples pendant l'entraînement pour un meilleur flux de gradient, qui se réduit ensuite à une structure à chemin unique pendant l'inférence. Cette technique de reparamétrisation augmente considérablement la vitesse d'inférence sur du matériel tel que les GPU NVIDIA T4 et GeForce.

Les fonctionnalités supplémentaires comprennent :

  • Formation assistée par ancrage (AAT) : stratégie hybride combinant des paradigmes de détection basés sur des ancrages et sans ancrages afin de stabiliser la convergence.
  • Tête découplée : sépare les branches de classification et de régression, améliorant ainsi la précision en permettant à chaque tâche d'apprendre des caractéristiques indépendantes.

En savoir plus sur YOLOv6

EfficientDet : la norme évolutive

Développé par l'équipe Google (Mingxing Tan, Ruoming Pang, Quoc V. Le) et publié le 20 novembre 2019, EfficientDet a introduit le concept de mise à l'échelle composée dans la détection d'objets. Il s'appuie sur l'infrastructure EfficientNet et introduit le réseau pyramidal bidirectionnel (BiFPN).

Points forts architecturaux

La principale innovation d'EfficientDet réside dans le BiFPN, qui permet une fusion facile et rapide des caractéristiques à plusieurs échelles. Contrairement aux FPN traditionnels, le BiFPN utilise des poids apprenables pour comprendre l'importance des différentes caractéristiques d'entrée. Le modèle s'adapte principalement grâce à un coefficient composé $\phi$, qui adapte uniformément la résolution, la profondeur et la largeur. Cela permet à EfficientDet de cibler des contraintes de ressources très spécifiques, des appareils mobiles (d0) aux tâches serveur de haute précision (d7).

Note héritée

Bien qu'EfficientDet atteigne une efficacité paramétrique élevée (modèle de petite taille), ses couches BiFPN complexes et ses fonctions d'activation Swish peuvent être coûteuses en termes de calcul sur certains accélérateurs périphériques par rapport aux convolutions 3x3 standard utilisées dans YOLO .

Comparaison et analyse techniques

1. Latence contre efficacité

La différence la plus notable réside dans la définition de l'« efficacité ». EfficientDet optimise les FLOP (opérations en virgule flottante) et le nombre de paramètres, offrant une excellente précision avec des fichiers de modèle très petits (par exemple, EfficientDet-d0 ne compte que 3,9 millions de paramètres). Cependant, un faible nombre de FLOP ne se traduit pas toujours par une faible latence.

YOLOv6 optimise la latence d'inférence sur les GPU. Comme le montre le tableau, YOLOv6. YOLOv6 fonctionne à 1,17 ms sur un GPU T4, tandis que le modèle comparable EfficientDet-d0 prend 3,92 ms, soit près de trois fois plus lent malgré un nombre de paramètres inférieur. Cela rend YOLOv6 pour l'analyse vidéo en temps réel.

2. Écosystème de formation

EfficientDet s'appuie fortement sur TensorFlow et les bibliothèques AutoML. Bien que puissants, ceux-ci peuvent être difficiles à intégrer dans les workflows modernes PyTorch. YOLOv6, et plus particulièrement son intégration dans l' Ultralytics , bénéficie d'une PyTorch plus accessible, ce qui facilite le débogage, la modification et le déploiement.

3. Polyvalence

EfficientDet est principalement conçu pour la détection de boîtes englobantes. En revanche, YOLO modernes YOLO prises en charge par Ultralytics évolué vers des systèmes d'apprentissage multitâches.

L'avantage Ultralytics

Si YOLOv6. YOLOv6 et EfficientDet sont des modèles performants, Ultralytics offre une interface unifiée qui simplifie considérablement le cycle de vie du machine learning. Que vous utilisiez YOLOv8, YOLO11 ou le tout dernier YOLO26, les développeurs bénéficient des avantages suivants :

  • Facilité d'utilisation : une Python cohérente qui vous permet de passer d'un modèle à l'autre en modifiant une seule chaîne de caractères.
  • Équilibre des performances : Ultralytics sont conçus pour offrir le meilleur compromis entre vitesse et précision moyenne (mAP).
  • Écosystème bien entretenu : assistance active, mises à jour fréquentes et intégration transparente avec des outils tels que Ultralytics pour la gestion des ensembles de données et la formation dans le cloud.
  • Exigences en matière de mémoire : utilisation nettement moindre de la mémoire VRAM pendant la formation par rapport aux architectures à forte intensité de transformateurs, démocratisant ainsi l'accès à la formation en IA haut de gamme.

Mise à niveau vers YOLO26

Pour les développeurs à la recherche de performances optimales, YOLO26 (sorti en janvier 2026) repousse encore plus loin les limites. Il introduit une conception de bout en bout NMS, éliminant ainsi le besoin d'un post-traitement par suppression non maximale. Cela réduit la variance de latence et simplifie la logique de déploiement.

Les principales innovations du YOLO26 comprennent :

  • MuSGD Optimizer : un optimiseur hybride inspiré de la formation LLM (Kimi K2 de Moonshot AI) pour une convergence stable.
  • Suppression DFL : la suppression de la perte focale de distribution simplifie la tête de sortie, améliorant ainsi la compatibilité avec les périphériques de pointe.
  • ProgLoss + STAL : fonctions de perte avancées qui améliorent la détection des petits objets, essentielle pour les applications de drones et d'IoT.
  • CPU jusqu'à 43 % plus rapide : optimisée spécifiquement pour les environnements sans GPU dédiés.

En savoir plus sur YOLO26

Python : formation avec Ultralytics

Le code suivant montre à quel point il est simple de former un modèle de pointe à l'aide du Ultralytics . Cette API unifiée prend en charge YOLOv8, YOLO11 et YOLO26 de manière transparente.

from ultralytics import YOLO

# Load the cutting-edge YOLO26n model
model = YOLO("yolo26n.pt")

# Train on the COCO8 dataset for 100 epochs
# The system automatically handles dataset downloading and configuration
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on a sample image
results = model("https://ultralytics.com/images/bus.jpg")

Recommandations de cas d'utilisation

Quand choisir YOLOv6-3.0

  • Lignes de fabrication : détection rapide des défauts lorsque GPU est disponible et que la latence doit être inférieure à 5 ms.
  • Analyse des données des villes intelligentes : traitement d'un nombre considérable de flux vidéo sur des GPU de niveau serveur (par exemple, T4, A100).
  • Automatisation du commerce de détail : reconnaissance des produits en temps réel dans les systèmes de caisse automatisés.

Quand choisir EfficientDet

  • Storage-Constrained Devices: Legacy IoT devices where the model weight file size (e.g., <5MB) is the primary constraint.
  • Recherche universitaire : études axées sur les réseaux pyramidaux de caractéristiques ou les lois d'échelle composées.
  • TensorFlow : pipelines existants profondément ancrés dansTPU Google.

Quand choisir Ultralytics

  • Edge Computing : déploiement sur des appareils CPU, tels que le Raspberry Pi ou les téléphones mobiles, tirant parti d'une CPU 43 % plus rapide.
  • Robotique : applications nécessitant une estimation de la pose ou une détection d'objets orientés (OBB) en plus de la détection standard.
  • Nouveaux développements : projets nécessitant une maintenance à long terme, exportation facile vers TensorRT ou ONNXet un soutien actif de la communauté.

Conclusion

YOLOv6. YOLOv6 et EfficientDet ont tous deux façonné le domaine de la détection d'objets. EfficientDet a prouvé la valeur du redimensionnement composé, tandis que YOLOv6. YOLOv6 a démontré comment adapter l'architecture pour GPU maximal. Cependant, pour la plupart des applications modernes, Ultralytics offre le package le plus convaincant : une efficacité de bout en bout, une vitesse supérieure et un écosystème polyvalent et évolutif.

Les utilisateurs intéressés par d'autres options hautes performances peuvent également envisager YOLOv8, YOLOv9ou YOLO11 en fonction de leurs besoins spécifiques en matière de prise en charge héritée.


Commentaires