EfficientDet frente a YOLOv9: comparación de arquitectura y rendimiento
En el panorama en rápida evolución de la visión artificial, seleccionar la arquitectura adecuada para la detección de objetos es una decisión crítica que afecta a todo, desde los costes de formación hasta la latencia de implementación. Este análisis técnico ofrece una comparación exhaustiva entre EfficientDet, una arquitectura pionera de Google en el escalado eficiente, y YOLOv9, una versión moderna de la YOLO que introduce información de gradiente programable para un aprendizaje de características superior.
Resumen Ejecutivo
Aunque EfficientDet introdujo conceptos innovadores en el escalado de modelos y la fusión de características, ahora se considera una arquitectura obsoleta. Su dependencia de complejas capas BiFPN a menudo conduce a velocidades de inferencia más lentas en el hardware moderno en comparación con los diseños optimizados de la YOLO .
YOLOv9 representa un importante avance, ya que ofrece una mayor precisión con velocidades de inferencia muy superiores. Además, como parte del Ultralytics , YOLOv9 de una API unificada, una implementación simplificada y un sólido apoyo de la comunidad, lo que lo convierte en la opción recomendada para entornos de producción.
EfficientDet: Detección de objetos escalable y eficiente
EfficientDet se diseñó para resolver el problema de escalar detectores de objetos de manera eficiente. Los modelos anteriores a menudo se escalaban simplemente ampliando la estructura principal, lo que ignoraba el equilibrio entre resolución, profundidad y anchura.
Características arquitectónicas clave
- Escalado compuesto: EfficientDet propone un método de escalado compuesto que escala uniformemente la resolución, la profundidad y la anchura para todas las redes troncales, redes de características y redes de predicción de cuadros/clases.
- BiFPN (Red piramidal de características bidireccionales): una innovación clave que permite una fácil fusión de características a múltiples escalas. A diferencia de las FPN tradicionales, BiFPN añade rutas ascendentes y elimina los nodos con una sola entrada, incorporando pesos aprendibles para comprender la importancia de las diferentes características de entrada.
- EfficientNet Backbone: Utiliza EfficientNet como columna vertebral, que está optimizada para la eficiencia de los parámetros.
Autores: Mingxing Tan, Ruoming Pang y Quoc V. Le
Organización:Google
Fecha: 20/11/2019
Enlaces:Arxiv | GitHub
Más información sobre EfficientDet
YOLOv9: Información de Gradiente Programable
YOLOv9 aborda un problema fundamental del aprendizaje profundo: los cuellos de botella de información. A medida que los datos pasan por las capas de una red neuronal profunda, se produce una pérdida inevitable de información. YOLOv9 este problema mediante la información de gradiente programable (PGI) y una nueva arquitectura denominada GELAN.
Características arquitectónicas clave
- GELAN (Red de agregación de capas eficiente generalizada): esta arquitectura combina los mejores aspectos de CSPNet y ELAN. Optimiza las rutas de descenso de gradiente, lo que garantiza que el modelo aprenda características ligeras pero ricas en información.
- PGI (Información de gradiente programable): PGI proporciona una rama de supervisión auxiliar que guía el proceso de aprendizaje, garantizando que la rama principal conserve la información crítica necesaria para una detección precisa. Esto resulta especialmente útil para detectar objetivos difíciles en entornos complejos.
- Simplicidad: a pesar de estas complejidades internas, la estructura de inferencia sigue siendo optimizada, lo que evita el elevado coste computacional asociado al BiFPN utilizado en EfficientDet.
Autores: Chien-Yao Wang y Hong-Yuan Mark Liao
Organización: Instituto de Ciencias de la Información, Academia Sinica, Taiwán
Fecha: 21/02/2024
Enlaces:Arxiv | GitHub
Comparación del rendimiento técnico
Al comparar estos modelos, se hace evidente la compensación entre la eficiencia de los parámetros y la latencia real en tiempo de ejecución. Si bien EfficientDet es eficiente en cuanto a parámetros, su compleja estructura gráfica (BiFPN) es menos compatible con GPU que las convoluciones estándar utilizadas en YOLOv9.
| 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 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
Análisis de rendimiento
YOLOv9 supera YOLOv9 a EfficientDet en términos de relación velocidad-precisión. Por ejemplo, YOLOv9c alcanza un mAP 53,0 %) comparable al de EfficientDet-d6 (52,6 %), pero funciona más de 12 veces más rápido en una GPU T4 GPU 7,16 ms frente a 89,29 ms). Esto convierte a YOLOv9 en YOLOv9 mejor opción para aplicaciones en tiempo real.
Formación y experiencia en ecosistemas
Una diferencia importante entre estas arquitecturas es la facilidad de uso y la compatibilidad con el ecosistema que ofrece Ultralytics.
Desafíos de EfficientDet
El entrenamiento de EfficientDet suele implicar la navegación por la API de detecciónTensorFlow o por repositorios heredados. Estos pueden ser difíciles de configurar debido a conflictos de dependencias y, a menudo, carecen de compatibilidad con funciones modernas como el entrenamiento automático de precisión mixta o la fácil integración del registro en la nube.
La ventaja de Ultralytics
El uso de YOLOv9 del Ultralytics ofrece una experiencia fluida. El ecosistema gestiona automáticamente el aumento de datos, la evolución de hiperparámetros y la exportación.
- Facilidad de uso: puedes empezar a entrenar con unas pocas líneas de código.
- Eficiencia de memoria: Ultralytics están optimizados para utilizar menos VRAM durante el entrenamiento, lo que permite tamaños de lote más grandes en GPU de consumo en comparación con redes complejas de múltiples ramificaciones.
- Versatilidad: más allá de la detección, la Ultralytics admite la segmentación de instancias y la estimación de poses, características que no están disponibles de forma nativa en las implementaciones estándar de EfficientDet.
from ultralytics import YOLO
# Load a pretrained YOLOv9 model
model = YOLO("yolov9c.pt")
# Train on a custom dataset with a single command
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
Aplicaciones en el mundo real
La elección del modelo influye significativamente en la viabilidad de las diferentes aplicaciones.
Casos de uso ideales para EfficientDet
- Investigación académica: útil para estudiar técnicas de fusión de características y teorías de escalado compuesto.
- Escenarios de baja potencia/baja velocidad: en casos muy específicos en los que el hardware heredado está codificado de forma rígida para las redes troncales EfficientNet (por ejemplo, ciertas TPU Coral más antiguas), las variantes EfficientDet-Lite pueden seguir siendo relevantes.
Casos de Uso Ideales para YOLOv9
- Navegación autónoma: la alta velocidad de inferencia es fundamental para los vehículos autónomos, que deben procesar los datos en milisegundos para garantizar la seguridad.
- Análisis minorista: para aplicaciones como la gestión de inventario, YOLOv9 la precisión necesaria para distinguir entre productos similares sin ralentizar los sistemas de pago.
- Atención sanitaria: en el análisis de imágenes médicas, la arquitectura PGI ayuda a conservar los detalles precisos necesarios para detectar pequeñas anomalías en radiografías o resonancias magnéticas.
El futuro: actualización a YOLO26
Aunque YOLOv9 una herramienta potente, Ultralytics ampliando los límites de la IA visual. Para los desarrolladores que buscan lo último en tecnología, YOLO26 ofrece avances significativos con respecto a EfficientDet y YOLOv9.
YOLO26 presenta un diseño integral NMS, que elimina por completo la necesidad del posprocesamiento de supresión no máxima. Esto se traduce en procesos de implementación más sencillos y una inferencia más rápida. Además, con el nuevo optimizador MuSGD, una combinación de SGD Muon, YOLO26 ofrece un entrenamiento más estable y una convergencia más rápida.
Para la implementación periférica, YOLO26 está optimizado para CPU hasta un 43 % más rápida e incluye la eliminación de DFL para una mejor compatibilidad con dispositivos de bajo consumo. Tanto si trabaja en robótica como en análisis de vídeo de alto rendimiento, YOLO26 representa el nuevo estándar.
Para los usuarios interesados en otras arquitecturas de última generación, también recomendamos explorar YOLO11 y RT-DETR en la Ultralytics .