Semaine 06 — ML moderne : ANN, CNN, RNN

Module 6 : apprentissage profond de bout en bout. MLP écrit à la main en NumPy, CNN avec audit des biais du jeu de données, LSTM sur séries temporelles financières.

Module M6  |  ← planning |  ← semaine 05 |  semaine 07 →

Le deep learning de bout en bout, avec juste assez de théorie pour savoir quand *ne pas* l'utiliser.

Livrable de la semaine

Trois petits livrables : un MLP à 2 couches écrit à la main en NumPy puis porté sur PyTorch, un CNN entraîné sur un jeu de données d’imagerie médicale, et un LSTM pour prédiction séquentielle sur une série temporelle financière.

Échéance Vendredi 18h00 (Africa/Lagos (UTC+1))
Soumission Déposer l'URL du dépôt dans le canal hebdomadaire de la cohorte. Le binôme de revue par les pairs est annoncé le lundi de la semaine suivante.
Grille Validé / à reprendre. La validation exige une CI au vert, des tests couvrant l'API publique, et un README qu'un inconnu peut suivre pour installer et exécuter le code.

Sessions en direct et ateliers

Cadence hebdomadaire par défaut ci-dessous. Les dates spécifiques à la cohorte et les liens Zoom sont ajoutés à l'inscription.

Jour Horaire Bloc Enregistrement
Mon 09:00-12:00 Cours en direct + code-along (après la session)
Mon 14:00-16:00 Travail de lab en autonomie + permanences assistants (après la session)
Tue 09:00-12:00 Cours en direct + code-along (après la session)
Tue 14:00-16:00 Travail de lab en autonomie + permanences assistants (après la session)
Wed 09:00-12:00 Cours en direct + code-along (après la session)
Wed 14:00-16:00 Travail de lab en autonomie + permanences assistants (après la session)
Thu 09:00-12:00 Cours en direct + code-along (après la session)
Thu 14:00-16:00 Travail de lab en autonomie + permanences assistants (après la session)
Fri 10:00-11:00 Intervenant de l'industrie (après la session)
Fri 11:30-12:30 Revue de lab (après la session)
Fri 14:00-15:00 Rétrospective de cohorte (après la session)

Objectifs d'apprentissage

À l'issue de la semaine, chaque participant saura :

  1. Entraîner un réseau de neurones à propagation avant à partir de zéro en NumPy, puis en PyTorch.
  2. Construire, entraîner et évaluer des CNN sur des tâches de classification d’images.
  3. Construire, entraîner et évaluer des RNN/LSTM sur des tâches séquentielles.
  4. Diagnostiquer les pathologies d’entraînement : gradients qui disparaissent, overfitting, neurones morts, décalage de distribution.

Sujets abordés

Réseaux à propagation avant, rétropropagation, optimisation (SGD, Adam, AdamW) · régularisation (dropout, batch norm, weight decay, early stopping) · CNNs (LeNet, AlexNet, ResNet, architectures modernes) · RNNs, LSTMs, GRUs · attention comme primitive · apprentissage de représentations · les leçons amères du deep learning (scaling du calcul, ce qui ne se transfère pas).

Ateliers

Atelier 1 — MLP à la main puis PyTorch

Implémenter un MLP à 2 couches avec rétropropagation manuelle en NumPy. Le faire tourner sur MNIST. Puis porter sur PyTorch et vérifier des courbes de perte identiques (à l’aléa stochastique près).

Jeu de données : MNIST (canonique).

Atelier 2 — CNN d'imagerie médicale avec audit du jeu de données

Entraîner un ResNet18 sur un jeu public de radiographies thoraciques. Puis mener un audit de biais : le modèle exploite-t-il des artefacts spécifiques aux hôpitaux ? Rédiger une note de 400 mots sur les constats.

Jeu de données : NIH ChestX-ray14 (petit sous-ensemble) + images d'un second hôpital pour test hors-distribution.

Atelier 3 — LSTM pour série temporelle financière

Prédire des rendements à 10 jours sur un panier multi-actifs. Comparer le LSTM à une baseline AR(1) et à un prédicteur naïf à dernière valeur. Reporter l’écart embarrassant, puis expliquer pourquoi la prédiction de séries temporelles est plus difficile qu’il n’y paraît.

Jeu de données : Clôtures quotidiennes Yahoo Finance pour un panier de 10 tickers, 2010-2024.

Lectures

Obligatoires

Pour aller plus loin

Se construit sur (catalogue des cours)