Zum Inhalt springen

EfficientDet vs. YOLOv8: Ein technischer Vergleich

Die Wahl des richtigen Objekterkennungsmodells ist eine kritische Entscheidung, die ein ausgewogenes Verhältnis zwischen Genauigkeit, Geschwindigkeit und Rechenkosten erfordert. Diese Seite bietet einen detaillierten technischen Vergleich zwischen zwei einflussreichen Architekturen: EfficientDet, entwickelt von Google, und Ultralytics YOLOv8, einem hochmodernen Modell von Ultralytics. Während EfficientDet für seine Parameter- und Recheneffizienz bekannt ist, zeichnet sich YOLOv8 durch eine überlegene Kombination aus Echtzeitgeschwindigkeit, hoher Genauigkeit und unübertroffener Vielseitigkeit innerhalb eines umfassenden, benutzerfreundlichen Ökosystems aus.

EfficientDet: Skalierbare und effiziente Architektur

Autoren: Mingxing Tan, Ruoming Pang, Quoc V. Le
Organisation: Google
Datum: 2019-11-20
Arxiv: https://arxiv.org/abs/1911.09070
GitHub: https://github.com/google/automl/tree/master/efficientdet
Docs: https://github.com/google/automl/tree/master/efficientdet#readme

EfficientDet wurde vom Google Brain-Team mit dem Hauptaugenmerk auf die Entwicklung einer hocheffizienten und skalierbaren Familie von Objektdetektoren eingeführt. Seine Kerninnovationen liegen in seiner Architektur und Skalierungsmethodik.

Architektur und Hauptmerkmale

Das Design von EfficientDet basiert auf zwei Hauptkomponenten:

  1. BiFPN (Bi-directional Feature Pyramid Network): Anders als herkömmliche Top-Down-FPNs ermöglicht BiFPN eine einfache und schnelle multiskalige Feature-Fusion, indem es lernbare Gewichte einführt, um die Bedeutung verschiedener Eingabe-Features zu verstehen, und sowohl Top-Down- als auch Bottom-Up-Verbindungen anwendet.
  2. Compound Scaling: EfficientDet verwendet einen einzigen Compound-Koeffizienten, um die Tiefe, Breite und Auflösung des Backbones, des Feature-Netzwerks und der Box- / Klassenvorhersagenetzwerke einheitlich zu skalieren. Dies gewährleistet eine ausgewogene Verteilung der Ressourcen über das gesamte Modell.

Die Architektur verwendet EfficientNet als Backbone, das bereits für Genauigkeit und FLOP-Effizienz optimiert ist. Diese Kombination führt zu einer Familie von Modellen (D0 bis D7), die auf verschiedene Rechenbudgets zugeschnitten werden können.

Stärken

  • Hohe Effizienz: EfficientDet-Modelle sind so konzipiert, dass sie die Parameteranzahl und FLOPs minimieren, wodurch sie in Bezug auf die Rechenressourcen für ein gegebenes Genauigkeitsniveau hocheffizient sind.
  • Skalierbarkeit: Die Compound-Scaling-Methode bietet einen klaren Weg, das Modell hoch- oder herunterzuskalieren, sodass Entwickler eine Variante auswählen können, die ihren spezifischen Hardware-Einschränkungen entspricht.
  • Hohe Genauigkeit: Erreicht wettbewerbsfähige mAP-Werte, insbesondere im Vergleich zu Modellen mit ähnlicher Parameteranzahl.

Schwächen

  • Inferenzgeschwindigkeit: Obwohl EfficientDet FLOP-effizient ist, weist es oft eine höhere Inferenzlatenz auf als Modelle wie YOLOv8, insbesondere auf GPU-Hardware. Dies kann es für Anwendungen, die Echtzeit-Inferenz erfordern, weniger geeignet machen.
  • Eingeschränkte Vielseitigkeit: EfficientDet ist primär für Objekterkennung konzipiert. Es fehlt die integrierte Unterstützung für andere Vision-Aufgaben wie Segmentierung oder Pose-Schätzung, die im YOLOv8 Framework nativ ist.
  • Ökosystem und Benutzerfreundlichkeit: Die ursprüngliche Implementierung ist in TensorFlow, und obwohl PyTorch-Ports existieren, verfügt es nicht über das gleiche Maß an integrierten Tools, Dokumentation und aktivem Community-Support wie das Ultralytics-Ökosystem.

