Doctorante groupe Cosmo (APC)
Ingénieure Machine Learning (Mews Labs)
Petit test de température ! A votre avis, pourquoi est-ce que je vous parle de LLM en cours de Modélisation et Machine Learning ? Quel est le lien entre ce que vous avez vu en cours et les LLMs ?
Du Deep Learning au Transformer
Un LLM est un Réseau de Neurones Artificiels profond.
$y_j = \sigma\left(\sum_{i} W_{ij} \cdot x_i + b_j\right)$
Un modèle ne lit pas de lettres. Le Tokenizer découpe la phrase en sous-mots (les Tokens), et donne à chacun son numéro d'index (ID) exclusif au sein de son dictionnaire interne.
"J'étudie le ML"
$\downdownarrows$
["J", "'étud", "ie", "le", "ML"]
$\downdownarrows$
IDs: [45, 8934, 12, 9812, 345]
L'ID n'est qu'un numéro. La couche d'Embedding projette chaque token ID vers un vecteur de coordonnées unique (~4096 dimensions) pour y apprendre la structure profonde du langage.
Deux façons d'obtenir la matrice d'embedding : soit en modèle pré-entrainé (word2vec, GloVe, FastText) soit en end-to-end dans le transformeur.
V(Roi) - V(Homme) + V(Femme) ≈ V(Reine)
Chaque modèle a son propre espace vectoriel.
Les modèles d'embedding font partie des LLMs (ce sont les premières couches). Mais on peut décider d'extraire juste ces couches pour utiliser le modèle d'embedding pour d'autres tâches.
Pourquoi extraire uniquement ces couches vectorielles ?
Pour comprendre le
sens ou prédire la suite, il faut tout le contexte.
L'ère des RNN /
LSTM (Réseaux Séquentiels) échouait :
L'idée : Supprimer le goulot. Chaque mot se connecte à TOUS les autres :
Chaque token scrute dynamiquement ses voisins.
Chaque mot $x_i$ est projeté dans 3 espaces par des poids appris :
$\mathbf{q}_i = \mathbf{x}_i W_Q, \quad \mathbf{k}_i = \mathbf{x}_i W_K, \quad \mathbf{v}_i = \mathbf{x}_i W_V$
* $N$ tokens en parallèle $\implies$ Multiplication matricielle ultra-optimisée sur GPU.
Étape 1 : Projection des tokens
| Token | Input $X$ | Query $Q$ | Key $K$ | Value $V$ |
|---|---|---|---|---|
| [Le] | [0.1, -0.2...] | [q_le] | [k_le] | [v_le] |
| [chat] | [0.5, 0.8...] | [q_chat] | [k_chat] | [v_chat] |
| [dort] | [-0.3, 0.4...] | [q_dort] | [k_dort] | [v_dort] |
Le mot [chat] lance sa requête (Query) :
"Qui est mon sujet /
mon action ?"
Étape 2 : Le mot [chat] scrute les clés (Keys)
Scores bruts pour [chat] :
$\mathbf{\alpha}_{Le} \approx 0.05$
$\mathbf{\alpha}_{Chat} \approx 0.60$
$\mathbf{\alpha}_{Dort} \approx 0.35$
Le mot [chat] décide d'accorder 35% de son attention au mot [dort].
Étape 3 : Création du vecteur enrichi
Grâce à l'architecture Transformer, on peut aligner n'importe quel signal.
On entraîne deux Encoders Transformer en parallèle : un pour les images (ViT), un pour le texte pour créer des embeddings alignés.
Conséquence : ça permet de labelliser des images pour d'autres tâches.
$\implies$ Être à l'interface de deux champs de recherche permet d'innover.
Du Modèle Brut à l'Assistant Conversationnel
Mistral-7B-v0.1,
LLaMA-3-8B (Prédiction statistique brute).
Toute API Utilisateur (ChatGPT, Mistral-Large, Claude) repose sur ces phases :
[Consigne -> Réponse Experte] via des milliers de datasets spécialisés.
Passer du "Modèle Brut" au "Service Intelligent"
Un modèle est un fichier de plusieurs Go. Comment l'exploiter ?
Vous faites tourner les calculs sur vos propres GPUs.
from transformers import pipeline
# Charge le modèle en VRAM (GPU)
pipe = pipeline("text-generation", model="mistralai/Mistral-7B-v0.1")
res = pipe("La constante de Hubble est...")
$\oplus$ Confidentialité totale.
$\ominus$
Nécessite un matériel coûteux.
Vous appelez un modèle hébergé (Mistral, OpenAI).
from mistralai import Mistral
client = Mistral(api_key="***")
resp = client.chat.complete(
model="mistral-large-latest",
messages=[{"role": "user", "content": "..."}]
)
$\oplus$ Aucun matériel requis, vitesse
extrême.
$\ominus$ Données partagées.
Garder un esprit d'analyse : ce n'est toujours pas de la magie !
Les LLM ne sont pas "conscients" : ce sont des modèles de probabilités conditionnelles ultra-massifs.
Comprendre le mécanisme (Attention, Vecteurs) permet de les détourner vers la science (CLIP, AstroCLIP).
Ne soyez pas de simples "Prompt Engineers".
Soyez les architectes qui injectent du savoir
Merci pour votre écoute.
Des questions ?
Anna Preto