Devenez opérationnel

Machine Learning distribué avec Spark ML

Ce module permet aux participants de concevoir, entraîner, évaluer, optimiser et déployer des modèles de Machine Learning dans un environnement distribué avec Apache Spark MLlib. Il s’adresse à des professionnels de la donnée amenés à traiter des volumes importants de données, à industrialiser des traitements de Machine Learning ou à intégrer des modèles prédictifs dans des environnements Big Data. La formation vise une montée en compétence opérationnelle : les participants manipulent Spark MLlib, construisent des pipelines de Machine Learning, évaluent les performances des modèles, optimisent les traitements distribués et apprennent à sauvegarder puis réutiliser un modèle entraîné. L’approche pédagogique alterne apports techniques, démonstrations, exercices guidés, travaux pratiques et cas de synthèse.
Utiliser l’IA générative pour automatiser et sécuriser les tâches de gestion administrative et de communication professionnelle

Objectifs de la formation

  • Développer des modèles ML distribués.
  • Optimiser les performances de calcul.
  • Préparer et transformer des données pour ML.
  • Évaluer et déployer les modèles.

Public

  • Data engineers
  • Data scientists

Prérequis

  • Connaissances en Python/Scala, Spark et ML

Contenu de la formation

Comprendre les enjeux du Machine Learning distribué

  • Identifier les cas d’usage nécessitant une approche distribuée.
  • Comprendre le rôle d’Apache Spark dans le traitement de données massives.
  • Situer Spark MLlib dans l’écosystème Big Data et Machine Learning.
  • Rappel des principes fondamentaux du Machine Learning.
  • Limites des traitements de Machine Learning classiques sur poste local.
  • Enjeux du calcul distribué : volumétrie, parallélisation, scalabilité, robustesse.
  • Positionnement d’Apache Spark dans l’écosystème Big Data.
  • Architecture générale de Spark : driver, executors, cluster manager.
  • Différences entre Spark Core, Spark SQL, DataFrames et Spark MLlib.
  • Cas d’usage : scoring à grande échelle, segmentation client, prédiction, détection d’anomalies, recommandation.
  • Prise en main de l’environnement de travail.
  • Chargement d’un premier jeu de données.
  • Identification des traitements qui peuvent bénéficier d’une approche distribuée.

Charger, explorer et contrôler les données avec Spark

  • Charger des données dans Spark.
  • Explorer un jeu de données avec les DataFrames.
  • Identifier les premiers traitements nécessaires avant la modélisation.
  • Chargement de fichiers structurés.
  • Manipulation des DataFrames Spark.
  • Inspection des schémas de données.
  • Contrôle des types de variables.
  • Analyse descriptive simple.
  • Détection des valeurs manquantes.
  • Repérage des valeurs incohérentes ou atypiques.
  • Premières transformations avec Spark SQL et DataFrame API.
  • Charger un dataset.
  • Afficher et interpréter son schéma.
  • Calculer des statistiques descriptives.
  • Identifier les colonnes exploitables pour un modèle ML.
  • Repérer les traitements de préparation nécessaires.

Préparer et transformer les données pour le Machine Learning

  • Préparer des données exploitables par Spark MLlib.
  • Transformer les variables numériques et catégorielles.
  • Construire les premières étapes d’un pipeline de préparation.
  • Nettoyage des données.
  • Gestion des valeurs manquantes.
  • Sélection des variables.
  • Encodage des variables catégorielles.
  • Indexation des labels.
  • Normalisation et standardisation.
  • Assemblage des variables avec VectorAssembler.
  • Constitution des jeux d’entraînement et de test.
  • Bonnes pratiques de reproductibilité.
  • Transformer un jeu de données brut en jeu de données exploitable pour l’apprentissage automatique.
  • Créer les colonnes de variables explicatives.
  • Séparer les données en jeu d’entraînement et jeu de test.
  • Préparer les données pour un modèle de classification ou de régression.

Construire un premier modèle supervisé avec Spark MLlib

  • Entraîner un modèle supervisé avec Spark MLlib.
  • Comprendre les principaux paramètres d’entraînement.
  • Interpréter les premiers résultats obtenus.
  • Rappel sur les modèles supervisés.
  • Classification et régression dans Spark MLlib.
  • Choix d’un algorithme adapté au cas d’usage.
  • Entraînement d’un modèle distribué.
  • Paramétrage de base.
  • Génération de prédictions.
  • Premiers indicateurs de performance.
  • Limites d’un premier modèle et points de vigilance.
  • Entraîner un modèle supervisé sur un dataset préparé.
  • Générer des prédictions.
  • Comparer les prédictions aux valeurs réelles.
  • Identifier les limites d’un premier modèle.