Erfahren Sie mehr über EfficientDet

Ultralytics YOLOv8: Der neueste Stand der Technik in Bezug auf Geschwindigkeit und Vielseitigkeit

Autoren: Glenn Jocher, Ayush Chaurasia und Jing Qiu
Organisation: Ultralytics
Datum: 2023-01-10
GitHub: https://github.com/ultralytics/ultralytics
Dokumente: https://docs.ultralytics.com/models/yolov8/

Ultralytics YOLOv8 ist die neueste Iteration in der sehr erfolgreichen YOLO-Serie, die auf jahrelanger Forschung und Entwicklung aufbaut, um ein Modell zu liefern, das schnell, genau und unglaublich einfach zu bedienen ist. Es stellt einen bedeutenden Fortschritt sowohl in der Leistung als auch im Framework-Design dar.

Architektur und Hauptmerkmale

YOLOv8 führt mehrere architektonische Verbesserungen ein, darunter einen neuen ankerfreien Detection Head und ein neues CSP-basiertes Backbone, das als C2f bekannt ist. Diese Änderungen reduzieren die Anzahl der Parameter, während gleichzeitig eine hohe Genauigkeit erhalten und eine schnellere Inferenz ermöglicht wird. Das Modell ist von Grund auf als umfassende Plattform für verschiedene Computer Vision-Aufgaben konzipiert.

Stärken

  • Außergewöhnliches Leistungsverhältnis: YOLOv8 erzielt einen hervorragenden Kompromiss zwischen Geschwindigkeit und Genauigkeit und ist damit eine Top-Wahl für Echtzeitanwendungen, bei denen keine Kompromisse bei der Leistung eingegangen werden können. Wie in der Tabelle unten gezeigt, liefern YOLOv8-Modelle konsistent niedrigere Latenzzeiten auf GPUs.
  • Unmatched Versatility: Im Gegensatz zu Single-Task-Modellen ist YOLOv8 ein Multi-Task-Framework, das nativ Objekterkennung, Instanzsegmentierung, Bildklassifizierung, Posenschätzung und Objektverfolgung innerhalb einer einzigen, einheitlichen Architektur unterstützt.
  • Benutzerfreundlichkeit: YOLOv8 wird durch das robuste Ultralytics-Ökosystem unterstützt, das eine optimierte Python API und CLI, eine umfangreiche Dokumentation und eine unkomplizierte Benutzererfahrung umfasst.
  • Gut gepflegtes Ökosystem: Benutzer profitieren von aktiver Entwicklung, einer starken Open-Source-Community, häufigen Updates und nahtloser Integration mit Tools wie Ultralytics HUB für No-Code-Training und -Bereitstellung.
  • Trainingseffizienz: YOLOv8 zeichnet sich durch effiziente Trainingsprozesse, leicht verfügbare, vortrainierte Gewichte auf Datensätzen wie COCO aus und benötigt typischerweise weniger CUDA-Speicher als komplexere Architekturen.
  • Flexibilität bei der Bereitstellung: Das Framework ist hochgradig für den Export in verschiedene Formate wie ONNX und TensorRT optimiert, was die Bereitstellung auf verschiedener Hardware von Edge-Geräten bis hin zu Cloud-Servern vereinfacht.

Schwächen

  • FLOPs vs. Latenz: Obwohl YOLOv8 in der Praxis unglaublich schnell ist, kann es höhere FLOPs aufweisen als ein EfficientDet-Modell mit einem ähnlichen mAP-Level. Seine Architektur ist jedoch besser für moderne GPU-Hardware optimiert, was zu einer geringeren realen Latenz führt.

Erfahren Sie mehr über YOLOv8

Leistungsanalyse: Genauigkeit vs. Geschwindigkeit

Der Hauptunterschied zwischen EfficientDet und YOLOv8 wird bei der Analyse ihrer Leistungsmetriken deutlich. EfficientDet wurde entwickelt, um die Genauigkeit pro FLOP zu optimieren, während YOLOv8 für hohen Durchsatz und niedrige Latenzzeiten auf praktischer Hardware optimiert ist.

