YOLOv7 vs. DAMO-YOLO: Una comparativa técnica exhaustiva
El panorama de la detección de objetos en tiempo real evoluciona continuamente, con investigadores e ingenieros esforzándose por encontrar el equilibrio óptimo entre velocidad y precisión. En esta comparativa técnica, analizaremos en profundidad dos arquitecturas destacadas de 2022: YOLOv7 y DAMO-YOLO. Ambos modelos introdujeron conceptos novedosos en la comunidad de visión artificial, abordando diferentes desafíos en el entrenamiento de modelos, diseño arquitectónico y despliegue.
Antecedentes de los modelos y detalles técnicos
Antes de profundizar en sus arquitecturas, es esencial comprender los orígenes de estos dos modelos. Ambos fueron desarrollados por grupos de investigación líderes e introdujeron metodologías avanzadas para ampliar los límites de la detección de objetos en tiempo real.
Detalles de YOLOv7
Desarrollado como una continuación de la familia YOLO, YOLOv7 introdujo el concepto de "bag-of-freebies" entrenables para mejorar significativamente la precisión sin aumentar el coste de inferencia.
- Autores: Chien-Yao Wang, Alexey Bochkovskiy y Hong-Yuan Mark Liao
- Organización: Institute of Information Science, Academia Sinica, Taiwan
- Fecha: 2022-07-06
- Arxiv: https://arxiv.org/abs/2207.02696
- GitHub: https://github.com/WongKinYiu/yolov7
- Documentación: https://docs.ultralytics.com/models/yolov7/
Detalles de DAMO-YOLO
Creado por investigadores de Alibaba Group, DAMO-YOLO se centró intensamente en la búsqueda de arquitectura neuronal (NAS) y en la destilación de conocimiento avanzada para construir modelos altamente eficientes para hardware variado.
- Autores: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang y Xiuyu Sun
- Organización: Alibaba Group
- Fecha: 23-11-2022
- Arxiv: https://arxiv.org/abs/2211.15444v2
- GitHub: https://github.com/tinyvision/DAMO-YOLO
Más información sobre DAMO-YOLO
Innovaciones arquitectónicas
YOLOv7: Análisis de rutas de gradiente y re-parametrización
YOLOv7 se centra en gran medida en las Extended Efficient Layer Aggregation Networks (E-ELAN). Los autores diseñaron E-ELAN analizando las rutas de gradiente de la red, asegurando que la red pueda aprender continuamente sin degradar la ruta de gradiente original. Además, YOLOv7 utiliza eficazmente la re-parametrización de modelos durante la inferencia, fusionando capas sin problemas para reducir los FLOPs y acelerar los tiempos de ejecución. Esto lo hace altamente capaz para la inferencia en tiempo real en GPUs modernas.
DAMO-YOLO: Búsqueda de arquitectura neuronal y RepGFPN
DAMO-YOLO diverge al aprovechar intensamente la Neural Architecture Search (NAS) bajo restricciones de latencia. Utiliza un marco llamado MAE-NAS para descubrir backbones óptimos adaptados a hardware específico, como dispositivos móviles o aceleradores de borde específicos. Para su cuello, introduce una eficiente RepGFPN (Rep-parameterized Generalized Feature Pyramid Network), y emplea un diseño ZeroHead para minimizar la carga computacional en las cabezas de predicción.
Mientras que YOLOv7 confía en optimizaciones de arquitectura inherentes y potentes, DAMO-YOLO depende en gran medida de un complejo proceso de destilación de conocimiento multietapa. Requiere entrenar un gran modelo profesor para destilar conocimiento en un modelo estudiante más pequeño, lo cual puede resultar costoso desde el punto de vista computacional durante la fase de entrenamiento.
Comparación de rendimiento y métricas
Al comparar estos modelos, es crucial observar el mAP (Mean Average Precision), la velocidad de inferencia y la complejidad del modelo.
| Modelo | tamaño (píxeles) | mAPval 50-95 | Velocidad CPU ONNX (ms) | Velocidad T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
La tabla anterior demuestra que YOLOv7 escala bien en dominios de alta precisión (YOLOv7x), mientras que DAMO-YOLO ofrece modelos diminutos altamente optimizados para entornos con restricciones.
Eficiencia de entrenamiento y requisitos de memoria
Una distinción importante entre ambas arquitecturas reside en sus metodologías de entrenamiento. La dependencia de DAMO-YOLO de la destilación significa que entrenar un nuevo modelo desde cero o realizar un ajuste fino en un dataset de visión artificial personalizado a menudo requiere significativamente más VRAM y tiempo de cómputo de GPU.
En contraste, los modelos integrados en el ecosistema Ultralytics, como YOLOv7 y versiones posteriores, están altamente optimizados para requisitos de memoria. Permiten a los desarrolladores utilizar tamaños de lote mayores en hardware de consumo sin encontrar errores de falta de memoria, simplificando el proceso de seguimiento de experimentos y la iteración.
La ventaja de Ultralytics
Si bien tanto YOLOv7 como DAMO-YOLO ofrecen funciones atractivas, desplegar modelos dentro del ecosistema Ultralytics proporciona una experiencia de desarrollador inigualable.
- Facilidad de uso: El paquete Python de Ultralytics ofrece una API unificada y sencilla. Puedes cambiar rápidamente entre arquitecturas de modelos, iniciar bucles de entrenamiento o ejecutar inferencia con unas pocas líneas de código.
- Ecosistema bien mantenido: Ultralytics proporciona actualizaciones frecuentes, asegurando una compatibilidad nativa con las últimas versiones de PyTorch y controladores CUDA. También simplifica la exportación de modelos a formatos como ONNX, TensorRT y OpenVINO.
- Versatilidad: A diferencia de DAMO-YOLO, que es estrictamente un detector de objetos, el ecosistema Ultralytics admite diversas tareas de forma nativa. Los modelos de la familia Ultralytics pueden realizar detección estándar de cajas delimitadoras, estimación de poses, segmentación de instancias y cajas delimitadoras orientadas (OBB).
Ejemplo de código: Cómo empezar rápidamente
Aquí tienes lo fácil que es cargar, entrenar y ejecutar la inferencia usando modelos Ultralytics:
from ultralytics import YOLO
# Load a pre-trained YOLOv7 model (or newer models like yolo26n.pt)
model = YOLO("yolov7.pt")
# Train the model on the COCO8 dataset with automated hyperparameter handling
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference on an image
predictions = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX format for deployment
model.export(format="onnx")Con Ultralytics, exportar tus pesos entrenados a varios formatos acelerados por hardware (como TensorRT o CoreML) se gestiona mediante un único argumento en el comando de exportación, ahorrando horas de configuraciones complejas de scripts.
La próxima generación: YOLO26
Aunque YOLOv7 sigue siendo una arquitectura heredada potente, el campo ha avanzado rápidamente. Para nuevos despliegues, Ultralytics YOLO26 (lanzado en enero de 2026) es el estándar recomendado, superando a las generaciones anteriores en casi todas las métricas.
- Diseño integral sin NMS: Introducido por primera vez en YOLOv10, YOLO26 elimina de forma nativa el post-procesamiento de Non-Maximum Suppression (NMS). Esto garantiza una inferencia determinista de latencia ultrabaja, crítica para la robótica y las tecnologías de conducción autónoma.
- Optimizador MuSGD: Inspirado en técnicas avanzadas de entrenamiento de LLMs (como Kimi K2 de Moonshot AI), este optimizador híbrido combina SGD y Muon para ofrecer un entrenamiento altamente estable y una convergencia más rápida en diferentes datasets.
- Hasta un 43% más de velocidad de inferencia en CPU: Al eliminar estratégicamente la Distribution Focal Loss (DFL), YOLO26 aumenta significativamente el rendimiento en plataformas de computación de borde y CPUs.
- ProgLoss + STAL: Estas funciones de pérdida avanzadas producen mejoras sustanciales en la detección de objetos pequeños, haciendo que YOLO26 sea excepcionalmente adecuado para imágenes aéreas y vigilancia detallada.
Casos de uso ideales
Cuándo elegir DAMO-YOLO
- Investigación académica en NAS: Si tu organización está fuertemente invertida en el estudio de metodologías de Neural Architecture Search.
- Latencia hiper-restringida en hardware específico: Si tienes los recursos para ejecutar búsquedas exhaustivas de NAS para encontrar un backbone adaptado para un chip acelerador de IA personalizado.
Cuándo elegir YOLOv7
- Pipelines de GPU existentes: Para equipos que mantienen pipelines de producción heredados profundamente optimizados en torno a la arquitectura E-ELAN específica de YOLOv7 en hardware NVIDIA de gama alta.
Por qué migrar a modelos Ultralytics modernos (YOLO11 / YOLO26)
Para la gran mayoría de las aplicaciones empresariales—desde análisis minorista y fabricación inteligente hasta la atención sanitaria—los modelos modernos de Ultralytics no tienen rival. La integración con la Plataforma Ultralytics proporciona un pipeline de ML completo, ofreciendo facilidad de uso, documentación superior, un sólido soporte comunitario y versatilidad multitarea. Ya sea rastreando inventario en una Raspberry Pi o ejecutando análisis pesados en la nube, modelos como YOLO26 ofrecen el equilibrio de rendimiento ideal para el futuro de la visión artificial.