¡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.
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 .
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.
La validación es fundamental para:
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).
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!
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.
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.
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.
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.
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.
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.
Comienza tu viaje con el futuro del aprendizaje automático