YOLOv9 frente a EfficientDet#
El campo de la visión artificial ha evolucionado rápidamente en la detección de objetos en tiempo real, y los investigadores mejoran continuamente la precisión y la eficiencia. Al crear sistemas de visión robustos, elegir la arquitectura adecuada es una decisión fundamental. Dos modelos muy conocidos en este ámbito son YOLOv9, una iteración avanzada de la familia YOLO centrada en la información de gradiente, y EfficientDet, un framework escalable desarrollado por Google.
Esta guía ofrece un análisis técnico comparativo de estas dos arquitecturas y examina sus mecanismos, métricas de rendimiento y escenarios de despliegue ideales para ayudarte a tomar una decisión fundamentada para tu próximo proyecto de IA.
Orígenes y especificaciones técnicas de los modelos#
Comprender el linaje y la filosofía de diseño de un modelo aporta un contexto valioso sobre sus decisiones estructurales y aplicaciones prácticas.
YOLOv9: maximizar el flujo de información#
YOLOv9, desarrollado para abordar el «cuello de botella de información» del aprendizaje profundo, introduce métodos para evitar que se pierda información a medida que los datos atraviesan redes neuronales profundas.
- Autores: Chien-Yao Wang y Hong-Yuan Mark Liao
- Organización: Institute of Information Science, Academia Sinica, Taiwán
- Fecha: 21 de febrero de 2024
- Enlaces: Publicación en arXiv, GitHub oficial
YOLOv9 incorpora información de gradiente programable (PGI), un marco de supervisión auxiliar que ayuda a conservar información de gradiente fiable en las capas profundas. Se combina con la red generalizada de agregación eficiente de capas (GELAN), que optimiza la eficiencia de los parámetros al combinar las ventajas de CSPNet y ELAN. Esto permite a YOLOv9 alcanzar una gran precisión sin dejar de ser ligero, lo que lo hace adecuado para el procesamiento edge en tiempo real.
EfficientDet: escalado compuesto y BiFPN#
Presentado por Google Brain, EfficientDet aborda la detección de objetos escalando sistemáticamente las dimensiones de la red para equilibrar velocidad y precisión.
- Autores: Mingxing Tan, Ruoming Pang y Quoc V. Le
- Organización: Google
- Fecha: 20 de noviembre de 2019
- Enlaces: Publicación en arXiv, GitHub oficial
EfficientDet se basa en una arquitectura EfficientNet combinada con una red piramidal bidireccional de características (BiFPN). BiFPN facilita una fusión rápida y sencilla de características a varias escalas. La arquitectura utiliza un método de escalado compuesto que ajusta uniformemente y de forma simultánea la resolución, la profundidad y la anchura de la arquitectura base, la red de características y las redes de predicción de cuadros y clases.
Más información sobre EfficientDet
Aunque las arquitecturas teóricas son importantes, el ecosistema de software suele determinar el éxito de un proyecto. Ultralytics ofrece una API de Python optimizada y sólidas herramientas de despliegue que reducen el tiempo de comercialización en comparación con bases de código complejas orientadas a la investigación.
Comparativa de rendimiento y métricas#
Al analizar el rendimiento de los modelos, es esencial equilibrar la precisión con la latencia de inferencia y el coste computacional. La tabla siguiente muestra las compensaciones entre distintos tamaños de YOLOv9 y EfficientDet.
| Modelo | tamaño (píxeles) | mAPval50-95 | Velocidad CPU ONNX (ms) | Velocidad T4 TensorRT10 (ms) | parámetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.2 | 26.7 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.1 | 76.8 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.5 | 102.8 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 58.1 | 192.5 |
| EfficientDet-d0 | 512 | 34.6 | - | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | - | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 768 | 43.0 | - | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 896 | 47.5 | - | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 1024 | 49.7 | - | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 1280 | 51.5 | - | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 1280 | 52.6 | - | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 1536 | 53.7 | - | 128.07 | 51.9 | 325.0 |
Análisis crítico de las métricas#
- Umbrales de precisión: YOLOv9e alcanza la mayor precisión general, con un mAP (precisión media) del 55,6 %, y supera al modelo EfficientDet-d7, el más grande (53,7 %), a la vez que mantiene velocidades superiores con TensorRT.
- Velocidad en tiempo real: YOLOv9t solo necesita 2.3 ms en una GPU T4 con TensorRT, lo que pone de manifiesto la eficiencia de la arquitectura GELAN para flujos de vídeo de alta velocidad. EfficientDet-d0 es más lento, con 3.92 ms, y queda 3.7 mAP por detrás de YOLOv9t.
- Complejidad computacional: EfficientDet aumenta considerablemente el número de parámetros y los FLOPs a medida que crece el factor compuesto. La variante d7 alcanza una latencia de 128 ms, por lo que es unas 7,6 veces más lenta que YOLOv9e, que ofrece mayor precisión (16,77 ms). Esto limita su uso en entornos de inferencia en tiempo real.
Eficiencia de entrenamiento y ecosistema#
Al elegir un modelo, también hay que evaluar el ecosistema para desarrolladores. El ecosistema de Ultralytics ofrece ventajas claras en eficiencia de entrenamiento, flexibilidad de despliegue y versatilidad.
La ventaja de Ultralytics#
Los modelos compatibles con el framework de Ultralytics, incluidos YOLOv9, YOLOv8 y YOLO11, suelen necesitar menos memoria de entrenamiento que los modelos basados en Transformer o las arquitecturas TensorFlow más antiguas, como EfficientDet. El backend PyTorch permite una convergencia rápida y un entrenamiento estable.
- Versatilidad: A diferencia de EfficientDet, que se centra exclusivamente en la detección de cajas delimitadoras, la API de Ultralytics admite de forma nativa la segmentación de instancias, la clasificación de imágenes, la estimación de pose y las cajas delimitadoras orientadas (OBB).
- Facilidad de uso: EfficientDet depende de bibliotecas TensorFlow antiguas y de configuraciones AutoML complejas que pueden ser frágiles de configurar. En cambio, Ultralytics ofrece una API perfeccionada para el ajuste de hiperparámetros y la gestión de conjuntos de datos.
Ejemplo de implementación#
Entrenar un modelo de visión artificial no debería requerir cientos de líneas de código repetitivo. El ejemplo siguiente inicia el entrenamiento con el paquete Python de Ultralytics:
from ultralytics import YOLO
# Carga un modelo oficial de Ultralytics (p. ej., YOLO11 o YOLO26)
model = YOLO("yolo11n.pt")
# Entrena el modelo de forma nativa con un conjunto de datos personalizado
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Exporta el modelo entrenado al formato ONNX para implementarlo
model.export(format="onnx")Casos de uso ideales y aplicaciones reales#
Los distintos paradigmas estructurales hacen que estos modelos sean adecuados para situaciones diferentes.
Cuándo utilizar EfficientDet: EfficientDet sigue siendo una opción viable en sistemas heredados profundamente integrados en el ecosistema TensorFlow, donde no es factible migrar a PyTorch. También destaca históricamente en la investigación sobre análisis de imágenes médicas, en la que es aceptable procesar sin conexión exploraciones de alta resolución a menor velocidad.
Cuándo utilizar YOLOv9: YOLOv9 es adecuado para aplicaciones que necesitan una gran precisión sin un número elevado de parámetros. Aplicaciones como la gestión del tráfico en ciudades inteligentes y la supervisión de multitudes de alta densidad se benefician de la capacidad de PGI para conservar los detalles de las características.
Prepararse para el futuro: la próxima generación de IA visual#
Aunque YOLOv9 y EfficientDet son modelos capaces, los desarrolladores que buscan el mejor equilibrio entre velocidad de computación edge, estabilidad del entrenamiento y sencillez de despliegue deberían considerar las innovaciones más recientes.
Lanzado en enero de 2026, Ultralytics YOLO26 es actualmente el modelo recomendado de Ultralytics. Mejora las generaciones anteriores (incluidos YOLO11 y YOLOv8) con varios cambios clave:
- Diseño de extremo a extremo sin NMS: YOLO26 ofrece una cabeza opcional uno a uno (
nms=False) que omite por completo la supresión de máximos no máximos (NMS), un enfoque que YOLOv10 introdujo en los modelos YOLO, y permite un despliegue del modelo más rápido y sencillo. - Eliminación de DFL: se elimina Distribution Focal Loss para simplificar la exportación y mejorar la compatibilidad con dispositivos periféricos y de bajo consumo.
- Inferencia en CPU hasta un 43 % más rápida: YOLO26n funciona hasta un 43 % más rápido que YOLO11n en CPU, por lo que resulta adecuado para dispositivos IoT y entornos sin GPU dedicada.
- Optimizador MuSGD: Una combinación de SGD y Muon (inspirada en las innovaciones del entrenamiento de LLM) para acelerar la convergencia y lograr un entrenamiento más estable.
- ProgLoss + STAL: La pérdida progresiva y la asignación de etiquetas con conocimiento de objetivos pequeños (STAL) mejoran la detección de objetos pequeños, un factor fundamental en las imágenes aéreas tomadas con drones y en la robótica.
Con la plataforma Ultralytics, los equipos pueden gestionar conjuntos de datos, realizar un seguimiento de los experimentos y desplegar modelos como YOLO26 en distintos tipos de hardware, manteniendo sus flujos de visión artificial listos para producción.