Construire des pipelines de Machine Learning avec Spark

  • Structurer un traitement ML complet sous forme de pipeline.
  • Chaîner préparation, transformation, entraînement et prédiction.
  • Rendre le processus reproductible.
  • Logique des pipelines Spark ML.
  • Notions de Transformer et Estimator.
  • Chaînage des étapes de transformation.
  • Intégration d’un algorithme dans un pipeline.
  • Entraînement du pipeline complet.
  • Sauvegarde et rechargement d’un pipeline.
  • Bonnes pratiques de structuration.
  • Construire un pipeline Spark ML complet.
  • Intégrer les étapes de préparation des données.
  • Ajouter l’algorithme d’apprentissage.
  • Entraîner le pipeline.
  • Réutiliser le pipeline sur un jeu de test.

Évaluer et comparer les modèles

  • Choisir les métriques adaptées selon le type de problème.
  • Évaluer la qualité d’un modèle.
  • Comparer plusieurs modèles ou configurations.
  • Évaluation des modèles de classification.
  • Évaluation des modèles de régression.
  • Matrice de confusion.
  • Précision, rappel, F1-score, AUC.
  • Erreur quadratique moyenne.
  • Erreur absolue moyenne.
  • Coefficient de détermination.
  • Validation croisée.
  • Comparaison de modèles.
  • Lecture critique des résultats.
  • Risques de surapprentissage et de sous-apprentissage.
  • Évaluer un modèle de classification ou de régression.
  • Comparer deux modèles à partir de métriques.
  • Identifier le modèle le plus adapté à un contexte métier.
  • Argumenter le choix d’un modèle à partir des résultats obtenus.

Optimiser les performances de calcul

  • Comprendre les facteurs qui influencent les performances d’un traitement Spark.
  • Diagnostiquer les principaux goulots d’étranglement.
  • Appliquer des bonnes pratiques d’optimisation.
  • Principes de parallélisation dans Spark.
  • Partitionnement des données.
  • Cache et persistance.
  • Réduction des transformations coûteuses.
  • Optimisation des lectures et écritures.
  • Lecture d’un plan d’exécution.
  • Gestion des ressources.
  • Bonnes pratiques pour les traitements Spark ML.
  • Erreurs fréquentes dans les traitements distribués.
  • Diagnostiquer un pipeline Spark peu performant.
  • Identifier les transformations coûteuses.
  • Appliquer des optimisations simples.
  • Comparer les temps d’exécution.
  • Documenter les choix d’optimisation.

Sauvegarder, réutiliser et déployer un modèle Spark ML

  • Sauvegarder un modèle entraîné.
  • Réutiliser un modèle sur de nouvelles données.
  • Comprendre les principes de déploiement d’un modèle ML distribué.
  • Sauvegarde d’un pipeline Spark ML.
  • Sauvegarde d’un modèle entraîné.
  • Rechargement du modèle.
  • Application du modèle à de nouvelles données.
  • Batch scoring.
  • Intégration dans une chaîne de traitement.
  • Introduction au monitoring des modèles.
  • Dérive des données.
  • Dérive du modèle.
  • Articulation possible avec une démarche MLOps.
  • Sauvegarder un pipeline ou un modèle Spark ML.
  • Recharger le modèle.
  • Réaliser un scoring sur de nouvelles données.
  • Identifier les contrôles à mettre en place avant mise en production.

Cas pratique de synthèse

  • Mobiliser l’ensemble des acquis de la formation.
  • Construire un traitement ML distribué complet.
  • Présenter et justifier les choix techniques réalisés.
  • Cadrage du problème ML.
  • Préparation des données.
  • Construction du pipeline.
  • Entraînement du modèle.
  • Évaluation.
  • Optimisation.
  • Sauvegarde et réutilisation.
  • Restitution des résultats.
  • charger un dataset
  • analyser sa structure
  • préparer les données
  • construire un pipeline Spark ML
  • entraîner un modèle distribué
  • évaluer les résultats
  • optimiser certains traitements
  • sauvegarder le modèle
  • présenter les choix réalisés

Equipe pédagogique

Le formateur mobilisé pour ce module dispose d’une expertise confirmée en data science, Machine Learning distribué et environnement Spark.

Référent pédagogique et technique
Haciba, responsable pédagogique, est à votre disposition pour toute question relative au contenu, aux objectifs ou à l’organisation de la formation. Vous pouvez la joindre par téléphone au 01 53 90 15 20 ou par mail : esic(@)esic-online.com.  Nous encourageons les apprenants à prendre contact pour toute précision ou pour discuter d’éventuels besoins spécifiques liés à leur parcours.

