X
Ultralytics YOLOv8.2 LiberaciónUltralytics YOLOv8.2 Liberar el móvilUltralytics YOLOv8.2 Flecha de liberación
Cheque verde
Enlace copiado en el portapapeles

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

¡Aprende a entrenar, validar, predecir, exportar y comparar con Ultralytics YOLO Models!

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

En ladocumentación de Ultralytics encontrarás varios modos que puedes utilizar para tus modelos, ya sea para entrenar, validar, predecir, exportar, comparar o seguir. Cada uno de estos modos tiene una finalidad única y te ayuda a optimizar el rendimiento y el despliegue de tu modelo.

Modo Tren

En primer lugar, veamos el modo tren. Aquí es donde construyes y perfeccionas tu modelo. En la documentación encontrarás instrucciones detalladas y guías en vídeo, que te facilitarán empezar a entrenar tus modelos personalizados.

El entrenamiento de un modelo consiste en proporcionarle un nuevo conjunto de datos, para que aprenda varios patrones. Una vez entrenado, el modelo puede utilizarse en tiempo real para detectar nuevos objetos sobre los que ha sido entrenado. Antes de iniciar el proceso de entrenamiento, es esencial anotar tu conjunto de datos en formato YOLO .

Modo Validar

A continuación, vamos a sumergirnos en el modo de validación. La validación es esencial para ajustar los hiperparámetros y asegurarte de que tu modelo funciona bien. Ultralytics ofrece diversas opciones de validación, como ajustes automáticos, compatibilidad multimétrica y compatibilidad con la API Python . Incluso puedes ejecutar la validación directamente a través de la interfaz de línea de comandos (CLI) con el comando que aparece a continuación.


yolo detect val model=yolov8n.pt # val official model

¿Por qué validar?

La validación es fundamental para:

  • Precisión: Garantizar que tu modelo detecta los objetos con precisión.
  • Comodidad: Agilización del proceso de validación.
  • Flexibilidad: Ofreciendo múltiples métodos de validación.
  • Ajuste de hiperparámetros: Optimizar tu modelo para un mejor rendimiento.

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

Modo Predecir

Una vez que tu modelo esté entrenado y validado, es hora de hacer predicciones. El modo Predecir 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 sobre datos del mundo real.

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


from ultralytics import YOLO

# Load a pretrained YOLOv8n model
model = YOLO("yolov8n.pt")

# Run inference on 'bus.jpg' with arguments
model.predict("bus.jpg", save=True, imgsz=320, conf=0.5)

Modo exportación

Después de validar y predecir, puede que quieras desplegar tu modelo. El modo de exportación te permite convertir tu modelo en varios formatos, como ONNX o TensorRT, facilitando su despliegue en distintas plataformas.

Modo Benchmark

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

Cómo hacer una evaluación comparativa

Para ejecutar una prueba comparativa, puedes 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 puedes especificar parámetros como la cuantización de enteros (INT8) o la cuantización de punto flotante (FP16) para ver cómo afectan los diferentes ajustes al rendimiento.

Ejemplo de evaluación comparativa en el mundo real

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

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

Fig. 1. Nicolai Nielsen demostrando cómo realizar pruebas comparativas con Ultralytics YOLO Models.

La importancia de la evaluación comparativa

La evaluación comparativa demuestra cómo los diferentes formatos de hardware y exportación pueden afectar al rendimiento de tu modelo. Es crucial realizar una evaluación comparativa de tus modelos, especialmente si planeas desplegarlos en hardware personalizado o en dispositivos de borde. Este proceso garantiza que tu modelo esté optimizado para el entorno de destino, proporcionando el mejor rendimiento posible.

Conclusión

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

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

Logotipo de FacebookLogotipo de TwitterLogotipo de LinkedInSímbolo de enlace de copia

Leer más en esta categoría

¡Construyamos juntos el futuro
de la IA!

Comienza tu viaje con el futuro del aprendizaje automático