Ir al contenido

YOLOv5 vs. PP-YOLOE+: Una comparación técnica para la detección de objetos

Seleccionar el modelo óptimo de detección de objetos es una decisión fundamental que impacta la eficiencia, la precisión y la escalabilidad de los proyectos de visión artificial. Esta guía exhaustiva compara Ultralytics YOLOv5, un modelo legendario reconocido por su usabilidad y velocidad, con PP-YOLOE+, un modelo de alta precisión del ecosistema PaddlePaddle de Baidu. Al analizar sus arquitecturas, métricas de rendimiento y flujos de trabajo de implementación, nuestro objetivo es ayudar a los desarrolladores e investigadores a elegir la mejor solución para sus necesidades específicas.

Ultralytics YOLOv5: El estándar de usabilidad y velocidad

YOLOv5, lanzado por Ultralytics en 2020, cambió fundamentalmente el panorama de la IA de visión al hacer que la detección de objetos de última generación sea accesible para todos. A diferencia de sus predecesores, fue el primer modelo YOLO implementado de forma nativa en PyTorch, lo que simplificó el proceso de entrenamiento e implementación para la comunidad global de ciencia de datos. Su filosofía de diseño prioriza un equilibrio entre la velocidad de inferencia en tiempo real y la alta precisión, empaquetado en un ecosistema increíblemente fácil de usar.

Autores: Glenn Jocher
Organización:Ultralytics
Fecha: 2020-06-26
GitHub:https://github.com/ultralytics/yolov5
Docs:https://docs.ultralytics.com/models/yolov5/

Puntos fuertes clave

  • Facilidad de uso: YOLOv5 es famoso por su experiencia "lista para usar". Con una API de python optimizada e comandos CLI intuitivos, los desarrolladores pueden comenzar a entrenar en conjuntos de datos personalizados en minutos.
  • Ecosistema bien mantenido: Respaldado por Ultralytics, disfruta de actualizaciones frecuentes y una comunidad masiva y activa. Esto asegura un soporte a largo plazo y una gran cantidad de conocimiento compartido en plataformas como GitHub Issues.
  • Equilibrio de rendimiento: Ofrece velocidades de inferencia en tiempo real excepcionales, particularmente en dispositivos de borde como la Raspberry Pi, sin sacrificar una precisión significativa.
  • Versatilidad: Más allá de la detección estándar, YOLOv5 admite la segmentación de instancias y la clasificación de imágenes, lo que la convierte en una herramienta flexible para diversas tareas de visión.

Más información sobre YOLOv5

PP-YOLOE+: Alta precisión en el ecosistema Paddle

PP-YOLOE+ es una evolución de la serie PP-YOLO, desarrollada por investigadores de Baidu. Lanzado en 2022, sirve como modelo insignia dentro del toolkit PaddleDetection. Adopta una arquitectura sin anclajes y estrategias de entrenamiento avanzadas para superar los límites de la precisión en conjuntos de datos de referencia como COCO.

Autores: Autores de PaddlePaddle
Organización:Baidu
Fecha: 2022-04-02
ArXiv:https://arxiv.org/abs/2203.16250
GitHub:https://github.com/PaddlePaddle/PaddleDetection/
Documentación:https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.8.1/configs/ppyoloe/README.md

Arquitectura y características

PP-YOLOE+ utiliza un backbone CSPRepResNet y un encabezado de detección único sin prototipos. Al ser un detector sin anclaje, reduce la complejidad del ajuste de hiperparámetros relacionados con los anchor boxes. Destaca en escenarios donde maximizar la Precisión Media Promedio (mAP) es el objetivo principal, a menudo logrando puntuaciones ligeramente más altas que los modelos comparables basados en anclajes a costa de una mayor complejidad computacional. Sin embargo, su dependencia del framework PaddlePaddle puede presentar una curva de aprendizaje para los equipos estandarizados en PyTorch o TensorFlow.

Más información sobre PP-YOLOE+

Análisis de rendimiento: Métricas y eficiencia

Al comparar YOLOv5 y PP-YOLOE+, la compensación generalmente se encuentra entre la precisión bruta y la eficiencia operativa (velocidad y facilidad de implementación).

Velocidad vs. Precisión

Los modelos PP-YOLOE+ generalmente publican un mAP más altoval puntuaciones en el conjunto de datos COCO, lo que demuestra su solidez en la capacidad de detección pura. Por ejemplo, el PP-YOLOE+l alcanza un notable 52.9 mAP. Sin embargo, esto a menudo conlleva una mayor latencia en hardware estándar en comparación con YOLOv5.

Ultralytics YOLOv5 brilla en velocidad de inferencia. El YOLOv5n El modelo (Nano) es increíblemente ligero, alcanzando 28.0 mAP con un tiempo de inferencia ultrarrápido de 1.12 ms en una GPU T4 usando TensorRT. Esto convierte a YOLOv5 en la opción superior para aplicaciones de IA en el borde donde la latencia de milisegundos es crítica.

Eficiencia computacional

Los modelos YOLOv5 están diseñados teniendo en cuenta las limitaciones de memoria. Por lo general, requieren menos memoria CUDA durante el entrenamiento y la inferencia en comparación con arquitecturas complejas sin anclajes o modelos basados en transformadores. Esta eficiencia facilita una implementación más fluida en hardware con recursos limitados, como los módulos NVIDIA Jetson, sin grandes esfuerzos de optimización.

