Machine Learning avec Python
- Durée
- Durée :4 jours
- Niveau
- Niveau :Intermédiaire
- Certification
- Certification :Non
Qu’est-ce que le calcul distribué avec Python ?
Le calcul distribué permet de répartir les traitements lourds sur plusieurs cœurs, machines ou nœuds cloud. Python, grâce à ses bibliothèques modernes (NumPy, Dask, Ray, Airflow…), offre des solutions puissantes pour paralléliser et distribuer des workloads intensifs.
Pourquoi suivre une formation Python, calcul distribué ?
Cette formation répond aux besoins croissants d’optimisation des performances dans les environnements de data science et d’ingénierie logicielle. Elle permet d’apprendre à exploiter efficacement les capacités multicœurs, GPU et Cloud pour exécuter des tâches massives, tout en améliorant la scalabilité et la reproductibilité des pipelines de données.
Objectif opérationnel :
Savoir concevoir, optimiser et exécuter des traitements parallèles et distribués en Python, localement et dans le Cloud
Objectif pédagogiques :
À l'issue de cette formation Python, calcul distribué, vous aurez acquis les connaissances nécessaires pour :
Typologie des workloads :
- CPU-bound
- I/O-bound
- GPU-bound
Scalabilité :
- vertical vs horizontal
- concepts MIMD / SIMD (vision simplifiée)
Modèle d’exécution Python :
- GIL et conséquences sur le parallélisme.
Évolution du langage
- vers un Python no-GIL.
Programmation asynchrone :
- générateurs
- coroutines
- asyncio.
Multithreading :
- accès concurrents
- verrous
- contention et limites liées au GIL
Multiprocessing :
- processus indépendants
- pools de processus
- sérialisation
Profilage CPU :
- cProfile
- line_profiler
- py-spy
Environnements reproductibles :
- création et gestion via uv
NumPy avancé :
- vectorisation, broadcasting
- élimination des boucles Python
Polars :
moteur multithread Rust
- exécution lazy
- optimisation automatique
Formats colonnes :
- Parquet et Arrow pour le traitement massif.
Compilation JIT Numba :
- mode nopython
- boucles parallèles
- limitations
Accélération GPU :
- kernels Numba CUDA
- blocs/threads
Dask : DataFrame, Bag, Delayed ; scheduler distribué ; tableau de bord.
Dask : gestion des workers, spill-to-disk, shuffle et optimisations.
Ray : tasks, actors, parallélisme dynamique, patterns map/reduce.
Ray : gestion d’état, autoscaling local, debugging distribué.
Airflow : concepts de base — DAG, Operators, Scheduler.
Airflow : orchestration de workflows Python distribués.
Airflow : déclenchement de jobs Dask ou Ray.
Conteneurisation pour workloads calculatoires : Docker multi-stage + uv.
GKE Autopilot : déploiement d’un cluster Dask/Ray sans gestion de noeuds.
Cloud Run Jobs :
- exécution de conteneurs batch
- montée en charge automatique
Cloud Batch :
- exécutions massives CPU/GPU
- parallélisation simple sans orchestration manuelle
Google Cloud Storage :
- stockage Parquet/Arrow
- lecture distribuée
- partitionnement
Monitoring :
- logs job
- métriques
- suivi Dask/Ray dans GKE
Public cible :
Cette formation s'adresse aux développeurs Python, ingénieurs data, data scientists et ingénieurs logiciel manipulant des traitements parallèles ou distribués.
Prérequis :
Maîtrise de Python et des bibliothèques scientifiques (NumPy, Pandas, etc.), ainsi que des bases en Docker et notions d'un Cloud public.
J'évalue mes connaissances pour vérifier que je dispose des prérequis nécessaires pour profiter pleinement de cette formation en faisant le test de prérequis.
Date de mise à jour du programme : 19/02/2026
Machine Learning avec Python
Déployer un modèle Machine Learning en production avec Python
Intégrer des modèles ChatGPT dans les applications Python
Python : Automatiser les documents Office