Suivi de l'exécution et évaluation des résultats

Dispositions spécifiques à cette formation

  • Questions de validation sur les étapes de préparation des données.
  • Vérification du pipeline de préparation réalisé par les participants.
  • Interprétation d’un tableau de métriques.
  • Questionnement oral ou écrit sur le choix d’un modèle.
  • Le cas pratique de synthèse permet de vérifier la capacité du participant à développer et déployer un modèle ML distribué en cohérence avec les objectifs pédagogiques du module.

Dispositions relatives à l’ensemble des formations

Nous mettons en place un suivi rigoureux et une évaluation complète des résultats pour garantir la qualité et l’efficacité de nos formations.

  • Avant la formation:
    • Entretien individuel ou questionnaire de positionnement: Permet d’analyser les besoins spécifiques des participants et d’ajuster les contenus pédagogiques en conséquence.
  • Pendant la formation:
    • Exercices pratiques et mises en situation: Ces activités sont intégrées tout au long de la formation pour valider les acquis en temps réel.
    • Feuilles de présence: Chaque participant émarge une feuille de présence par demi-journée, également signée par le formateur, assurant le suivi administratif.
  • Après la formation:
    • Questionnaire de satisfaction à chaud: Administré immédiatement après la formation pour recueillir un retour sur la qualité des contenus et de l’animation.
    • Questionnaire de satisfaction à froid: Envoyé trois mois après la formation pour évaluer l’impact réel sur les pratiques professionnelles.
    • Questionnaire d’auto-évaluation possible: Permet aux participants de mesurer leurs progrès à l’issue de la formation.
    • Certification(optionnelle) : Passage de la certification en conditions d’examen ou via télésurveillance, selon le dispositif retenu.
    • Certificat de réalisation: Remis à l’issue de la formation, attestant de la participation effective des apprenants.

 

Nous veillons à accompagner les participants avant, pendant et après la formation pour maximiser leur progression et mesurer les retombées concrètes dans leur environnement professionnel.

Ressources techniques et pédagogiques

  • support pédagogique numérique
  • environnement Spark configuré pour les travaux pratiques
  • notebooks ou scripts d’exercices
  • jeux de données d’entraînement
  • exemples de pipelines Spark ML
  • fiches de synthèse sur les métriques d’évaluation
  • fiche de bonnes pratiques d’optimisation Spark
  • corrigés ou éléments de correction
  • ressources complémentaires pour approfondissement
  • le support pédagogique du module
  • les jeux de données utilisés pendant la formation
  • les notebooks ou scripts de démonstration
  • les exercices pratiques
  • les éléments de correction
  • une fiche mémo sur les principales métriques d’évaluation
  • une fiche de bonnes pratiques pour l’optimisation Spark
  • les modèles de pipelines Spark ML utilisés en formation
  • une bibliographie ou sitographie indicative pour approfondissement

Accessibilité

Nous accordons une attention particulière à l’accueil des personnes en situation de handicap. Si vous êtes concerné(e) et souhaitez suivre cette formation, nous vous invitons à nous contacter dès que possible. Ensemble, nous étudierons vos besoins spécifiques et mettrons en place les adaptations nécessaires pour garantir votre accès à la formation dans les meilleures conditions.

Délai d'accès

L’inscription à cette formation est possible dans un délai de 2 semaines avant le début de la session. Ce délai permet de finaliser les démarches administratives, de confirmer la prise en charge éventuelle des frais de formation et d’assurer une préparation optimale des participants.

Pour toute demande spécifique ou situation particulière, nous vous invitons à nous contacter afin d’étudier ensemble les possibilités d’adaptation.

Prérequis technique

Pour suivre cette formation dans de bonnes conditions, les moyens techniques suivants sont requis :

  • En présentiel:
    • Tableau blanc ou paperboard, et un vidéoprojecteur pour les présentations.
    • Outils pour le partage de documents avec les formateurs et autres participants.
  • À distance:
    • Un logiciel de visioconférencecompatible (Teams, Zoom ou équivalent) pour participer aux sessions en ligne.
    • Possibilité de partage d’écran entre le formateur et les participants.
    • Accès à une plateforme pour le partage des documents pédagogiques et supports de formation.
    • Connexion internet haut débit pour garantir une expérience fluide et interactive.

 

Nous vous recommandons de vérifier la disponibilité et la fonctionnalité de ces moyens techniques avant le début de la formation. En cas de difficulté, n’hésitez pas à nous contacter pour trouver une solution adaptée.

Actualisation du programme