Description
Cette quatrième formation de la série « Python pour la Data Science » s’adresse aux personnes qui pratiquent déjà l’apprentissage automatique et souhaitent en approfondir les fondements.
Dans la continuité de la formation « Machine Learning Niveau 1 », qui présentait les grandes familles d’algorithmes, les métriques de performance, la méthodologie de mise en œuvre et la sélection d’hyperparamètres avec scikit-learn, cette formation propose d’entrer dans la structure même des modèles d’apprentissage. Elle met en lumière les principaux constituants d’un algorithme de machine learning — le modèle, la fonction de coût et l’algorithme d’optimisation — en s’appuyant d’abord sur l’exemple des modèles linéaires en régression puis en classification. Elle montre également comment mobiliser les outils de calcul scientifique et d’optimisation de l’écosystème Python, ainsi que le modèle objet de scikit-learn, pour concevoir et intégrer des estimateurs personnalisés de manière réutilisable.
Elle s’applique également à mettre en avant la distinction entre “fonction de coût” et “métrique de performance” notamment dans les projets métier. Elle s’articule autour d’un cas d’usage fil rouge (estimation de prix de véhicule d’occasion).
Intra-entreprise : Sur devis
- Approfondir la compréhension théorique des principaux modèles utilisés en apprentissage automatique
- Comprendre les constituants fondamentaux d’un algorithme de machine learning : modèle, fonction de coût et algorithme d’optimisation
- Savoir implémenter des modèles dédiés en Python
- Connaître les principaux outils de calcul numérique en Python, notamment numpy et scipy
- Comprendre le modèle objet de scikit-learn afin d’y intégrer ses propres modèles
- Profil des bénéficiaires
Profil des béneficiaires
Pour qui
- Les personnes disposant déjà d’une expérience pratique du machine learning, notamment avec scikit-learn, et souhaitant approfondir leur compréhension des algorithmes courants
- Les personnes souhaitant acquérir les bases nécessaires pour mettre en œuvre des algorithmes dédiés (custom) de manière réutilisable
Prérequis
- Connaissance pratique des principaux algorithmes utilisés en apprentissage automatique
- Savoir utiliser scikit-learn
- Avoir suivi la formation « Machine Learning Niveau 1» ou disposer des connaissances équivalentes
- Bonne maîtrise des bases mathématiques en statistiques, en analyse (dérivées, gradients) et en algèbre linéaire (multiplication matrice-vecteur, produit scalaire, etc.)
Contenu de la formation
-
1. Calcul scientifique avec numpy / scipy
- Rappels sur les structures de données numériques utilisées en calcul scientifique
- Manipulation de vecteurs, matrices et tableaux multidimensionnels
- Opérations de calcul numérique utiles pour l’apprentissage automatique
- Premiers repères sur les fonctions scientifiques de base de scipy
-
2. Le modèle objet des estimateurs scikit-learn
- Organisation des estimateurs scikit-learn : régresseurs, classifieurs, transformeurs
- Principes de l’interface scikit-learn : fit, predict, transform, score
- Compréhension des conventions permettant l’intégration dans l’écosystème scikit-learn
- Structuration d’un estimateur personnalisé réutilisable dans un pipeline de travail
-
3. Les modèles linéaires
- Définition des concepts de modèle, fonction de coût et algorithme d’optimisation
- Application des principes précédents au cas de la régression linéaire
- Introduction à la classification linéaire
- Régularisation et contrôle de la complexité du modèle
-
4. Fonction de coût
- Construction pas à pas d’un modèle adapté à un besoin spécifique
- Intégration du modèle dans le cadre d’utilisation de scikit-learn
- Introduction aux principes généraux de l’optimisation numérique
- Utilisation de scipy.optimize pour résoudre des problèmes d’ajustement
- Découverte de bibliothèques permettant le calcul différentiable et l’optimisation, comme jax et torch
-
5. Les arbres de décision et méthodes ensemblistes
- Présentation des principes de base des arbres de décision
- Compréhension des logiques de combinaison de modèles dans les méthodes ensemblistes
- Mise en perspective avec les notions de coût, de modèle et d’optimisation
- Partie abordée en fonction du temps disponible et de l’appétence des stagiaires
-
6. Les méthodes à noyaux (en fonction du temps disponible)
- Introduction à l’astuce du noyau
- Présentation de modèles comme Kernel Ridge, SVR, SVC et processus gaussiens
- Compréhension de l’intérêt des noyaux pour modéliser des relations non linéaires
- Partie abordée en fonction du temps disponible et de l’appétence des stagiaires
Équipe pédagogique
- Exercices d’auto-évaluation
- Formulaire d’évaluation de la formation
Ressources techniques et pédagogiques
- Présentation théorique des principaux algorithmes
- Exercices pratiques pour en comprendre les principales propriétés
- Utilisation des notebooks Jupyter pour intégrer explications théoriques et applications pratiques
-
Capacité d’accueil
12 personnes
Accessibilité
- La formation se déroule en présentiel ou distanciel sur 3 journées (7h chaque jour) : 9h30 à 12h30 et de 13h30 à 17h30. Accessible à toutes les personnes porteuses d’un handicap.