LangueFR
Français
English
Retour au sommaire du cours

Ressources pour aller plus loin

Ce cours condense et réorganise ; il ne remplace pas les sources. Cette annexe indique, pour chaque partie, où aller quand un module a donné envie d'approfondir — avec une recommandation unique par sujet plutôt qu'une bibliographie exhaustive, parce qu'une liste de trente livres ne se lit jamais.

Comment lire cette liste

  • Les titres marqués (libre) sont légalement disponibles en ligne, gratuitement, par leurs auteurs ou leurs éditeurs.
  • « Si un seul » signale le point d'entrée à privilégier quand on n'a le temps que d'une chose.
  • Les articles cités sont ceux qui ont réellement changé la pratique, pas les plus récents. Un article de 2001 encore utilisé aujourd'hui vaut mieux qu'un article de l'an dernier dont on ignore s'il survivra.

1. Les quatre livres qui couvrent le plus de terrain

  • Hastie, Tibshirani, Friedman — The Elements of Statistical Learning (libre). La référence du ML statistique, exigeante mais précise. C'est le livre vers lequel on revient dix ans plus tard. Sa version d'introduction, An Introduction to Statistical Learning (libre, avec une édition Python), couvre les mêmes idées sans la charge mathématique.
  • Murphy — Probabilistic Machine Learning, deux volumes (brouillons libres). Le traitement le plus complet et le plus à jour, du point de vue probabiliste. Sert autant de manuel que d'encyclopédie.
  • Géron — Hands-On Machine Learning with Scikit-Learn, Keras and TensorFlow. L'exact complément des deux précédents : tout y est code, et les chapitres sur le pipeline de données et le déploiement sont excellents.
  • Huyen — Designing Machine Learning Systems. Le livre qui manque à la plupart des cursus : comment un système de ML vit en production. À lire avant, pas après, un premier projet en entreprise.

2. Par partie du cours

