← Parcours
💬

NLP et Transformers

Avancé
🧠Comprendre en lisant n'est pas savoir écrire.🧠Un module est fini quand tu peux le reproduire fenêtre fermée.🧠Écris le problème en français avant d'écrire du code.🧠Une question impossible cache trois questions faciles.🧠Retape le code à la main. Puis referme et réécris-le.🧠Essaie d'abord, cherche ensuite.🧠Cherche « comment on écrit ça », jamais « qu'est-ce que je dois faire ».🧠Pour comprendre du code, casse-le.⌨️Une fonction qui plante sur un cas limite n'est pas finie.⌨️Si un bloc a un nom clair, il mérite d'être une fonction.⌨️Savoir lire une erreur vaut plus que connaître dix méthodes.⌨️Diagnostiquer, c'est éliminer dans l'ordre — pas essayer au hasard.⌨️Une optimisation sans mesure avant/après est une croyance.🔍Regarde le fichier avant de le charger.🔍Une performance anormalement bonne est une hypothèse à réfuter.🔍Cette valeur existe-t-elle à l'instant où je dois prédire ?🔍fit sur le train, transform partout.🔍Un chiffre qu'on ne sait pas raconter est un chiffre qu'on n'a pas compris.🔍Un graphique sans question n'a rien à dire.🤖Un score d'entraînement parfait n'est jamais une bonne nouvelle.🤖Le jeu de test ne se regarde qu'une fois.🤖Plus tu essaies de configurations, plus ton meilleur score est optimiste.🤖Un seuil de décision est un arbitrage économique, pas un réglage technique.🤖Commence toujours par une baseline. Note son score.🤖Le meilleur modèle n'est pas le plus précis, c'est celui qu'on peut maintenir.🚀Un modèle en production n'est pas un livrable, c'est un système vivant.🚀Un secret publié est un secret compromis.🚀Pour chaque permission : que se passe-t-il si cette machine est compromise ?🚀Un post-mortem qui cherche un coupable ne produit aucune amélioration.🚀« Nous n'utilisons pas cette variable » n'est pas une garantie d'équité.🚀Rends l'arbitrage explicite et chiffré. Ne le tranche pas en silence.🚀Un résultat qu'on ne sait pas reproduire est une anecdote.

🎯 Objectifs d'apprentissage

À l'issue de ce module, tu seras capable de :

  • 01Expliquer le mécanisme d'attention et son coût quadratique
  • 02Affiner un transformer pré-entraîné sur une tâche de classification
  • 03Construire un système de RAG avec base vectorielle
  • 04Évaluer un système NLP au-delà de l'accuracy

Prérequis

Module Deep Learning

Représenter le texte : tokens et embeddings

50 min

Une machine ne lit pas des mots : il faut les transformer en nombres.

Tokenisation : découper le texte en unités (tokens). Les LLM modernes utilisent des sous-mots (BPE) : "incroyable" → ["in", "croy", "able"]. Vocabulaire typique : 30k–100k tokens.

Embeddings : chaque token devient un vecteur dense (ex. 768 dimensions) appris pendant l'entraînement. Propriété magique : la géométrie capture le sens.

roi - homme + femme ≈ reine

Les mots de sens proches ont des vecteurs proches (similarité cosinus). C'est le fondement de la recherche sémantique : on compare les embeddings de la requête et des documents.

from sentence_transformers import SentenceTransformer
model = SentenceTransformer("all-MiniLM-L6-v2")
emb = model.encode(["le chat dort", "un félin se repose"])
# similarité cosinus élevée malgré zéro mot en commun

✍️ Exercices de la leçon

2 exercices

Fais-les dans l'ordre, dans un vrai fichier .py — pas dans ta tête. Ne déplie la correction qu'après avoir écrit quelque chose, même faux.

🔧

Exercice ADes phrases sans mot commun, mais proches

Application directe · Tu appliques ce que tu viens de lire.

from sentence_transformers import SentenceTransformer
model = SentenceTransformer("all-MiniLM-L6-v2")

1. encode ces cinq phrases et affiche la forme du tableau obtenu :
- « le chat dort sur le canapé »

- « un félin se repose sur le sofa »

- « la bourse a chuté de 3 % »

- « les marchés financiers sont en baisse »

- « je mange une pomme »

2. calcule la matrice de similarité cosinus entre toutes les paires

3. affiche-la en heatmap avec les phrases en étiquettes

4. vérifie que les paires 1-2 et 3-4 ressortent, malgré zéro mot en commun

5. compare avec une similarité par mots communs (Jaccard) : que donne-t-elle ?

🎯

Exercice BMoteur sémantique contre moteur par mots-clés

Page blanche · Aucun squelette : à toi de choisir la méthode.

Page blanche. Comparaison à construire.

Tu dois convaincre une équipe de passer d'une recherche par mots-clés à une recherche sémantique. Une affirmation ne suffira pas : construis la démonstration.

  1. 1.constitue un petit corpus de 15 à 20 documents sur un thème que tu connais
  2. 2.implémente deux moteurs de recherche : un par mots-clés (TF-IDF), un sémantique (embeddings)
  3. 3.conçois 5 requêtes qui discriminent les deux approches
  4. 4.compare les résultats et mesure l'écart
  5. 5.trouve et présente un cas où le moteur par mots-clés est meilleur — il existe

Le point 5 est le plus important. Une démonstration qui ne montre que les avantages n'est pas une démonstration, c'est un argumentaire.

🤖

Un point pas clair ? Clique sur 💬 Demander au tuteur en bas à droite.