Tracking de Experimentos con MLflow y Bucket en SQLite
Clase 6 de 35 • Curso de MLOPS: Despliegue de Modelos de Machine Learning
Resumen
¿Cómo hacer tracking con MLflow utilizando un bucket?
Hoy te llevaré de la mano en el emocionante proceso de hacer tracking con MLflow, pero esta vez utilizando un bucket. Si ya te sientes cómodo con el flujo anterior de MLflow, prepárate, porque nos adentraremos en una metodología que ofrece nuevas posibilidades para gestionar y compartir tus experimentos de Machine Learning.
¿Cómo integrar SQLite en tu proyecto de MLflow?
El flujo comienza con la ejecución de tu código de Machine Learning como de costumbre, haciendo uso del tracking de MLflow. La diferencia clave ahora es que, si bien los artefactos aún se almacenan en la carpeta MLruns
, todo lo demás, es decir, las entidades, serán almacenadas en una base de datos compatible con SQLite. Este método optimiza la gestión de información al utilizar un bucket.
- Modificación de
setTrackingUri
: Necesitamos especificar que se hará uso de un bucket asociado con SQLite. - Configuración de
setExperiment
: Atribuir un nombre único al experimento. En este caso, puedes nombrarlo "experiment bucket" o cualquier nombre que prefieras.
Una vez ejecutado, se creará automáticamente el archivo bucket.db
, que actúa como nuestra base de datos. Esto es esencial para almacenar tus experimentos dependiendo de los parámetros que rastrees, como métricas e hiperparámetros. Ahora, cada vez que ejecutes un run, la información quedará registrada en este bucket.
¿Cómo configurar el entorno y ejecutar el tracking?
Para llevar a cabo el proceso con precisión, te proporciono un tutorial paso a paso en el notebook. Este incluye un comando especial que deberás copiar y pegar para notificar al UI de MLflow la utilización de nuestro bucket sort-uri
, especificando su ubicación.
- Posición de trabajo precisa: Asegúrate de estar posicionado en el directorio correcto donde se encuentran tus archivos de tracking.
- Activación del entorno adecuado: Verifica que tu entorno de desarrollo esté activado y en el mismo nivel de la carpeta de trabajo.
- Uso del comando en la terminal: Pega el comando en la terminal y ejecútalo.
Una vez que ejecutes el comando, al igual que en ocasiones anteriores, MLflow te proporcionará una dirección IP con un puerto. Este lo pegarás en tu navegador favorito para acceder al dashboard de MLflow.
¿Qué información se puede trackear en MLflow?
Dentro del UI de MLflow, te permitirá visualizar todas las especificaciones y detalles de tus experimentos:
-
Parámetros e hiperparámetros: Entiende cómo afectan al modelo y optimiza mejor tus resultados.
-
Métricas: Registra resultados clave del desempeño de tu modelo.
-
Requisitos del entorno: Documenta las configuraciones necesarias para replicar el experimento.
-
Modelos generados: Almacena y accede fácilmente a los modelos creados durante los experimentos.
Esto es fundamental para reflexionar sobre cómo la información se gestiona y optimiza, especialmente cuando se buscan métodos para colaborar con un equipo o almacenar información de manera accesible. Sin embargo, es vital tener en cuenta que gestionar los experimentos localmente puede ser una limitante si deseas compartir el proyecto.
Este enfoque exige apertura y flexibilidad, y desde aquí, se construye el camino hacia el futuro del aprendizaje automático colaborativo y eficiente. Estoy convencido de que estos conocimientos te ofrecerán las herramientas necesarias para avanzar con determinación en tus proyectos de Machine Learning. ¡Adelante!