Jour 1
Fondamentaux
- Qu’est-ce qu’une donnée ?
- Cycle de vie d’une donnée
- Cycle de vie de la Data Science
- Evolution des analytiques
- Apports des analytiques et du Cloud
- Qu’est-ce qu’une organisation Data Driven ?
- Business Intelligence vs Business Analytics
- Du Data Warehouse au Data Lake et au Lakehouse
- Gouvernance et qualité des données
- Lean, Agilité et DevOps, MLOps appliqués aux données
- Conteneurisation et architectures micro-services
- Apports de MLOps
- Workflow de MLOps
- DevOps vs DataOps vs MLOps
- Machine Learning et opérations : briser le mur de la confusion
- Constituer et former une équipe MLOps
- Plateformes et outils de MLOps
- Qu’est-ce que MLflow ?
Exemples de travaux pratiques (à titre indicatif)
- Développer et déployer un premier modèle avec MLflow
Démarrer avec MLflow
- MLflow Projects
- MLflow Tracking
- MLflow Models
- MLflow Model Registry
Exemple de travaux pratiques (à titre indicatif)
- Création d’un premier pipeline avec MLflow
Jour 2
Développement de modèles et expérimentations
- Définir l’expérimentation : explorer le jeu de données
- Ajouter des expérimentations : étapes pour concevoir un classificateur logistique
- Comparer différents modèles
- Affiner le modèle en optimisant les hyperparamètres
- Gérer les signatures et schémas des modèles
- Ajouter le meilleur modèle au Model Registry
- Gérer le cycle de vie de développement du modèle
Exemple de travaux pratiques (à titre indicatif)
- Amélioration du pipeline précédent en optimisant les hyperparamètres et en retenant le meilleur modèle pour le déploiement
Le Machine Learning en production
- Comprendre les challenges des systèmes et projets de ML
- Plateformes de ML : Michelangelo, Kubeflow
- Spécifier l’architecture d’une plateforme de ML
- Architecture des systèmes de haut niveau
- MLflow et les autres outils de l’écosystème
Exemple de travaux pratiques (à titre indicatif)
- Etude de cas de dimensionnement d’une infrastructure de ML comprenant un serveur MLflow
Jour 3
Préparer les données et entraîner le modèle
- Structurer le pipeline de données du projet
- Standardiser le code et l’environnement avec MLflow Projects
- Développer des pipelines reproductibles et testables avec les Recipes
- Sourcer les données
- Vérifier la qualité des données
- Générer l’ensemble des attributs et des données d’apprentissage
- Exécuter le pipeline de bout-à-bout
- Utiliser les feature stores
- Implémenter le job d’apprentissage
- Evaluer le modèle
- Déployer le modèle dans le Model Registry
- Créer une image Docker pour le job d’apprentissage
- Déployer l’image Docker
Exemple de travaux pratiques (à titre indicatif)
- Implémentation de MLflow Projects pour standardiser le code et l’environnement
Jour 4
Déploiement et inférence avec MLflow
- Créer un Model Registry local
- Créer un job batch d’inférence
- Utiliser l’API pour l’inférence
- Déployer les modèles pour du scoring batch dans Kubernetes
- Rappels sur les environnements Cloud et présentation de AWS Sagemaker
Exemple de travaux pratiques (à titre indicatif)
- Réaliser un déploiement sur le Cloud avec AWS SageMaker
Mettre à niveau le workflow de ML
- Intégrer MLflow avec TensorFlow et PyTorch
- Intégrer MLflow avec Spark
- Intégrer MLflow avec NVIDIA RAPIDS (GPU)
- Suivre la performance des modèles en production
- Monitoring du Data Drift, du Model Drift et du Target Drift
- Monitoring et alertes de l’infrastructure
Exemple de travaux pratiques (à titre indicatif)
- Développer un pipeline avec déploiement sur AWS SageMaker
Jour 5
Cas d’usage avancés de MLflow
- Introduction au Deep Learning efficace
- Optimiser l’empreinte des modèles (CPU, RAM, stockage) avec MLflow et Optuna
- Serving de plusieurs modèles via un seul point de terminaison avec MLflow et PyFunc
- Détection du Data Drift et du Feature Drift avec MLflow et Evidently
- IA responsable : suivre l’interprétabilité et l’explicabilité des modèles avec MLflow, SHAP, LIME et InterpretML
Exemple de travaux pratiques (à titre indicatif)
- Mise en pratique avec MLflow, Optuna, PyFunc, Evidently et InterpretML
Le contenu de ce programme peut faire l’objet d’adaptation selon les niveaux, prérequis et besoins des apprenants.

