Ir al contenido

EfficientDet vs. YOLOv9: La evolución de la eficiencia en la detección de objetos

En el vertiginoso mundo de la visión artificial, seleccionar la arquitectura de modelo adecuada es fundamental para equilibrar el rendimiento, la velocidad y los recursos computacionales. Esta guía proporciona una comparación técnica exhaustiva entre EfficientDet, un modelo de referencia desarrollado por Google Research, y YOLOv9, el detector de última generación integrado en el ecosistema de Ultralytics. Analizaremos sus innovaciones arquitectónicas, las métricas de rendimiento de referencia y determinaremos qué modelo se adapta mejor a las aplicaciones modernas de detección de objetos en tiempo real.

EfficientDet: Eficiencia Escalable Pionera

EfficientDet, lanzado a finales de 2019, introdujo un enfoque sistemático para el escalado de modelos que influyó en años de investigación posterior. Desarrollado por el equipo de Google Research, su objetivo era optimizar la eficiencia sin comprometer la precisión.

Detalles técnicos:

Arquitectura y Características Clave

EfficientDet se basa en la estructura EfficientNet e introduce la Red Piramidal de Características Bidireccional (BiFPN). A diferencia de las FPN tradicionales, BiFPN permite una fusión de características multiescala fácil y rápida mediante la introducción de pesos que se pueden aprender para conocer la importancia de las diferentes características de entrada. El modelo utiliza un método de escalado compuesto que escala uniformemente la resolución, la profundidad y el ancho para toda la estructura, la red de características y las redes de predicción de cajas/clases simultáneamente.

Fortalezas y Debilidades

EfficientDet fue revolucionario por su capacidad para lograr una alta precisión con menos parámetros que sus contemporáneos como YOLOv3. Su principal fortaleza radica en su escalabilidad; la familia de modelos (D0 a D7) permite a los usuarios elegir una compensación de recursos específica.

Sin embargo, según los estándares modernos, EfficientDet sufre de velocidades de inferencia más lentas, particularmente en hardware de GPU. Sus complejas capas de fusión de características, aunque precisas, no son tan amigables con el hardware como las arquitecturas más nuevas. Además, la implementación original carece de las herramientas fáciles de usar que se encuentran en los marcos modernos, lo que hace que el entrenamiento y la implementación requieran más mano de obra.

Casos de uso

EfficientDet sigue siendo relevante para:

  • Investigación Académica: Comprensión de los principios del escalado compuesto y la fusión de características.
  • Sistemas heredados: Mantenimiento de las canalizaciones existentes construidas dentro del ecosistema de TensorFlow.
  • Entornos solo con CPU: Donde su eficiencia de parámetros aún puede ofrecer un rendimiento razonable para aplicaciones de baja velocidad de fotogramas.

Más información sobre EfficientDet

YOLOv9: Redefiniendo el Rendimiento en Tiempo Real

Introducido a principios de 2024, YOLOv9 representa un salto adelante en la serie YOLO, abordando los cuellos de botella de la información del deep learning para lograr una eficiencia superior. Es totalmente compatible con el paquete python de Ultralytics, lo que garantiza una experiencia perfecta para los desarrolladores.

Detalles técnicos:

Arquitectura y Características Clave

YOLOv9 introduce dos conceptos innovadores: la Información de Gradiente Programable (PGI) y la Red Generalizada de Agregación de Capas Eficientes (GELAN).

  • PGI aborda la pérdida de información que se produce cuando los datos pasan a través de las capas profundas de una red neuronal, garantizando que los gradientes utilizados para actualizar los pesos del modelo sean fiables.
  • GELAN es una arquitectura ligera que prioriza la eficiencia computacional. Permite que el modelo alcance una mayor precisión con menos parámetros y costes computacionales (FLOPs) en comparación con los métodos basados en la convolución en profundidad.

Fortalezas y Ventajas

  • Compromiso superior entre velocidad y precisión: Como muestran los benchmarks, YOLOv9 supera significativamente a EfficientDet en latencia de inferencia, manteniendo o superando la precisión.
  • Ecosistema Ultralytics: La integración con Ultralytics significa acceso a una API de python simple, herramientas CLI y una fácil exportación a formatos como ONNX, TensorRT y CoreML.
  • Eficiencia del entrenamiento: Los modelos YOLOv9 suelen requerir menos memoria durante el entrenamiento y convergen más rápido que las arquitecturas anteriores, beneficiándose del pipeline de entrenamiento optimizado Ultralytics .
  • Versatilidad: Más allá de la detección estándar, la arquitectura admite tareas complejas, allanando el camino para la segmentación avanzada y el aprendizaje multitarea.

Más información sobre YOLOv9

¿Sabías que?

La arquitectura GELAN de YOLOv9 está diseñada para ser independiente del hardware, lo que significa que se ejecuta de manera eficiente en una amplia variedad de dispositivos de inferencia, desde TPUs en el borde hasta GPUs NVIDIA de alta gama, sin requerir optimizaciones de hardware específicas como algunos modelos basados en transformadores.

