🚀 MLflow: Suivi et Reproductibilité d’Entraînements dans MARBEC-GPU (via Jupyter Proxy)
Cette section explique comment utiliser MLflow pour enregistrer et visualiser la performance de vos modèles lorsque vous travaillez sur un serveur distant JupyterLab sans accès SSH direct, comme c’est le cas de MARBEC-GPU. Nous allons utiliser le serveur Jupyter comme un proxy pour rendre l’interface web de MLflow accessible dans votre navigateur local.
Est une plateforme open source conçue pour gérer l’intégralité du cycle de vie du Machine Learning (ML), englobant l’entraînement, la reproductibilité et le déploiement. Il vous permet de suivre et de comparer les paramètres, les métriques et les modèles générés par vos différents entraînements.
Pour toute information sur l’implémentation de MLflow vous pouvez vous référer à la 🔗 Documentation Officielle de MLflow
1. Prérequis et Configuration ⚙️
Avant de commencer, assurez-vous que les dépendances suivantes sont installées sur Marbec-GPU JupyrerLab :
MLflow Installé : Vous devez avoir
mlflowinstallé dans votre environnement Python.pip install mlflowProxy Jupyter Installé : Il est essentiel d’installer l’extension qui permet à Jupyter d’agir comme un proxy pour d’autres services web :
pip install jupyter-server-proxy
Votre code doit être configuré pour enregistrer les données d’exécution (run) en utilisant un dossier local (dans cet exemple, runs/mlflow).
2. Démarrage du Serveur MLflow 🚀
Le serveur MLflow doit être démarré sur le serveur distant, en écoutant uniquement sur l’adresse locale (127.0.0.1).
Ouvrez un terminal dans JupyterLab et placez-vous dans le répertoire principal de votre projet (celui qui contient votre dossier runs). Exécutez ensuite cette commande :
mlflow server --backend-store-uri runs/mlflow --host 127.0.0.1 --port 5000
3. Accès à l’Interface Web (Proxy) 🌐
Tant que le serveur MLflow est en cours d’exécution sur le serveur distant, vous pouvez accéder à son interface web depuis votre navigateur local en utilisant l’URL de votre session JupyterLab et en ajoutant le chemin du proxy.
Si l’URL que vous utilisez pour accéder à votre JupyterLab est :
https://[Serveur_Distant]/user/[Votre_Utilisateur]/labL’URL pour MLflow sera :
https://[Serveur_Distant]/user/[Votre_Utilisateur]/proxy/5000/L’URL pour accéder au serveur MLflow est :
https://marbec-gpu.ird.fr/user/crestrepo/proxy/5000/Ouvrez l’URL MLflow dans votre navigateur habituel. Vous serez automatiquement redirigé vers le tableau de bord des expériences MLflow, où vous pourrez visualiser et suivre toutes vos exécutions et sessions d’entraînement.
