DAMO-YOLO vs. YOLOv7: Una comparación técnica detallada
Elegir el modelo de detección de objetos adecuado es un paso fundamental en cualquier proyecto de visión artificial, que impacta directamente en el rendimiento, la velocidad y la viabilidad de la implementación. Esta página proporciona una comparación técnica detallada entre DAMO-YOLO y YOLOv7, dos modelos potentes que realizaron contribuciones significativas al campo en 2022. Exploraremos sus diferencias arquitectónicas, métricas de rendimiento y casos de uso ideales para ayudarle a tomar una decisión informada para sus necesidades específicas.
DAMO-YOLO: Detección rápida y precisa con tecnología avanzada
DAMO-YOLO es un modelo de detección de objetos desarrollado por Alibaba Group, que se centra en lograr un alto rendimiento a través de una combinación de tecnologías de vanguardia. Su objetivo es ofrecer un equilibrio superior de velocidad y precisión, especialmente para escenarios de implementación en el mundo real.
- Autores: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang, y Xiuyu Sun
- Organización: Alibaba Group
- Fecha: 2022-11-23
- Arxiv: https://arxiv.org/abs/2211.15444v2
- GitHub: https://github.com/tinyvision/DAMO-YOLO
- Documentación: https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
Arquitectura y Características Clave
La arquitectura de DAMO-YOLO se basa en varias innovaciones clave diseñadas para optimizar el rendimiento y la eficiencia:
- Backbones impulsados por NAS: Aprovecha la Búsqueda de Arquitectura Neuronal (NAS) para generar redes backbone óptimas. Este enfoque automatizado ayuda a descubrir arquitecturas que proporcionan una mejor relación velocidad-precisión que las diseñadas manualmente.
- Neck RepGFPN Eficiente: El modelo introduce una nueva estructura de neck llamada Red Piramidal de Características Generalizada (GFPN), que se mejora con técnicas de reparametrización. Este diseño permite una fusión eficiente de características multiescala, crucial para detectar objetos de varios tamaños.
- ZeroHead: DAMO-YOLO incorpora un head simplificado, de parámetro cero, que separa las tareas de clasificación y regresión. Esto reduce la complejidad computacional y el tamaño del modelo sin sacrificar el rendimiento.
- Asignación de etiquetas AlignedOTA: Utiliza una estrategia avanzada de asignación de etiquetas llamada AlignedOTA, que resuelve los problemas de desalineación entre las puntuaciones de clasificación y la precisión de la localización, lo que lleva a detecciones más precisas.
Fortalezas y Debilidades
Ventajas:
- Alta velocidad de inferencia: Las variantes más pequeñas (DAMO-YOLO-t/s) son excepcionalmente rápidas, lo que las hace ideales para aplicaciones que requieren baja latencia, como las de los dispositivos edge AI.
- Tecnología innovadora: Integra técnicas de última generación como NAS y un diseño de neck eficiente para superar los límites de rendimiento.
Debilidades:
- Integración en el ecosistema: Puede carecer del ecosistema integral, la extensa documentación y la experiencia de usuario optimizada que se encuentran en frameworks como Ultralytics.
- Soporte de la comunidad: Como modelo impulsado por la investigación de una sola corporación, puede tener una comunidad de código abierto más pequeña en comparación con modelos más ampliamente adoptados.
Más información sobre DAMO-YOLO
YOLOv7: Superando los límites de la precisión en tiempo real
YOLOv7, presentado por Chien-Yao Wang et al., estableció un nuevo estado del arte para los detectores de objetos en tiempo real tras su lanzamiento. Se centró en optimizar el proceso de entrenamiento para mejorar la precisión sin aumentar el coste de la inferencia.
- Autores: Chien-Yao Wang, Alexey Bochkovskiy y Hong-Yuan Mark Liao
- Organización: Instituto de Ciencias de la Información, Academia Sinica, Taiwán
- 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/
Arquitectura y Características Clave
YOLOv7 introdujo varias mejoras arquitectónicas y de entrenamiento que impulsaron significativamente su rendimiento:
- E-ELAN (Red de Agregación de Capas Eficiente Extendida): Esta estructura de red avanzada mejora la capacidad de aprendizaje del modelo al permitirle aprender características más diversas sin interrumpir la ruta de gradiente original.
- Escalado Compuesto del Modelo: YOLOv7 emplea una estrategia de escalado del modelo que ajusta correctamente la profundidad y el ancho del modelo para arquitecturas basadas en concatenación, lo que garantiza un rendimiento óptimo en diferentes tamaños de modelo.
- Bag-of-Freebies entrenable: Una contribución clave de YOLOv7 es su uso de optimizaciones en tiempo de entrenamiento, como cabezales auxiliares y pérdida guiada de lo grueso a lo fino, que mejoran la precisión final del modelo sin añadir ninguna sobrecarga computacional durante la inferencia.
Fortalezas y Debilidades
Ventajas:
- Excelente Equilibrio Precisión-Velocidad: YOLOv7 ofrece una notable combinación de mAP alto y velocidades de inferencia rápidas, lo que lo hace muy adecuado para la inferencia en tiempo real.
- Entrenamiento eficiente: El enfoque de "bag-of-freebies" le permite lograr una mayor precisión desde el proceso de entrenamiento sin hacer que el modelo final sea más lento.
- Rendimiento Establecido: Se ha evaluado exhaustivamente en conjuntos de datos estándar como MS COCO, con resultados probados.
Debilidades:
- Complejidad: La arquitectura y las estrategias de entrenamiento pueden ser complejas de entender e implementar desde cero.
- Versatilidad limitada: YOLOv7 es principalmente un modelo de detección de objetos. Si bien existen versiones de la comunidad para otras tareas, carece de la versatilidad multitarea integrada de frameworks como Ultralytics YOLOv8.
- Uso intensivo de recursos: El entrenamiento de modelos YOLOv7 más grandes puede requerir importantes recursos de GPU.
Análisis de rendimiento: Velocidad vs. Precisión
Al comparar DAMO-YOLO y YOLOv7, la compensación entre velocidad y precisión es evidente. Los modelos más pequeños de DAMO-YOLO, como DAMO-YOLO-t, ofrecen los tiempos de inferencia más rápidos, lo que los convierte en la mejor opción para aplicaciones de latencia crítica en hardware con recursos limitados. Por otro lado, YOLOv7, particularmente la variante YOLOv7x, alcanza un mAP más alto, lo que lo hace adecuado para escenarios donde la máxima precisión es la prioridad. Los modelos de tamaño mediano de ambas familias, DAMO-YOLO-l y YOLOv7-l, ofrecen un rendimiento competitivo, con YOLOv7-l logrando un mAP ligeramente más alto a costa de un pequeño aumento en la latencia.
Modelo | tamaño (píxeles) |
mAPval 50-95 |
Velocidad CPU ONNX (ms) |
Velocidad T4 TensorRT10 (ms) |
parámetros (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
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 |
YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
¿Por qué elegir los modelos YOLO de Ultralytics?
Si bien DAMO-YOLO y YOLOv7 son modelos potentes, los desarrolladores e investigadores a menudo encuentran un valor superior en el ecosistema Ultralytics con modelos como YOLOv8 y el último Ultralytics YOLO11. Los modelos de Ultralytics proporcionan ventajas significativas que van más allá de las métricas brutas:
- Facilidad de uso: Los modelos de Ultralytics ofrecen una API de Python optimizada y sencillos comandos de la CLI, respaldados por una extensa documentación, lo que facilita el entrenamiento, la validación y la implementación de modelos.
- Ecosistema bien mantenido: Los usuarios se benefician de un desarrollo activo, una sólida comunidad de código abierto, actualizaciones frecuentes y una integración perfecta con herramientas como Ultralytics HUB para un MLOps integral.
- Equilibrio de rendimiento: Los modelos de Ultralytics están diseñados para proporcionar un excelente equilibrio entre velocidad y precisión, lo que los hace adecuados para una amplia gama de aplicaciones, desde dispositivos en el borde hasta servidores en la nube.
- Eficiencia de memoria: Los modelos YOLO de Ultralytics están diseñados para un uso eficiente de la memoria tanto durante el entrenamiento como durante la inferencia, y a menudo requieren menos memoria CUDA que otras arquitecturas.
- Versatilidad: Modelos como YOLOv8 y YOLO11 no se limitan a la detección. Admiten múltiples tareas de forma predeterminada, incluyendo segmentación de instancias, clasificación de imágenes, estimación de pose y detección de objetos orientados (OBB), ofreciendo una solución unificada para diversas necesidades de visión artificial.
- Eficiencia del entrenamiento: Benefíciese de procesos de entrenamiento eficientes, pesos pre-entrenados disponibles en conjuntos de datos como COCO y tiempos de convergencia más rápidos.
Conclusión
Tanto DAMO-YOLO como YOLOv7 representan avances significativos en la detección de objetos. DAMO-YOLO destaca en la velocidad de inferencia, especialmente con sus variantes más pequeñas, lo que lo convierte en un firme candidato para dispositivos periféricos o aplicaciones que priorizan la baja latencia. YOLOv7 supera los límites de la precisión manteniendo un buen rendimiento en tiempo real, especialmente adecuado para escenarios en los que es fundamental lograr el mAP más alto posible.
Sin embargo, los desarrolladores también podrían considerar modelos dentro del ecosistema de Ultralytics, como YOLOv8 o el último YOLO11. Estos modelos a menudo proporcionan un equilibrio superior de rendimiento, facilidad de uso, extensa documentación, entrenamiento eficiente, menores requisitos de memoria y versatilidad en múltiples tareas de visión, todo ello respaldado por un ecosistema bien mantenido y un soporte activo de la comunidad a través de Ultralytics HUB.
Otros modelos
Los usuarios interesados en DAMO-YOLO y YOLOv7 también pueden encontrar relevantes estos modelos:
- Ultralytics YOLOv5: Un modelo muy popular y eficiente conocido por su velocidad y facilidad de implementación. Explore la documentación de YOLOv5.
- Ultralytics YOLOv8: Un modelo versátil de última generación que ofrece un excelente rendimiento en tareas de detección, segmentación, pose y clasificación. Explore la documentación de YOLOv8.
- YOLOv9: Introduce innovaciones como PGI y GELAN para mejorar la precisión y la eficiencia. Ver la documentación de YOLOv9.
- YOLOv10: Se centra en la detección end-to-end sin NMS para reducir la latencia. Comparar YOLOv10 vs DAMO-YOLO.
- Ultralytics YOLO11: El último modelo de vanguardia de Ultralytics, que enfatiza la velocidad, la eficiencia y la facilidad de uso con un diseño sin anclajes. Más información sobre YOLO11.
- RT-DETR: Un modelo de detección en tiempo real basado en transformadores. Compare RT-DETR vs DAMO-YOLO.