Ir al contenido

YOLOX vs. EfficientDet: Una Comparación Técnica

Seleccionar la arquitectura de detección de objetos adecuada es una decisión crítica en el desarrollo de aplicaciones de visión por ordenador. Dos modelos que han influido significativamente en el panorama son YOLOX y EfficientDet. Aunque ambos pretenden resolver el problema de localizar y clasificar objetos dentro de imágenes, abordan la tarea con filosofías de diseño fundamentalmente distintas.

Esta guía ofrece una comparación técnica en profundidad de YOLOX, un detector sin anclaje de alto rendimiento, y EfficientDet, una arquitectura escalable centrada en la eficiencia. Analizaremos sus arquitecturas, puntos de referencia y metodologías de formación para ayudarle a decidir qué modelo se ajusta a sus limitaciones heredadas, a la vez que presentamos Ultralytics YOLO11 como la alternativa moderna y recomendada para obtener el rendimiento más avanzado.

YOLOX: la evolución sin anclajes

Lanzado en 2021 por investigadores de Megvii, YOLOX representó un cambio en el linaje de YOLO (You Only Look Once) al abandonar el mecanismo basado en anclajes que había definido las iteraciones anteriores.

Arquitectura e Innovaciones Clave

YOLOX se distingue por una estructura de cabeza desacoplada. Los detectores tradicionales solían utilizar una cabeza acoplada en la que las tareas de clasificación y localización compartían parámetros, lo que podía provocar conflictos durante el entrenamiento. YOLOX separa estas tareas en ramas diferentes, lo que mejora significativamente la velocidad de convergencia y la precisión final.

La característica más notable es su diseño sin anclajes. Al eliminar la necesidad de cajas de anclaje predefinidas, YOLOX elimina el ajuste heurístico asociado a la generación de anclajes. Esto se combina con SimOTA (Simplified Optimal Transport Assignment), una estrategia avanzada de asignación de etiquetas que asigna dinámicamente muestras positivas a verdades básicas, equilibrando el proceso de formación de forma más eficaz que los umbrales IoU estáticos.

Ventajas sin anclaje

La eliminación de los recuadros de anclaje reduce el número de parámetros de diseño que deben ajustar los desarrolladores. También se adapta mejor a objetos con relaciones de aspecto inusuales, ya que el modelo predice directamente las cajas delimitadoras en lugar de ajustar una forma de caja preestablecida.

Más información sobre YOLOX

EfficientDet: Eficiencia escalable

EfficientDet, desarrollado por el equipo de Google Brain en 2019, se centra en lograr la mayor precisión posible dentro de unos presupuestos computacionales específicos. Se basa en la columna vertebral de EfficientNet e introduce una novedosa técnica de fusión de características.

Arquitectura e Innovaciones Clave

La principal innovación de EfficientDet es la red BiFPN (Weighted Bi-directional Feature Pyramid Network). A diferencia de una red piramidal de características (FPN ) tradicional, que suma características de diferentes escalas por igual, BiFPN introduce ponderaciones aprendibles para comprender la importancia de las diferentes características de entrada. También permite que la información fluya repetidamente tanto de arriba abajo como de abajo arriba.

EfficientDet también emplea el escalado compuesto. En lugar de escalar solo la columna vertebral o la resolución de la imagen, escala uniformemente la resolución, la profundidad y la anchura de la red. El resultado es una familia de modelos (D0 a D7) que ofrece una curva coherente de eficiencia frente a precisión, lo que la hace muy adaptable a tareas que van desde las aplicaciones móviles hasta el procesamiento en la nube de gama alta.

Más información sobre EfficientDet

Análisis del rendimiento: Velocidad frente a eficacia

La diferencia fundamental entre estos dos modelos radica en sus objetivos de optimización. EfficientDet está optimizado para la eficiencia teórica (FLOPs y Parámetros), que a menudo se traduce bien en rendimiento de CPU en dispositivos de borde. YOLOX, por el contrario, está optimizado para la inferencia de alto rendimiento en GPU, aprovechando operadores densos que los aceleradores manejan bien.

La tabla siguiente ilustra este equilibrio. Mientras que EfficientDet-d0 es extremadamente ligero en términos de parámetros, YOLOX-s ofrece velocidades de inferencia significativamente más rápidas en TensorRT a pesar de tener más parámetros.

Modelotamaño
(píxeles)
mAPval
50-95
Velocidad
CPU ONNX
(ms)
Velocidad
T4 TensorRT10
(ms)
parámetros
(M)
FLOPs
(B)
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9
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

