EfficientDet frente a YOLOv5: equilibrio entre escalabilidad y rendimiento en tiempo real
Para seleccionar la arquitectura de detección de objetos adecuada, hay que sopesar las ventajas y desventajas entre la precisión, la velocidad de inferencia y la complejidad de implementación. Esta guía ofrece una comparación técnica detallada entre EfficientDet, una arquitectura escalable de Google , y YOLOv5, el detector en tiempo real ampliamente adoptado de Ultralytics.
Mientras que EfficientDet introdujo conceptos innovadores en el escalado compuesto, YOLOv5 el campo al hacer accesible la visión artificial de alto rendimiento a través de una API optimizada y un ecosistema robusto.
Descripción general del modelo
Google EfficientDet
EfficientDet se basa en la estructura EfficientNet y aplica un método de escalado compuesto que escala de manera uniforme la resolución, la profundidad y la anchura. Introdujo la red piramidal de características bidireccionales (BiFPN) para permitir una fusión de características multiescala fácil y rápida.
- Autores: Mingxing Tan, Ruoming Pang, y Quoc V. Le
- Organización:Google
- Fecha: 2019-11-20
- Arxiv:EfficientDet: Scalable and Efficient Object Detection
- GitHub:Repositorio EfficientDet
Ultralytics YOLOv5
YOLOv5 se centra en la usabilidad y la velocidad en el mundo real. Emplea una red troncal CSPDarknet y está diseñado para facilitar el entrenamiento y la implementación en diversos tipos de hardware. Sigue siendo uno de los modelos más populares debido a su equilibrio entre rendimiento y eficiencia.
- Autor: Glenn Jocher
- Organización:Ultralytics
- Fecha: 2020-06-26
- Documentación:Documentación de YOLOv5
- GitHub:Repositorio de YOLOv5
Comparación de Arquitectura Técnica
Las filosofías arquitectónicas de estos dos modelos divergen significativamente, lo que influye en su idoneidad para diferentes tareas.
EfficientDet: Escalado Compuesto y BiFPN
La innovación principal de EfficientDet es la BiFPN (red piramidal de características bidireccionales ponderadas). A diferencia de las FPN estándar, que suman características sin distinción, la BiFPN introduce ponderaciones aprendibles para comprender la importancia de las diferentes características de entrada. Esto permite a la red dar prioridad a las características más informativas durante la fusión.
Además, EfficientDet utiliza Compound Scaling, que aumenta simultáneamente la resolución, la profundidad y la anchura de la red principal, la red de características y la red de predicción. Esto permite a los usuarios elegir entre una familia de modelos (D0 a D7) en función de sus limitaciones de recursos. Sin embargo, esta complejidad puede provocar una mayor latencia en los dispositivos periféricos que carecen de soporte especializado para estas operaciones.
YOLOv5: CSPDarknet y PANet
YOLOv5 una estructura CSPDarknet, que integra redes Cross Stage Partial. Este diseño reduce el número de parámetros y FLOPS, al tiempo que mantiene la precisión mediante la división del mapa de características en la capa base.
Para la agregación de características, YOLOv5 una red de agregación de rutas (PANet). Esta estructura mejora el flujo de información desde las capas inferiores hacia la parte superior, lo que mejora la localización de objetos, algo crucial para obtener cuadros delimitadores precisos. La cabeza se basa en anclajes y predice los desplazamientos a partir de cuadros de anclaje predefinidos. Esta arquitectura está altamente optimizada para GPU , lo que se traduce en tiempos de inferencia más rápidos en comparación con las complejas operaciones de escalado de EfficientDet.
La ventaja del ecosistema de Ultralytics
Al elegir YOLOv5 acceso al Ultralytics , lo que garantiza una integración perfecta con herramientas para la anotación de datos, el seguimiento de experimentos y el entrenamiento en la nube a través de la Ultralytics . Esta estructura de apoyo suele estar ausente en repositorios centrados en la investigación, como EfficientDet.
Métricas de rendimiento
A la hora de evaluar el rendimiento, es fundamental tener en cuenta tanto la precisión (mAP) como la velocidad (latencia). Aunque EfficientDet escala a una mayor precisión con sus variantes más grandes (D7), a menudo sufre una penalización significativa en la velocidad en comparación con YOLOv5 de tamaño comparable.
La siguiente tabla destaca las diferencias de rendimiento. Observe cómo YOLOv5 CPU significativamente más rápidas, lo que lo hace mucho más práctico para su implementación sin aceleradores especializados.
| Modelo | tamaño (píxeles) | mAPval 50-95 | Velocidad CPU ONNX (ms) | Velocidad T4 TensorRT10 (ms) | parámetros (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 |
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
Análisis
- Velocidad frente a precisión: EfficientDet-d0 es muy eficiente en términos de FLOP, pero en la práctica, YOLOv5n y YOLOv5s suelen funcionar más rápido en GPU estándar debido a operaciones más compatibles con el hardware (evitando convoluciones separables en profundidad que pueden ser lentas en algunos CUDA más antiguos).
- Eficiencia de memoria: YOLOv5 requerir menos VRAM durante el entrenamiento, lo que permite tamaños de lote más grandes en hardware de consumo. Las conexiones complejas de EfficientDet pueden aumentar la sobrecarga de memoria.
- Optimización: EfficientDet depende en gran medida de las búsquedas de AutoML para la arquitectura, que pueden ser difíciles de modificar. YOLOv5 personalizar más fácilmente los múltiplos de profundidad y anchura directamente en la configuración YAML.
Entrenamiento y usabilidad
Eficiencia del entrenamiento
Ultralytics YOLOv5 conocido por su capacidad de «entrenamiento inmediato». El repositorio incluye aumento de datos Mosaic, cálculo automático de anclajes y evolución de hiperparámetros. Esto significa que los usuarios pueden obtener excelentes resultados en conjuntos de datos personalizados sin necesidad de realizar ajustes exhaustivos. Las implementaciones de EfficientDet suelen requerir una configuración más manual de TensorFlow y una programación cuidadosa de la tasa de aprendizaje.
Versatilidad de implementación
Si bien EfficientDet es principalmente un modelo de detección de objetos, YOLOv5 sus sucesores en la Ultralytics admiten una gama más amplia de tareas. Puede cambiar sin problemas a la segmentación de instancias o la clasificación de imágenes utilizando la misma estructura de API.
Además, la implementación YOLOv5 simplifica gracias al modo de exportación, que admite la conversión con un solo clic a ONNX, TensorRT, CoreML y TFLite.
from ultralytics import YOLO
# Load a pretrained YOLOv5 model
model = YOLO("yolov5s.pt")
# Train the model on a custom dataset
model.train(data="coco128.yaml", epochs=100)
# Export to ONNX format for deployment
model.export(format="onnx")
Preparación para el futuro: el caso de YOLO26
Aunque YOLOv5 una opción sólida, el campo ha avanzado. Para los desarrolladores que buscan lo último en tecnología, YOLO26 se basa en el legado de YOLOv5 importantes mejoras arquitectónicas.
YOLO26 introduce un diseño integral NMS, lo que elimina la necesidad del posprocesamiento de supresión no máxima. Esto reduce la latencia y simplifica el proceso de implementación, lo que supone una ventaja importante con respecto a EfficientDet y YOLOv5. Además, YOLO26 utiliza el optimizador MuSGD, inspirado en el entrenamiento LLM, lo que garantiza una convergencia más rápida y un entrenamiento estable incluso en conjuntos de datos difíciles.
Si su proyecto incluye IA de vanguardia, YOLO26 está específicamente optimizado para CPU y ofrece velocidades hasta un 43 % más rápidas que las generaciones anteriores.
Casos de Uso Ideales
Cuándo elegir EfficientDet
- Limitaciones de la investigación: cuando el objetivo principal es estudiar las leyes de escala de los compuestos o reproducir puntos de referencia académicos específicos.
- Regímenes de bajo FLOP: En escenarios teóricos en los que el recuento de FLOP es la única métrica que importa, ignorando los costes de acceso a la memoria o la latencia real del hardware.
Cuándo elegir Ultralytics YOLOv5 o YOLO26)
- Aplicaciones en tiempo real: conducción autónoma, análisis de vídeo y robótica, donde la baja latencia es imprescindible.
- Implementación periférica: se ejecuta en Raspberry Pi, NVIDIA o dispositivos móviles en los que la eficiencia de la memoria yTensorRT son fundamentales.
- Desarrollo rápido: proyectos que requieren ciclos de iteración rápidos, gestión sencilla de conjuntos de datos y pesos preentrenados fiables.
- Tareas diversas: si su proyecto pudiera ampliarse para incluir la estimación de poses o la detección de objetos orientados (OBB), el Ultralytics los admite de forma nativa.
Resumen
Tanto EfficientDet como YOLOv5 realizado importantes contribuciones a la visión artificial. EfficientDet demostró el poder del escalado sistemático, mientras que YOLOv5 la detección de alto rendimiento. Para la mayoría de las aplicaciones prácticas actuales, el Ultralytics , representado por YOLOv5 el innovador YOLO26, ofrece un equilibrio superior entre velocidad, precisión y facilidad de uso, respaldado por un código base continuamente actualizado y una comunidad próspera.
Para obtener más información sobre comparaciones de modelos, explore cómo se comparan YOLO con otros como YOLOv8 EfficientDet o el basado en transformadores RT-DETR.