Yolo Vision Shenzhen
Shenzhen
Únete ahora

Cómo entrenar, validar, predecir, exportar y comparar con modelosYOLO Ultralytics

Nuvola Ladi

3 minutos de lectura

24 de julio de 2024

Aprenda a entrenar, validar, predecir, exportar y comparar con los modelosYOLO de Ultralytics .

Sumerjámonos en el mundo de Ultralytics y exploremos los distintos modos disponibles para los diferentes modelos YOLO . Tanto si está entrenando modelos personalizados de detección de objetos como si está trabajando en la segmentación, comprender estos modos es un paso crucial. Entremos de lleno.

A través de ladocumentación Ultralytics , encontrará varios modos que puede utilizar para sus modelos, ya sea para entrenar, validar, predecir, exportar, comparar o track. Cada uno de estos modos tiene un propósito único y le ayuda a optimizar el rendimiento y el despliegue de su 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 un modelo consiste en proporcionarle un nuevo conjunto de datos que le permita aprender distintos patrones. Una vez entrenado, el modelo puede utilizarse en tiempo real para detect nuevos objetos. Antes de iniciar el proceso de entrenamiento, es esencial anotar el conjunto de datos en formato YOLO .

Modo de validación

A continuación, vamos a sumergirnos en el modo de validación. La validación es esencial para ajustar los hiperparámetros y garantizar el buen funcionamiento del modelo. Ultralytics proporciona una variedad de opciones de validación, incluyendo ajustes automatizados, soporte multimétrico y compatibilidad con la API Python . Incluso puede ejecutar la validación directamente a través de la interfaz de línea de comandosCLI) 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 dispositivoCPU o GPU) y la intersección sobre la uniónIoU).

Modo de predicción

Una vez entrenado y validado el modelo, es hora de hacer predicciones. El modo Predicción te permite ejecutar la inferencia sobre nuevos datos y ver tu modelo en acción. Este modo es perfecto para probar el rendimiento de tu modelo en datos reales.

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

Modo de exportación

Después de validar y predecir, es posible que desee desplegar su modelo. El modo de exportación te permite convertir tu modelo a varios formatos, como ONNX o TensorRT, lo que facilita su despliegue 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 un benchmark, puede utilizar los ejemplos de usuario proporcionados en la documentación. Estos ejemplos cubren métricas clave y formatos de exportación, incluyendo ONNX y TensorRT. También puede especificar parámetros como la cuantización de enteros (INT8) o la cuantización de punto flotante (FP16) para ver cómo afectan los distintos ajustes al rendimiento.

Ejemplo de evaluación comparativa en el mundo real

Veamos un ejemplo real de evaluación comparativa. Al comparar nuestro modelo PyTorch , observamos una velocidad de inferencia de 68 milisegundos en una GPU RTX 3070. Tras exportarlo a TorchScript, la velocidad de inferencia desciende a 4 milisegundos, lo que supone una mejora significativa.

Para los modelos ONNX , alcanzamos una velocidad de inferencia de 21 milisegundos. Al probar estos modelos en una CPU (una Intel i9 de 13ª generación), observamos resultados dispares. TorchScript funciona a 115 milisegundos, mientras que ONNX obtiene mejores resultados con 84 milisegundos. Por último, OpenVINO optimizado para hardware Intel alcanza unos fulgurantes 23 milisegundos.

__wf_reserved_inherit
Fig. 1. Nicolai Nielsen muestra cómo realizar una evaluación comparativa con los modelosYOLO de Ultralytics .

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 de la documentación Ultralytics son potentes herramientas para entrenar, validar, predecir, exportar y comparar sus modelos YOLO . Cada modo desempeña un papel fundamental en la optimización de su modelo y en su preparación para el despliegue.

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