Programme des séances
2. Grammaires
Exercices pratiques sur la manipulation de texte.
Accéder au dépôt GitHub3. Modèle de langue bi-grammes par comptage
Configuration : Créer un fichier
requirements.txt avec le contenu suivant :
jupyterlab numpy matplotlib graphviz torch
Commandes à lancer dans votre terminal :
python3 -m venv .venv/notebooks source .venv/notebooks/bin/activate pip install -r requirements.txt jupyter lab
Ressources
4. Descente et rétropropagation du gradient
5. Modèle bi-grammes neuronal
Reprendre l'approche bi-grammes (comptage et neuronale) pour passer
à des tri-grammes (suites de 3 caractères).
À rendre : le notebook résultat ou le code Python
par email.
6. Embeddings et Feed-Forward Network
7. Initialisations, normalisations
Date de rendu : 9 janvier 2026 (par email).
Objectif : Adapter le réseau du chapitre 7 pour utiliser des tokens (mots/sous-mots) au lieu de caractères, afin de générer des phrases cohérentes (contexte min. 3 mots).
Ressources :
- Code source de base : GitHub tp_nlp_tokens_mines
- Démo tokenizer : Tiktokenizer
- Données : Codes français (Markdown)
Étapes suggérées :
- Sélectionner et nettoyer les données (ne garder que les phrases).
- Entraîner un tokenizer (SentencePiece, Tiktoken...) ou utiliser un modèle pré-entraîné.
-
Adapter la classe
BengioFFNet associées pour utiliser les tokens. - Entraîner le modèle, générer des phrases et analyser les hyperparamètres.
- Modifier la génération pour supporter un "prompt" initial.
10. Transformer
Intervention de Rémi Ouazan (Hugging Face)
- Présentation du "Continuous Batching"
- Présentation de la bibliothèque "transformers"
- Sa page LinkedIn
Début du projet
Date limite de rendu: 1er févier 2026 (AoE) (par email).
Moyens de calcul: commencez les développements sur votre propre machine ou sur une plateforme de type Google colab. Quand votre code fonctionne et si vous avez besoin de plus de ressources, faites une demande de ressources Scaleway à votre enseignant.
- ICPE: classification des arrêtés d'autorisation des Installations classées pour l'environnement (ICPE). Sujet en collaboration avec le ministère de la transition écologique.
- RAG à Muffin: génération de recettes de Muffin à partir de plusieurs ingrédients, en utilisant du RAG.
- MoJo: détection et classification des paragraphes modificateurs publiés au Journal Officiel (projet de recherche Legistix, devenu Droit quotidien: présentation ProLaLa - POPL 2023).
- Juriref: détection et classification de références juridiques dans le journal officiel et les codes.
- Proposez votre propre projet.
11. nanoChat
- Retour sur le mécanisme d'attention (origines, RoPE, ...)
- Tailles des modèles actuels, voir [BurkovA2025, p. 97 (12)]
- Passage d'un GPT à ChatGPT
- Supervised Fine-Tuning: [BurkovA2025, 5.2]
- Fine-Tuning a Pretrained Model: [BurkovA2025, 5.3]
- Sampling [BurkovA2025, 5.4]
- LoRA [BurkovA2025, 5.5]
- LLM as a classifier [BurkovA2025, 5.6]
- Prompt engineering [BurkovA2025, 5.7]
- karpathy / nanochat
Intervention de Eyal Benaroche (Meta)
Intervention de Virgile Richard (Mistral)
- Transparents à venir
Bibliographie
- 📘 Andriy Burkov: The Hundred-Page Language Models Book (2025)
- 📘 Jurafsky: Speech and Language Processing (2025)
- 📘 François Chollet: Deep Learning with Python (2025)