Modell Größe
(Pixel)
mAPval
50-95
Geschwindigkeit
CPU ONNX
(ms)
Geschwindigkeit
T4 TensorRT10
(ms)
Parameter
(M)
FLOPs
(B)
EfficientDet-d0 640 34.6 10.2 3.92 3.9 2.54
EfficientDet-d1 640 40.5 13.5 7.31 6.6 6.1
EfficientDet-d2 640 43.0 17.7 10.92 8.1 11.0
EfficientDet-d3 640 47.5 28.0 19.59 12.0 24.9
EfficientDet-d4 640 49.7 42.8 33.55 20.7 55.2
EfficientDet-d5 640 51.5 72.5 67.86 33.7 130.0
EfficientDet-d6 640 52.6 92.8 89.29 51.9 226.0
EfficientDet-d7 640 53.7 122.0 128.07 51.9 325.0
YOLOv8n 640 37.3 80.4 1.47 3.2 8.7
YOLOv8s 640 44.9 128.4 2.66 11.2 28.6
YOLOv8m 640 50.2 234.7 5.86 25.9 78.9
YOLOv8l 640 52.9 375.2 9.06 43.7 165.2
YOLOv8x 640 53.9 479.1 14.37 68.2 257.8

Aus der Tabelle lassen sich folgende Schlussfolgerungen ziehen:

  • Genauigkeit: YOLOv8x erreicht die höchste mAP von 53,9 und übertrifft damit das größte EfficientDet-d7-Modell leicht.
  • Geschwindigkeit: YOLOv8 Modelle sind auf der GPU (T4 TensorRT10) deutlich schneller, wobei YOLOv8n über 2,5x schneller ist als EfficientDet-d0. Dieser Geschwindigkeitsvorteil gilt für alle Modellgrößen, was YOLOv8 zum klaren Gewinner für Echtzeitanwendungen macht.
  • Effizienz: EfficientDet zeichnet sich durch FLOPs und CPU-Geschwindigkeit für seine kleineren Modelle aus. Zum Beispiel hat EfficientDet-d0 die niedrigsten FLOPs und die schnellste CPU-Inferenzzeit. YOLOv8n hat jedoch weniger Parameter, was es sehr leichtgewichtig macht.

Fazit: Welches Modell sollten Sie wählen?

EfficientDet bleibt eine leistungsstarke und relevante Architektur, insbesondere für Anwendungen, bei denen Rechenressourcen (FLOPs) und Modellgröße die wichtigsten Einschränkungen darstellen. Sein skalierbares Design bietet eine großartige Möglichkeit, Genauigkeit und Effizienz auf Geräten mit begrenzter Rechenleistung auszugleichen.

Für die überwiegende Mehrheit der modernen Computer-Vision-Anwendungen ist Ultralytics YOLOv8 jedoch die bessere Wahl. Es bietet ein besseres Gesamtpaket: hochmoderne Genauigkeit, blitzschnelle Inferenzgeschwindigkeiten und unübertroffene Vielseitigkeit. Die Fähigkeit, Erkennung, Segmentierung, Pose und mehr innerhalb eines einzigen, einfach zu bedienenden Frameworks zu verarbeiten, vereinfacht die Entwicklung und Bereitstellung erheblich. Das gut gepflegte Ökosystem, die umfangreiche Dokumentation und die aktive Community bieten ein Maß an Unterstützung, das jedes Projekt von der Konzeption bis zur Produktion beschleunigt.

Für Entwickler, die eine robuste, hochleistungsfähige und zukunftssichere Lösung suchen, ist YOLOv8 die klare Empfehlung. Für diejenigen, die das absolut Neueste an Leistung suchen, verschieben neuere Ultralytics-Modelle wie YOLO11 die Grenzen noch weiter.

Andere Modelle entdecken

Um Ihre Forschung fortzusetzen, sollten Sie andere Modellvergleiche mit EfficientDet, YOLOv8 und anderen führenden Architekturen in Betracht ziehen:



📅 Vor 1 Jahr erstellt ✏️ Vor 1 Monat aktualisiert

Kommentare