Al hacer clic en “Aceptar todas las cookies”, aceptas el almacenamiento de cookies en tu dispositivo para mejorar la navegación del sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing. Más información
Configuración de cookies
Al hacer clic en “Aceptar todas las cookies”, aceptas el almacenamiento de cookies en tu dispositivo para mejorar la navegación del sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing. Más información
Explore cómo la integración y el registro de MLflow pueden mejorar sus experimentos de Ultralytics YOLO, permitiendo un seguimiento superior para las aplicaciones de visión artificial.
Puede pensar en un proyecto de visión artificial como en un rompecabezas. Esencialmente, se enseña a las máquinas a entender los datos visuales juntando las piezas del rompecabezas, como la recopilación de un conjunto de datos, el entrenamiento de un modelo y su implementación. Cuando todo encaja, se obtiene un sistema que puede analizar y dar sentido a las imágenes y los vídeos de forma eficaz.
Pero, al igual que un rompecabezas real, no todas las partes de un proyecto de visión artificial son sencillas. Tareas como el seguimiento de experimentos (mantener un registro de tu configuración, ajustes y datos) y el registro (capturar resultados y métricas de rendimiento) pueden llevar mucho tiempo y esfuerzo. Si bien estos pasos son clave para mejorar y refinar tus modelos de visión artificial, a veces pueden sentirse como un cuello de botella.
Ahí es donde entran en juego los modelos Ultralytics YOLO y su integración con MLflow. Modelos como Ultralytics YOLO11 admiten una amplia gama de tareas de visión artificial, incluida la detección de objetos, la segmentación de instancias y la clasificación de imágenes. Estas capacidades permiten la creación de emocionantes aplicaciones de visión artificial. Tener la opción de confiar en integraciones como la integración de MLflow permite a los ingenieros de visión centrarse en el modelo en sí, en lugar de quedar atrapados en los detalles.
En particular, la integración de MLflow simplifica el proceso al registrar varias métricas, parámetros y artefactos a lo largo del proceso de entrenamiento. En este artículo, exploraremos cómo funciona la integración de MLflow, sus beneficios y cómo puede utilizarla para agilizar sus flujos de trabajo de Ultralytics YOLO.
¿Qué es MLflow?
MLflow es una plataforma de código abierto (desarrollada por Databricks) diseñada para optimizar y gestionar todo el ciclo de vida del aprendizaje automático. Abarca el proceso de desarrollo, implementación y mantenimiento de modelos de aprendizaje automático.
MLflow incluye los siguientes componentes clave:
Seguimiento de experimentos: Este componente se centra en registrar detalles importantes como la configuración del modelo, los resultados y los archivos de cada ejecución de entrenamiento del modelo. Le ayuda a comparar modelos, ver cómo los cambios afectan al rendimiento y encontrar el mejor.
Registro de modelos: Es como un sistema de almacenamiento para sus modelos, donde puede realizar un seguimiento de las diferentes versiones y organizarlas por etapas como pruebas, staging y producción.
Empaquetado de proyectos: MLflow facilita la agrupación de sus proyectos de aprendizaje automático, incluido el código, la configuración y las herramientas necesarias, para que puedan compartirse y utilizarse de manera coherente entre equipos y entornos.
Implementación del modelo: MLflow proporciona herramientas para implementar rápidamente sus modelos entrenados en lugares como estaciones de trabajo o plataformas en la nube como AWS y Azure, preparándolos para su uso en el mundo real.
Los componentes de MLflow facilitan y hacen más eficiente la gestión del proceso de aprendizaje automático. A través de esta integración, Ultralytics permite utilizar la función de seguimiento de experimentos de MLflow para registrar parámetros, métricas y artefactos durante el entrenamiento de modelos YOLO. Facilita el seguimiento y la comparación de diferentes versiones de modelos YOLO.
La integración de MLflow agiliza el entrenamiento
Ahora que hemos cubierto qué es MLflow, profundicemos en los detalles de la integración de MLflow y las características que ofrece.
La integración de MLflow está diseñada para hacer que el proceso de entrenamiento sea más eficiente y organizado mediante el seguimiento y el registro automático de aspectos importantes de sus experimentos de visión artificial. Facilita tres tipos principales de registro: métricas, parámetros y artefactos.
Aquí tiene un análisis más detallado de cada tipo de registro:
Registro de métricas: Las métricas son valores cuantitativos que miden el rendimiento de su modelo durante el entrenamiento. Por ejemplo, las métricas como la precisión, la exhaustividad o la pérdida se rastrean al final de cada época (un pase completo a través de su conjunto de datos).
Registro de parámetros: Los parámetros son las configuraciones que se definen antes de que comience el entrenamiento del modelo, como la tasa de aprendizaje, el tamaño del lote (el número de muestras procesadas en un paso de entrenamiento) y el número de épocas. Estos parámetros afectan significativamente el comportamiento y el rendimiento de su modelo.
Registro de artefactos: Los artefactos son las salidas o archivos generados durante el entrenamiento. Esto incluye archivos esenciales como los pesos del modelo (los valores numéricos que su modelo aprende durante el entrenamiento), los archivos de configuración (que almacenan la configuración del entrenamiento) y otros datos relevantes.
Fig. 2. Características clave de registro de la integración de MLflow. Imagen del autor.
Cómo funciona la integración de MLflow
Puede consultar la documentación de Ultralytics para obtener instrucciones paso a paso sobre cómo habilitar la integración de MLflow. Una vez configurada, la integración rastrea y registra automáticamente los detalles clave de sus experimentos de entrenamiento, como se ha comentado anteriormente. Esto elimina la necesidad de un seguimiento manual y le ayuda a mantenerse centrado en el perfeccionamiento de sus modelos.
Con la integración de MLflow, todas tus ejecuciones de entrenamiento se almacenan en un solo lugar, lo que facilita la comparación de resultados y la evaluación de diferentes configuraciones. Al comparar los resultados registrados, puedes identificar las configuraciones con mejor rendimiento y utilizar esos conocimientos para mejorar tus modelos. Esto garantiza que tu flujo de trabajo sea más eficiente, esté bien documentado y sea reproducible.
Específicamente, cada sesión de entrenamiento se organiza en un experimento, que actúa como un contenedor para múltiples ejecuciones. Dentro de un experimento, puede ver todas las ejecuciones asociadas, comparar su rendimiento en paralelo y analizar las tendencias entre diferentes configuraciones.
Por ejemplo, si está probando varias tasas de aprendizaje o tamaños de lote con Ultralytics YOLOv8, todas las ejecuciones relacionadas se agrupan bajo el mismo experimento para facilitar la comparación y el análisis, como se muestra a continuación.
Fig. 3. Puede ver los experimentos utilizando la integración de MLflow.
Mientras tanto, a nivel de ejecución individual, MLflow proporciona información detallada sobre la sesión de entrenamiento específica. Puede ver métricas como la precisión, la pérdida y la exactitud a lo largo de las épocas, comprobar los parámetros de entrenamiento utilizados (por ejemplo, el tamaño del lote y la tasa de aprendizaje) y acceder a artefactos generados como los pesos del modelo y los archivos de configuración. Estos detalles se almacenan en un formato organizado, lo que facilita la revisión o la reproducción de cualquier ejecución.
Elegir la integración de MLflow: por qué destaca
A medida que revisa la documentación de Ultralytics y explora las integraciones disponibles, es posible que se pregunte: ¿Qué distingue a la integración de MLflow y por qué debería elegirla para mi flujo de trabajo?
Con integraciones como TensorBoard que también proporcionan herramientas para rastrear métricas y visualizar resultados, es importante comprender las cualidades únicas que hacen que la integración de MLflow destaque.
Aquí te mostramos por qué MLflow podría ser la opción ideal para tus proyectos YOLO:
Interfaz fácil de usar: El panel de control de MLflow facilita la visualización de experimentos, la comparación de ejecuciones y el análisis de resultados, lo que le ayuda a identificar rápidamente las configuraciones de mejor rendimiento.
Registro de métricas personalizadas: Los ingenieros de visión pueden registrar métricas personalizadas además de las estándar, lo que permite un análisis más profundo específico para las necesidades de su proyecto.
Soporte para flujos de trabajo multilingües: MLflow es compatible con múltiples lenguajes de programación, incluyendo Python, R y Java, facilitando la integración en diversas pipelines de machine learning.
Aplicaciones prácticas de YOLO11 y la integración de MLflow
Para obtener una comprensión más completa de cuándo puede utilizar la integración de MLflow, consideremos una aplicación de IA en la atención médica donde necesita entrenar YOLO11 para detectar tumores en imágenes de rayos X o tomografías computarizadas.
En tal escenario, el conjunto de datos consistiría en imágenes médicas anotadas. Tendría que experimentar con varias configuraciones, como ajustar las tasas de aprendizaje, los tamaños de lote y las técnicas de preprocesamiento de imágenes, para lograr una precisión óptima. Dado que hay mucho en juego en la atención médica y la precisión y la fiabilidad son fundamentales, el seguimiento manual de cada experimento puede volverse rápidamente inmanejable.
Fig 4. Detección de tumores usando Ultralytics YOLO11.
La integración de MLflow aborda este desafío registrando automáticamente los parámetros, las métricas y los artefactos de cada experimento. Por ejemplo, si modifica la tasa de aprendizaje o aplica una nueva estrategia de aumento de datos, MLflow registra estos cambios junto con las métricas de rendimiento. Además, MLflow guarda las configuraciones y los pesos del modelo entrenado, lo que garantiza que los modelos exitosos puedan reproducirse y desplegarse fácilmente.
Este es solo un ejemplo de cómo la integración de MLflow mejora la gestión de experimentos en aplicaciones de Visión Artificial. Las mismas características se aplican a otras aplicaciones de visión artificial, incluyendo:
Conducción autónoma: YOLO11 puede utilizarse para detectar y clasificar peatones, vehículos y señales de tráfico en tiempo real para mejorar la seguridad y la eficiencia de los sistemas de conducción autónoma.
Análisis minorista: Los modelos de detección de objetos pueden supervisar el comportamiento de los clientes, rastrear la ubicación de los productos y optimizar el inventario analizando la actividad en la tienda a través de transmisiones de video.
Seguridad y vigilancia: Los modelos se pueden entrenar para detectar anomalías o supervisar la actividad en tiempo real en áreas sensibles para aumentar la seguridad.
Ventajas de la integración de MLflow
La integración de MLflow con los modelos YOLO facilita y hace más eficiente la gestión de experimentos de aprendizaje automático. Al automatizar las tareas clave y mantener todo organizado, le permite centrarse en la construcción y mejora de sus modelos. Aquí hay un vistazo a los beneficios clave:
Escala para grandes proyectos: La plataforma gestiona múltiples experimentos y modelos de manera eficiente, lo que la hace adecuada para equipos más grandes y flujos de trabajo complejos.
Historial detallado de experimentos: La plataforma mantiene un historial completo de los experimentos, lo que te permite volver a visitar ejecuciones pasadas, analizar configuraciones anteriores y aprender de los resultados anteriores.
Desactivación y restablecimiento de opciones: El registro de MLflow se puede desactivar fácilmente cuando no es necesario, y la configuración se puede restablecer a los valores predeterminados, lo que ofrece flexibilidad para adaptarse a los diferentes requisitos del flujo de trabajo.
Conclusiones clave
La integración de MLflow facilita y hace más eficiente la gestión y optimización de los experimentos de Ultralytics YOLO. Al realizar un seguimiento automático de los detalles clave, como los parámetros, las métricas y los artefactos, simplifica el proceso y elimina la molestia de la gestión manual de experimentos.
Ya sea que estés trabajando en soluciones de atención médica como la detección de tumores, mejorando los sistemas de conducción autónoma o mejorando el análisis minorista, esta integración ayuda a mantener todo organizado y reproducible. Con su interfaz intuitiva y flexibilidad, MLflow permite a los desarrolladores centrarse en la creación de mejores modelos e impulsar la innovación en las aplicaciones de Vision AI.