Yolo Vision Shenzhen
Shenzhen
Únete ahora

¿Cómo entrenar, validar, predecir, exportar y evaluar con los modelos YOLO de Ultralytics?

Nuvola Ladi

3 minutos de lectura

24 de julio de 2024

¡Aprenda a entrenar, validar, predecir, exportar y evaluar con los modelos Ultralytics YOLO!

Adentrémonos en el mundo de Ultralytics y exploremos los diferentes modos disponibles para los distintos modelos YOLO. Ya sea que esté entrenando modelos personalizados de detección de objetos o trabajando en segmentación, comprender estos modos es un paso crucial. ¡Vamos a ello!

A través de la documentación de Ultralytics, encontrarás varios modos que puedes utilizar para tus modelos, ya sea para entrenar, validar, predecir, exportar, evaluar o rastrear. Cada uno de estos modos tiene un propósito único y te ayuda a optimizar el rendimiento y la implementación de tu modelo.

Modo de entrenamiento

En primer lugar, vamos a ver el modo de entrenamiento. Aquí es donde se construye y se perfecciona el modelo. Puede encontrar instrucciones detalladas y guías en vídeo en la documentación, lo que facilita la puesta en marcha del entrenamiento de sus modelos personalizados.

El entrenamiento de modelos implica proporcionar a un modelo un nuevo conjunto de datos, lo que le permite aprender varios patrones. Una vez entrenado, el modelo puede utilizarse en tiempo real para detectar nuevos objetos en los que ha sido entrenado. Antes de iniciar el proceso de entrenamiento, es esencial anotar su conjunto de datos en formato YOLO.

Modo de validación

A continuación, profundicemos en el modo de validación. La validación es esencial para ajustar los hiperparámetros y garantizar que su modelo funcione bien. Ultralytics ofrece una variedad de opciones de validación, incluyendo ajustes automatizados, soporte multi-métrica y compatibilidad con la API de Python. Incluso puede ejecutar la validación directamente a través de la interfaz de línea de comandos (CLI) con el siguiente comando.

¿Por qué validar?

La validación es fundamental para:

  • Precisión: Asegura que tu modelo detecte objetos con exactitud.
  • Comodidad: Agilización del proceso de validación.
  • Flexibilidad: Ofrece múltiples métodos de validación.
  • Ajuste de hiperparámetros: Optimización de su modelo para un mejor rendimiento.

Ultralytics también proporciona ejemplos de usuario que puede copiar y pegar en sus scripts de Python. Estos ejemplos incluyen parámetros como el tamaño de la imagen, el tamaño del lote, el dispositivo (CPU o GPU) y la intersección sobre la unión (IoU).

Modo de predicción

Una vez que su modelo esté entrenado y validado, es hora de hacer predicciones. El modo Predict le permite ejecutar la inferencia en nuevos datos y ver su modelo en acción. Este modo es perfecto para probar el rendimiento de su modelo en datos del mundo real.

¡Con el fragmento de código de Python que aparece a continuación, podrá ejecutar predicciones en sus imágenes!

Modo de exportación

Después de validar y predecir, es posible que desee implementar su modelo. El modo de exportación le permite convertir su modelo en varios formatos, como ONNX o TensorRT, lo que facilita su implementación en diferentes plataformas.

Modo de evaluación comparativa

Finalmente, tenemos el modo de evaluación comparativa. La evaluación comparativa es esencial para evaluar el rendimiento de su modelo en diversos escenarios. Este modo le ayuda a tomar decisiones informadas sobre la asignación de recursos, la optimización y la rentabilidad.

Cómo realizar benchmarks

Para ejecutar una prueba de rendimiento, puede utilizar los ejemplos de usuario proporcionados en la documentación. Estos ejemplos cubren métricas clave y formatos de exportación, incluidos ONNX y TensorRT. También puede especificar parámetros como la cuantificación entera (INT8) o la cuantificación de coma flotante (FP16) para ver cómo las diferentes configuraciones impactan en el rendimiento.

Ejemplo de evaluación comparativa en el mundo real

Veamos un ejemplo real de evaluación comparativa. Cuando evaluamos nuestro modelo PyTorch, observamos una velocidad de inferencia de 68 milisegundos en una GPU RTX 3070. Después de exportar a TorchScript, la velocidad de inferencia se reduce a 4 milisegundos, lo que demuestra una mejora significativa.

Para los modelos ONNX, alcanzamos una velocidad de inferencia de 21 milisegundos. Al probar estos modelos en una CPU (un Intel i9 de 13ª generación), vemos resultados variables. TorchScript se ejecuta a 115 milisegundos, mientras que ONNX funciona mejor a 84 milisegundos. Por último, OpenVINO optimizado para hardware Intel alcanza unos vertiginosos 23 milisegundos.

__wf_reserved_inherit
Fig. 1. Nicolai Nielsen demostrando cómo ejecutar pruebas de rendimiento con los modelos Ultralytics YOLO.

La importancia del benchmarking

La evaluación comparativa demuestra cómo los diferentes hardware y formatos de exportación pueden afectar al rendimiento de su modelo. Es fundamental realizar pruebas comparativas de sus modelos, especialmente si tiene previsto implementarlos en hardware personalizado o dispositivos periféricos. Este proceso garantiza que su modelo esté optimizado para el entorno de destino, proporcionando el mejor rendimiento posible.

Conclusión

En resumen, los modos en la documentación de Ultralytics son herramientas potentes para entrenar, validar, predecir, exportar y evaluar sus modelos YOLO. Cada modo desempeña un papel vital en la optimización de su modelo y en la preparación para su implementación.

No olvides explorar y unirte a nuestra comunidad y probar los fragmentos de código proporcionados en tus proyectos. Con estas herramientas, puedes crear modelos de alto rendimiento y asegurarte de que se ejecuten de manera eficiente en cualquier entorno.

¡Construyamos juntos el futuro
de la IA!

Comience su viaje con el futuro del aprendizaje automático

Comienza gratis
Enlace copiado al portapapeles