Observaciones críticas

  1. Latencia deGPU : YOLOX demuestra un rendimiento superior en aceleradores. YOLOX-l alcanza la misma precisión (49,7 mAP) que EfficientDet-d4, pero se ejecuta casi 3,7 veces más rápido en una GPU T4 (9,04 ms frente a 33,55 ms).
  2. Eficiencia de los parámetros: EfficientDet sobresale cuando el almacenamiento es la principal limitación. EfficientDet-d3 proporciona una gran precisión (47,5 mAP) con solo 12 millones de parámetros, mientras que para lograr una precisión similar con YOLOX se necesita el modelo Medium con más del doble de parámetros.
  3. Complejidad de la formación: YOLOX incorpora de forma nativa sólidas técnicas de aumento de datos como Mosaic y MixUp , que ayudan a formar modelos sólidos desde cero, mientras que EfficientDet depende en gran medida de las propiedades específicas de la columna vertebral de EfficientNet y de las reglas de escalado compuestas.

Ultralytics YOLO11: la alternativa superior

Aunque YOLOX y EfficientDet fueron pioneros en sus respectivas épocas, el campo de la visión por ordenador avanza rápidamente. Para aplicaciones modernas en 2024 y más allá, Ultralytics YOLO11 ofrece una solución integral que supera a ambas arquitecturas heredadas en velocidad, precisión y facilidad de uso.

¿Por qué elegir Ultralytics YOLO11?

  • Equilibrio de rendimiento: YOLO11 está diseñado para ofrecer la mejor relación posible entre velocidad y precisión. Por lo general, iguala o supera la máxima precisión de EfficientDet-d7 al tiempo que mantiene velocidades de inferencia cercanas a las variantes YOLOX más rápidas.
  • Facilidad de uso: A diferencia de los complejos repositorios de investigación de EfficientDet o YOLOX, Ultralytics ofrece una APIPython lista para producción. Puede cargar, entrenar y desplegar un modelo en tan solo unas líneas de código.
  • Ecosistema bien mantenido: Los modelos de Ultralytics están respaldados por un desarrollo activo, actualizaciones frecuentes y una comunidad dinámica. El ecosistema integrado incluye Ultralytics HUB para la gestión de conjuntos de datos y la formación de modelos.
  • Versatilidad: Mientras que YOLOX y EfficientDet son principalmente detectores de objetos, YOLO11 soporta una amplia gama de tareas dentro de un único marco, incluyendo Segmentación de Instancias, Estimación de Pose, Oriented Bounding Boxes (OBB) y Clasificación.
  • Eficacia de la formación: YOLO11 utiliza bloques de arquitectura refinados que reducen los requisitos de memoria durante el entrenamiento en comparación con las antiguas arquitecturas de transformador o de columna vertebral compleja. Esto permite entrenar modelos de última generación en hardware de consumo.

Primeros pasos con YOLO11

Ejecutar predicciones con YOLO11 es increíblemente sencillo. El siguiente fragmento de código muestra cómo cargar un modelo preentrenado y ejecutar la inferencia en una imagen.

from ultralytics import YOLO

# Load the YOLO11n model (nano version for speed)
model = YOLO("yolo11n.pt")

# Perform object detection on an image
results = model("path/to/image.jpg")

# Display the results
results[0].show()

Casos de Uso Ideales

  • Elija EfficientDet sólo si está implementando en dispositivos de borde con CPU extremadamente limitados, donde el recuento de FLOP es el factor limitante absoluto y tiene dependencias heredadas.
  • Elija YOLOX si necesita una base sólida para la investigación académica sobre detectores sin anclaje en GPU, pero tenga en cuenta que la configuración es más compleja en comparación con los frameworks modernos.
  • Elija Ultralytics YOLO11 para prácticamente todos los nuevos proyectos comerciales y de investigación. Tanto si está construyendo vehículos autónomos, analítica de ciudades inteligentes o control de calidad de fabricación, YOLO11 proporciona la robustez, velocidad y herramientas necesarias para pasar del prototipo a la producción de forma eficiente.

Conclusión

Tanto YOLOX como EfficientDet contribuyeron significativamente al avance de la detección de objetos. EfficientDet demostró que el escalado de modelos podía ser científico y estructurado, mientras que YOLOX popularizó con éxito las canalizaciones de detección totalmente libres de anclajes.

Sin embargo, Ultralytics YOLO11 sintetiza las mejores lecciones de estas arquitecturas -eficiencia, diseño sin anclajes y optimización de GPU en un paquete unificado y fácil de usar. Gracias a su menor consumo de memoria durante el entrenamiento, su compatibilidad con diversas tareas de visión por computador y su perfecta integración con formatos de despliegue como ONNX y CoreML, Ultralytics YOLO11 se erige como la opción recomendada para los desarrolladores en la actualidad.

Lecturas adicionales

Explore más comparaciones para comprender el panorama de los modelos de detección de objetos:


Comentarios