Análisis de rendimiento

La siguiente comparación destaca las mejoras drásticas en la velocidad de inferencia y la eficiencia que YOLOv9 aporta en comparación con la familia EfficientDet.

Modelotamaño
(píxeles)
mAPval
50-95
Velocidad
CPU ONNX
(ms)
Velocidad
T4 TensorRT10
(ms)
parámetros
(M)
FLOPs
(B)
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
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0

Información Crítica de Referencia

  1. Ventaja de velocidad masiva: El modelo YOLOv9c alcanza un 53.0 mAP competitivo con una velocidad de inferencia de solo 7.16 ms en una GPU T4. En contraste, el comparable EfficientDet-d6 (52.6 mAP) se arrastra a 89.29 ms. Esto hace que YOLOv9 sea más de 12 veces más rápido para una precisión similar, un factor crítico para aplicaciones en tiempo real como vehículos autónomos o la monitorización del tráfico.
  2. Eficiencia de parámetros: En el extremo inferior del espectro, YOLOv9t ofrece un sólido 38.3 mAP con solo 2.0 millones de parámetros, superando la línea de base de EfficientDet-d0 en precisión mientras usa casi la mitad de los parámetros y se ejecuta significativamente más rápido.
  3. Precisión de gama alta: Para tareas que requieren la máxima precisión, YOLOv9e supera los límites con 55.6 mAP, superando al modelo EfficientDet-d7 más grande, manteniendo una latencia (16.77 ms) que sigue siendo adecuada para el procesamiento de video, a diferencia de los prohibitivos 128 ms de D7.

Integración y facilidad de uso

Una de las diferencias más significativas entre estos dos modelos es el ecosistema que los rodea. Mientras que EfficientDet se basa en repositorios TensorFlow más antiguos, YOLOv9 es un ciudadano de primera clase en la biblioteca de Ultralytics.

La ventaja de Ultralytics

Usar YOLOv9 con Ultralytics proporciona un ecosistema bien mantenido que simplifica todo el ciclo de vida del aprendizaje automático. Desde la anotación de conjuntos de datos hasta la implementación en dispositivos perimetrales, el flujo de trabajo se agiliza.

  • API simple: Puedes entrenar, validar y desplegar modelos con solo unas pocas líneas de código de python.
  • Amplia Compatibilidad: Exporte sus modelos sin esfuerzo a ONNX, TensorRT, OpenVINO y CoreML utilizando el modo de exportación.
  • Soporte de la comunidad: Una extensa documentación y una comunidad activa aseguran que las soluciones a los problemas comunes estén disponibles de inmediato.

Aquí hay un ejemplo práctico de lo fácil que es ejecutar la inferencia con YOLOv9 utilizando la API de Python de Ultralytics:

from ultralytics import YOLO

# Load a pre-trained YOLOv9 compact model
model = YOLO("yolov9c.pt")

# Run inference on an image
results = model("path/to/image.jpg")

# Process results
for result in results:
    result.show()  # Display predictions
    result.save()  # Save image to disk

Versatilidad en la aplicación

Si bien EfficientDet es estrictamente un detector de objetos, los principios arquitectónicos detrás de YOLOv9 y el framework de Ultralytics admiten una gama más amplia de tareas de visión. Los usuarios pueden cambiar fácilmente entre detect de objetos, segment de instancias y estimación de poses dentro del mismo código base, lo que reduce la deuda técnica para proyectos complejos.

Conclusión

Al comparar EfficientDet vs. YOLOv9, la elección para el desarrollo moderno de visión artificial es clara. Si bien EfficientDet jugó un papel histórico en la definición de la eficiencia del escalado de modelos, YOLOv9 lo reemplaza en prácticamente todas las métricas relevantes para los desarrolladores en la actualidad.

YOLOv9 ofrece una precisión superior por parámetro, velocidades de inferencia órdenes de magnitud más rápidas y un ecosistema robusto y fácil de usar para los desarrolladores. Ya sea que esté implementando en dispositivos periféricos con limitaciones o procesando flujos de video de alto rendimiento en la nube, YOLOv9 proporciona el equilibrio de rendimiento necesario para el éxito.

Para aquellos que comienzan nuevos proyectos, recomendamos encarecidamente aprovechar YOLOv9 o el último YOLO11 para garantizar que su aplicación se beneficie de los últimos avances en eficiencia del deep learning.

Explorar Otros Modelos

Si le interesa explorar más opciones dentro de la familia Ultralytics, considere estos modelos:

  • YOLO11: La última evolución en la serie YOLO, que ofrece un rendimiento de última generación en tareas de detección, segmentación y clasificación.
  • YOLOv10: Un detector end-to-end en tiempo real que elimina la necesidad de la Supresión No Máxima (NMS).
  • RT-DETR: Un detector basado en transformadores que destaca en precisión, proporcionando una alternativa moderna a las arquitecturas basadas en CNN.

Comentarios