Partie I — Outillage (modules 1 à 7)

  • Si un seul : Ramalho — Fluent Python. Le livre qui fait passer de « je sais écrire du Python » à « je comprends pourquoi Python se comporte ainsi ». Les chapitres sur les itérateurs, les décorateurs et la concurrence recouvrent exactement les modules 1 et 2.
  • Beazley — Python Concurrency (conférences en ligne) : les exposés les plus clairs sur le GIL et asyncio.
  • Kleppmann — Designing Data-Intensive Applications. Le meilleur livre sur les systèmes de données : réplication, partitionnement, transactions, flux. Dense et remarquablement pédagogique.
  • Reis & Housley — Fundamentals of Data Engineering, pour le panorama des architectures, et Kimball — The Data Warehouse Toolkit, qui reste la référence sur la modélisation dimensionnelle (module 7).
  • Documentations officielles : Docker (le guide « get started » est bien fait), Kubernetes concepts, FastAPI (l'un des meilleurs tutoriels toutes technologies confondues), polars user guide, dbt developer hub.

Partie II — Socle mathématique et statistique (modules 8 à 11)

  • Si un seul : Strang — Linear Algebra and Learning from Data. Écrit pour ce cas d'usage précis : l'algèbre linéaire dont le ML a besoin, SVD en tête. Le cours vidéo MIT 18.06 du même auteur est libre.
  • Boyd & Vandenberghe — Convex Optimization (libre), pour l'optimisation ; Nocedal & Wright — Numerical Optimization pour les méthodes de second ordre.
  • Wasserman — All of Statistics, pour la statistique inférentielle en un volume compact ; Efron & Hastie — Computer Age Statistical Inference (libre) pour la perspective historique, bootstrap compris.
  • McElreath — Statistical Rethinking (cours vidéo libre). Le meilleur livre pour comprendre l'inférence bayésienne et la pensée causale, sans prérequis excessifs. Gelman et al. — Bayesian Data Analysis (libre) pour la référence complète.
  • Causalité : Cunningham — Causal Inference: The Mixtape (libre) est l'entrée la plus accessible ; Hernán & Robins — Causal Inference: What If (libre) est la référence rigoureuse ; Pearl — The Book of Why pour l'intuition des graphes causaux.
  • Angelopoulos & Bates — A Gentle Introduction to Conformal Prediction (libre), quarante pages qui suffisent au module 10.

Partie III — Méthode et données (modules 12 et 13)

  • Si un seul : Kaggle Learn et les notebooks des compétitions terminées. Rien ne remplace la lecture d'une solution gagnante commentée pour comprendre ce que « travailler ses variables » veut dire.
  • Wickham — R for Data Science (libre) : même si le langage diffère, les chapitres sur la structure d'une analyse et sur les données rangées sont transposables tels quels.
  • Tufte — The Visual Display of Quantitative Information, pour la visualisation ; la documentation de seaborn pour la pratique immédiate.
  • Documentation de scikit-learn, section « User Guide » : l'un des meilleurs cours de ML gratuits, à lire comme un livre plutôt que comme une référence.

Partie IV — Familles de modèles (modules 14 à 19)

  • Si un seul : Prince — Understanding Deep Learning (libre). Récent, très bien illustré, avec les exercices et les diapositives. Il a remplacé Goodfellow comme premier livre de deep learning, même si Deep Learning (libre) reste la référence théorique.
  • Karpathy — Neural Networks: Zero to Hero (vidéos libres) : construire la rétropropagation puis un Transformer à partir de zéro. Sans doute la meilleure heure investie du module 16.
  • Shalev-Shwartz & Ben-David — Understanding Machine Learning (libre), pour la théorie du module 15.
  • Rasmussen & Williams — Gaussian Processes for Machine Learning (libre), pour le module 19 ; la documentation de BoTorch pour l'optimisation bayésienne appliquée.
  • Sutton & Barto — Reinforcement Learning: An Introduction (libre) pour le module 20, complété par le cours Deep RL de Hugging Face, plus pratique.

Partie V — Domaines et applications (modules 20 à 23)

  • Hyndman & Athanasopoulos — Forecasting: Principles and Practice (libre). La référence sur les séries temporelles, claire et directement applicable (module 17).
  • Jurafsky & Martin — Speech and Language Processing (brouillon libre) pour le NLP ; Manning, Raghavan & Schütze — Introduction to Information Retrieval (libre) pour la recherche, dont les chapitres sur l'indexation et l'évaluation n'ont pas vieilli (modules 18 et 23).
  • Hugging Face — cours NLP et documentation transformers, pour la pratique du module 22.
  • Hamilton — Graph Representation Learning (libre), pour les GNN du module 18.
  • Smith — Uncertainty Quantification et la documentation de SALib et OpenTURNS, pour le module 21.

Partie VI — Décision, production, responsabilité (modules 24 à 27)

  • Si un seul : Huyen — Designing Machine Learning Systems, déjà cité, qui couvre à lui seul une bonne part des modules 24 à 26.
  • Kohavi, Tang & Xu — Trustworthy Online Controlled Experiments. Tout ce qu'on apprend en cassant des A/B tests, écrit par ceux qui les ont cassés à grande échelle.
  • Molnar — Interpretable Machine Learning (libre), pour l'interprétabilité ; Barocas, Hardt & Narayanan — Fairness and Machine Learning (libre), pour le module 27.
  • Documentation de MLflow, DVC, Evidently et fairlearn ; le NIST AI Risk Management Framework et le texte du règlement européen sur l'IA pour le cadre réglementaire.
  • Pour le GPU et la performance (module 25) : la documentation PyTorch Performance Tuning et les guides NVIDIA Deep Learning Performance, plus utiles que n'importe quel livre sur ce sujet qui bouge vite.

3. Cours en ligne et vidéos

  • 3Blue1Brown — Essence of Linear Algebra, Essence of Calculus, Neural Networks. L'intuition géométrique derrière ce que la prépa a enseigné algébriquement. À regarder avant le module 8.
  • Karpathy — Neural Networks: Zero to Hero. Construire, ligne par ligne, un moteur de différentiation automatique puis un modèle de langage.
  • fast.ai — Practical Deep Learning for Coders. Approche descendante : on entraîne un modèle utile dès la première leçon, la théorie vient après.
  • Stanford CS231n (vision), CS224n (NLP), CS229 (ML) — notes et vidéos libres, d'un niveau supérieur aux cours grand public.
  • StatQuest (Josh Starmer) — quand une notion statistique résiste, il en existe presque toujours une explication de dix minutes ici.
  • DataTalks.Club — Data Engineering Zoomcamp et MLOps Zoomcamp, gratuits, entièrement pratiques : ils recouvrent les modules 7 et 26.
  • MIT 18.06 (Strang) pour l'algèbre linéaire, MIT 6.006 pour les algorithmes.

4. Articles qui ont changé la pratique

Une trentaine de textes suffit à couvrir l'essentiel de ce qui est utilisé aujourd'hui. Ils sont tous librement accessibles.

par thème, avec l'année
MÉTHODE ET ÉPISTÉMOLOGIE
  Breiman 2001      Statistical Modeling: The Two Cultures
  Wolpert 1996      No Free Lunch Theorems
  Halevy+ 2009      The Unreasonable Effectiveness of Data
  Sculley+ 2015     Hidden Technical Debt in ML Systems   ← module 26

ML CLASSIQUE
  Tibshirani 1996   Regression Shrinkage and Selection (Lasso)
  Cortes-Vapnik 95  Support-Vector Networks
  Breiman 2001      Random Forests
  Chen-Guestrin 16  XGBoost: A Scalable Tree Boosting System
  Bergstra-Bengio   Random Search for Hyper-Parameter Optimization (2012)

THÉORIE ET GÉNÉRALISATION
  Zhang+ 2017       Understanding Deep Learning Requires Rethinking
                    Generalization
  Belkin+ 2019      Reconciling Modern ML Practice (double descente)

DEEP LEARNING
  Kingma-Ba 2014    Adam
  Ioffe-Szegedy 15  Batch Normalization
  He+ 2016          Deep Residual Learning (ResNet)
  Vaswani+ 2017     Attention Is All You Need
  Devlin+ 2018      BERT
  Brown+ 2020       Language Models are Few-Shot Learners (GPT-3)
  Hu+ 2021          LoRA
  Lewis+ 2020       Retrieval-Augmented Generation
  Hoffmann+ 2022    Training Compute-Optimal LLMs (Chinchilla)

CAUSALITÉ ET INCERTITUDE
  Rosenbaum-Rubin   The Central Role of the Propensity Score (1983)
  Chernozhukov+ 18  Double/Debiased Machine Learning
  Athey-Wager 2019  Generalized Random Forests
  Gneiting-Raftery  Strictly Proper Scoring Rules (2007)
  Guo+ 2017         On Calibration of Modern Neural Networks

APPLICATIONS
  Koren+ 2009       Matrix Factorization for Recommender Systems
  Covington+ 2016   Deep Neural Networks for YouTube Recommendations
  Kipf-Welling 17   Semi-Supervised Classification with GCN
  Raissi+ 2019      Physics-Informed Neural Networks
  Mnih+ 2015        Human-Level Control through Deep RL (DQN)
  Schulman+ 2017    Proximal Policy Optimization

RESPONSABILITÉ
  Dwork+ 2006       Calibrating Noise to Sensitivity (confid. différentielle)
  Goodfellow+ 2015  Explaining and Harnessing Adversarial Examples
  Buolamwini-Gebru  Gender Shades (2018)
  Mitchell+ 2019    Model Cards for Model Reporting
  Gebru+ 2018       Datasheets for Datasets

5. Jeux de données et terrains d'entraînement

  • data.gouv.fr — données publiques françaises. En particulier les demandes de valeurs foncières (DVF), qui recensent toutes les transactions immobilières réelles : c'est la source à privilégier pour refaire le projet du module 28 sans scraper quoi que ce soit.
  • INSEE et Eurostat — données démographiques et économiques, propres, documentées, avec des identifiants géographiques stables.
  • Kaggle — concours et jeux de données. L'intérêt principal n'est pas la compétition mais les notebooks publics et les discussions post-mortem.
  • OpenML et UCI Machine Learning Repository — jeux de données standardisés, utiles pour comparer des méthodes sur un terrain connu.
  • Hugging Face Datasets — texte, image, audio, avec un chargement uniforme.
  • Papers with Code — le lien entre un article, son code et ses résultats de référence.
Un conseil qui vaut plus que la liste. Un projet mené sur des données qu'on a soi-même collectées et nettoyées enseigne davantage que dix jeux de données propres. C'est précisément le pari du module 28 : la moitié de la difficulté réelle disparaît quand on télécharge un CSV déjà prêt.

6. Lire un article, se tenir à jour

Lire un article en trois passes

La méthode de Keshav, qui économise énormément de temps :

  1. Cinq minutes — titre, résumé, introduction, titres de sections, conclusion. Objectif : décider si l'article mérite la suite. Quatre-vingts pour cent s'arrêtent ici, et c'est normal.
  2. Une heure — lecture complète en ignorant les démonstrations, mais en regardant attentivement figures et tableaux. Objectif : pouvoir résumer l'idée et les preuves apportées à quelqu'un d'autre.
  3. Plusieurs heures — reconstituer l'article : refaire les calculs, réimplémenter la méthode. Réservé aux articles dont on a réellement besoin.

Une quatrième étape, souvent la plus instructive : chercher qui a cité l'article depuis, et ce qui n'a pas tenu.

Une veille qui tient dans une heure par semaine

  • arXiv, catégories cs.LG et stat.ML — lire les titres, pas les articles.
  • Papers with Code et les classements par tâche, pour savoir ce qui est réellement l'état de l'art.
  • Une ou deux infolettres — The Batch (Andrew Ng), Ahead of AI (Sebastian Raschka), Import AI.
  • Les proceedings de NeurIPS, ICML, ICLR et KDD : parcourir les titres des articles primés donne une carte du domaine en une heure par an.
  • Les notes de version des bibliothèques que vous utilisez. Moins glamour, bien plus rentable : c'est là qu'on apprend qu'une fonction qu'on écrivait à la main existe désormais.
Le piège de la veille. Le domaine produit plus d'articles qu'aucun humain ne peut en lire, et la nouveauté n'est presque jamais ce dont un projet a besoin. Un gradient boosting bien réglé sur des variables bien construites bat, dans la grande majorité des cas tabulaires, l'architecture publiée la semaine dernière. Consacrez l'essentiel du temps disponible à approfondir les fondations — elles ne se périment pas.

BibliographieCoursArticlesJeux de données