Modelotamaño
(píxeles)
mAPval
50-95
Velocidad
CPU ONNX
(ms)
Velocidad
T4 TensorRT10
(ms)
parámetros
(M)
FLOPs
(B)
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59

Ecosistema de entrenamiento y usabilidad

Las métricas "soft" de la experiencia del desarrollador a menudo dictan el éxito de un proyecto. Aquí, la diferencia entre los dos modelos es más pronunciada.

Ecosistema de Ultralytics

YOLOv5 se beneficia del ecosistema Ultralytics integrado, que agiliza todo el pipeline de MLOps.

  • Nativo de PyTorch: Estar construido sobre PyTorch garantiza la compatibilidad con la gran mayoría de herramientas y bibliotecas de código abierto.
  • Integraciones Fluidas: La compatibilidad integrada para Weights & Biases, Comet y ClearML facilita el seguimiento de experimentos.
  • Eficiencia del Entrenamiento: Los pesos pre-entrenados están disponibles y se descargan automáticamente, lo que permite una rápida transferencia de aprendizaje.
  • Implementación: El modo de exportación admite la conversión con un solo clic a ONNX, CoreML, TFLite y más.

Simplificación del flujo de trabajo con Ultralytics HUB

Puedes entrenar, previsualizar e implementar modelos YOLOv5 sin escribir una sola línea de código utilizando Ultralytics HUB. Esta plataforma basada en la web gestiona tus conjuntos de datos y ejecuciones de entrenamiento, haciendo que la IA de visión sea accesible para equipos de todos los niveles de habilidad.

Ecosistema PaddlePaddle

PP-YOLOE+ se basa en PaddlePaddle, el framework de aprendizaje profundo de Baidu. Si bien es potente y popular en Asia, tiene una menor presencia en la comunidad de investigación occidental en comparación con PyTorch. La adopción de PP-YOLOE+ a menudo requiere la configuración de un entorno separado y el aprendizaje de la sintaxis específica de Paddle (paddle.io, paddle.nn). Mientras que el documentación es exhaustiva, pero el ecosistema de herramientas de terceros y el soporte de la comunidad son menos extensos que los de YOLOv5.

Ejemplo de código: Simplicidad de YOLOv5

El siguiente código de python demuestra lo fácil que es cargar un modelo YOLOv5 pre-entrenado y realizar inferencias usando PyTorch Hub.

import torch

# Load a YOLOv5s model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)

# Define an image source
img = "https://ultralytics.com/images/zidane.jpg"

# Run inference
results = model(img)

# Print results to console
results.print()

# Show the image with bounding boxes
results.show()

Casos de uso en el mundo real

Dónde destaca YOLOv5

  • Automatización industrial: Su alta velocidad permite la detección de defectos en tiempo real en líneas de ensamblaje de rápido movimiento.
  • Robótica autónoma: La baja sobrecarga de memoria lo hace ideal para robots con capacidad de computación a bordo limitada, como los que se utilizan en logística.
  • Aplicaciones de ciudades inteligentes: El rendimiento eficiente de la CPU permite una implementación a gran escala para el monitoreo del tráfico en la infraestructura existente.

Dónde encaja PP-YOLOE+

  • Investigación de alta precisión: Proyectos académicos donde exprimir hasta el último 1% de mAP es más importante que la velocidad de inferencia.
  • Entornos centrados en Paddle: Entornos empresariales que ya han invertido fuertemente en la infraestructura del ecosistema Baidu.

Conclusión: ¿Qué modelo es el adecuado para ti?

Para la gran mayoría de desarrolladores y aplicaciones comerciales, Ultralytics YOLOv5 sigue siendo la opción recomendada. Su incomparable facilidad de uso, su sólido soporte comunitario y su flexibilidad de implementación la convierten en una solución de bajo riesgo y alta recompensa. La capacidad de implementarse en prácticamente cualquier plataforma, desde teléfonos móviles hasta servidores en la nube, con una fricción mínima, le da una ventaja decisiva en entornos de producción.

PP-YOLOE+ es una alternativa potente para los usuarios que requieren específicamente una arquitectura sin anclajes o para aquellos que ya están integrados en el flujo de trabajo de PaddlePaddle. Su alta precisión es encomiable, pero la fragmentación del ecosistema puede ralentizar el desarrollo para aquellos acostumbrados a los flujos de trabajo estándar de PyTorch.

Explorar Otros Modelos

La visión artificial avanza rápidamente. Si bien la comparación de estos modelos establecidos es valiosa, le animamos a explorar los últimos avances de la familia Ultralytics YOLO, que ofrecen aún mayor rendimiento y características.

  • YOLO11: El último modelo de última generación que ofrece una precisión y eficiencia superiores para la detección, la segmentación y la estimación de la pose.
  • YOLOv8: Un marco unificado muy popular que admite tareas de OBB y clasificación.
  • RT-DETR: Un detector basado en transformadores optimizado para el rendimiento en tiempo real.

Para una visión más amplia, consulta nuestra página principal de comparación de modelos para comparar diferentes arquitecturas con tus requisitos específicos.


Comentarios