IA : apprendre et comprendre
Prérequis : dérivées, matrices et probabilités. But : calculer un apprentissage supervisé, distinguer ajustement et généralisation, puis comprendre une opération d’attention. Données et vecteurs synthétiques, sans modèle préentraîné. LOG635 est un repère général d’IA; ces leçons d’apprentissage et d’attention sont une extension indépendante.
5 visuels et 10 exercices interactifs
Ces leçons forment un premier socle, sans équivalence de crédits universitaires. Les durées sont indicatives et incluent la pratique.
Apprendre un poids par descente de gradient
Apprendre un poids par descente de gradient
Deux exemples d’apprentissage synthétiques sont (x,y)=(1,2) et (2,4). Le modèle est ŷ=wx, sans biais, avec w=0 au départ.
Le rappel qui sert ici. Les égalités gardent leurs hypothèses; ouvre une étape pour retrouver le sens de chaque opération.
Prédire avec le poids initial
Pourquoi cette étape ? On multiplie le même poids par chaque entrée. Le modèle ne connaît pas encore la pente 2.
Mesurer la perte
Pourquoi cette étape ? n=2; le dénominateur 2n vaut 4. On ne mélange pas cette convention avec une MSE sans facteur 1/2.
Dériver par la règle de chaîne
Pourquoi cette étape ? Chaque erreur est multipliée par la dérivée de wx, qui vaut x.
Faire une mise à jour simultanée
Pourquoi cette étape ? Soustraire un gradient négatif augmente le poids. La perte est calculée avec le même ancien poids pour tous les exemples.
Vérifier le progrès
Pourquoi cette étape ? Une étape diminue ici la perte. Pour cette parabole, la convergence exige |1−2,5η|<1, donc 0<η<0,8.
Règles, cas particuliers et autre exemple
Un apprentissage supervisé ajuste des paramètres à partir d’exemples étiquetés. Ici la perte est L=(1/2n)Σ(ŷ−y)². Le facteur 1/2 simplifie la dérivée. Le gradient indique le sens de plus forte augmentation locale de L; on avance dans le sens opposé. Le taux η doit tenir compte de la courbure : une grande mise à jour peut osciller ou diverger, même pour une perte convexe.
Exemple résolu
Deux exemples d’apprentissage synthétiques sont (x,y)=(1,2) et (2,4). Le modèle est ŷ=wx, sans biais, avec w=0 au départ.
Apprendre un poids par descente de gradient
Deux exemples d’apprentissage synthétiques sont (x,y)=(1,2) et (2,4). Le modèle est ŷ=wx, sans biais, avec w=0 au départ.
Les équations et les explications au clic restent disponibles sans JavaScript. Active-le pour manipuler le modèle et choisir les réponses.
Classer avec une régression logistique
Classer avec une régression logistique
Un exemple a x=1 et une classe y=1. Le modèle calcule z=wx+b, puis p=σ(z), avec w=1 et b=0.
Le rappel qui sert ici. Les égalités gardent leurs hypothèses; ouvre une étape pour retrouver le sens de chaque opération.
Former le score
Pourquoi cette étape ? Le poids multiplie l’entrée; le biais décale le score avant toute décision.
Transformer le score
Pourquoi cette étape ? La valeur est strictement entre 0 et1; elle exprime la probabilité modélisée de la classe 1.
Prendre une décision à seuil 0,5
Pourquoi cette étape ? Le seuil est une règle de décision; il n’efface pas la probabilité 0,731059.
Calculer la perte pour y=1
Pourquoi cette étape ? Quand l’étiquette vaut 1, le terme multiplié par 1−y disparaît.
Différencier sans oublier la chaîne
Pourquoi cette étape ? La dérivée combinée de l’entropie croisée et de la sigmoïde se simplifie en p−y.
Règles, cas particuliers et autre exemple
Le score z n’est pas une probabilité. La sigmoïde σ(z)=1/(1+e⁻ᶻ) ramène le score entre 0 et1. La perte binaire −[y ln p+(1−y)ln(1−p)] pénalise fortement une prédiction confiante et fausse. Le seuil de décision peut changer sans changer le modèle probabiliste; il modifie les faux positifs et faux négatifs. Les probabilités apprises doivent être évaluées sur des données séparées : cette fonction ne garantit pas à elle seule leur calibration.
Exemple résolu
Un exemple a x=1 et une classe y=1. Le modèle calcule z=wx+b, puis p=σ(z), avec w=1 et b=0.
Classer avec une régression logistique
Un exemple a x=1 et une classe y=1. Le modèle calcule z=wx+b, puis p=σ(z), avec w=1 et b=0.
Les équations et les explications au clic restent disponibles sans JavaScript. Active-le pour manipuler le modèle et choisir les réponses.
Généralisation et régularisation
Généralisation et régularisation
Deux modèles ont des MSE synthétiques : A, apprentissage 0,01 et validation 0,40; B, apprentissage 0,04 et validation 0,08.
Le rappel qui sert ici. Les égalités gardent leurs hypothèses; ouvre une étape pour retrouver le sens de chaque opération.
Séparer le rôle des données
Pourquoi cette étape ? Ajuster les coefficients sur les données de validation contaminerait leur rôle de comparaison.
Calculer l’écart de généralisation de A
Pourquoi cette étape ? Une grande différence signale un possible surajustement, sans démontrer à elle seule sa cause.
Comparer le modèle B
Pourquoi cette étape ? B prédit mieux sur ce jeu de validation malgré une perte d’apprentissage plus élevée.
Écrire la pénalité ridge
Pourquoi cette étape ? Le coefficient constant 1 est exclu. La pénalité freine les grands coefficients, sans garantir une amélioration pour tout λ.
Choisir puis évaluer honnêtement
Pourquoi cette étape ? La validation a servi au choix. La présenter comme un test final indépendant surestimerait la force de l’évaluation.
Règles, cas particuliers et autre exemple
Une erreur d’apprentissage faible ne garantit pas une bonne généralisation. On ajuste les coefficients sur le jeu d’apprentissage, puis on choisit le degré et λ avec le jeu de validation. Un test final indépendant doit rester réservé pour l’évaluation après ce choix. Dans la régression ridge ci-dessous, on minimise Σ(y−ŷ)²+λΣ_{j≥1}cⱼ²; l’ordonnée à l’origine n’est pas pénalisée. Les valeurs de x sont déjà bornées à[−1,1]. Les jeux fixes sont synthétiques et la validation n’est pas une preuve de performance réelle.
Exemple résolu
Deux modèles ont des MSE synthétiques : A, apprentissage 0,01 et validation 0,40; B, apprentissage 0,04 et validation 0,08.
Généralisation et régularisation
Deux modèles ont des MSE synthétiques : A, apprentissage 0,01 et validation 0,40; B, apprentissage 0,04 et validation 0,08.
Les équations et les explications au clic restent disponibles sans JavaScript. Active-le pour manipuler le modèle et choisir les réponses.
Réseau de neurones et rétropropagation
Réseau de neurones et rétropropagation
Un neurone caché h=σ(wx+b) alimente une sortie ŷ=vh+c. Pour x=1,y=1, on part de w=b=c=0 et v=1.
Le rappel qui sert ici. Les égalités gardent leurs hypothèses; ouvre une étape pour retrouver le sens de chaque opération.
Calculer l’activation cachée
Pourquoi cette étape ? La sigmoïde apporte une non-linéarité. Sa dérivée est h(1−h).
Former la sortie et la perte
Pourquoi cette étape ? La sortie est linéaire; la perte porte sur son écart à la cible.
Commencer par les paramètres de sortie
Pourquoi cette étape ? La dérivée par rapport à c vaut l’erreur; celle par rapport à v multiplie par h.
Traverser la sigmoïde
Pourquoi cette étape ? Les facteurs sont erreur, ancien v, dérivée de σ puis entrée x. Ici le gradient de b vaut aussi−0,125.
Mettre tous les paramètres à jour
Pourquoi cette étape ? On soustrait η fois chaque gradient calculé avant la mise à jour. Le visuel permet de comparer les pertes après plusieurs pas.
Règles, cas particuliers et autre exemple
La rétropropagation applique la règle de chaîne à un graphe de calcul. On calcule d’abord les valeurs en avant, puis les dérivées en arrière. Chaque dérivée utilise les paramètres de la même passe; on ne met pas à jour v avant de calculer les gradients de w et b. Le petit réseau du laboratoire a une sortie linéaire et une perte quadratique : sa sortie n’est pas automatiquement une probabilité. Une seule observation sert à isoler le calcul; elle ne suffit pas pour évaluer une généralisation.
Exemple résolu
Un neurone caché h=σ(wx+b) alimente une sortie ŷ=vh+c. Pour x=1,y=1, on part de w=b=c=0 et v=1.
Réseau de neurones et rétropropagation
Un neurone caché h=σ(wx+b) alimente une sortie ŷ=vh+c. Pour x=1,y=1, on part de w=b=c=0 et v=1.
Les équations et les explications au clic restent disponibles sans JavaScript. Active-le pour manipuler le modèle et choisir les réponses.
Attention : scores, softmax et masque
Attention : scores, softmax et masque
Une requête q=(1,0) compare trois clés (1,0),(0,1),(1,1). Leurs valeurs scalaires sont 1,2,4. On prend une températureτ=1.
Le rappel qui sert ici. Les égalités gardent leurs hypothèses; ouvre une étape pour retrouver le sens de chaque opération.
Comparer requête et clés
Pourquoi cette étape ? Multiplie les coordonnées correspondantes puis additionne. Les deux clés contenant une première coordonnée 1 obtiennent le même score.
Mettre les scores à l’échelle
Pourquoi cette étape ? La dimension des clés vaut 2. À température 1, le seul facteur d’échelle est√2.
Exponentier et normaliser
Pourquoi cette étape ? Chaque poids dépend du dénominateur commun. On peut soustraire le plus grand score sans changer les poids pour éviter les débordements numériques.
Combiner les valeurs
Pourquoi cette étape ? Les poids somment à 1; la sortie scalaire est donc entre la plus petite et la plus grande valeur autorisée.
Masquer avant le softmax
Pourquoi cette étape ? Les positions masquées ont un poids nul et sont retirées du dénominateur. Masquer après normalisation sans renormaliser donnerait une erreur.
Règles, cas particuliers et autre exemple
L’attention pondère des valeurs selon des compatibilités entre requête et clés. Le produit scalaire est divisé par√d, puis un softmax produit des poids positifs de somme 1. La température est ici un réglage pédagogique supplémentaire, distinct du facteur√d; elle ne décrit pas automatiquement le décodage d’un modèle de langage. Un masque causal exclut les positions futures avant normalisation. Nous utilisons des vecteurs choisis à la main, sans modèle entraîné, vocabulaire ou génération de texte. Des poids élevés ne constituent pas à eux seuls une explication causale d’une réponse.
Exemple résolu
Une requête q=(1,0) compare trois clés (1,0),(0,1),(1,1). Leurs valeurs scalaires sont 1,2,4. On prend une températureτ=1.
Attention : scores, softmax et masque
Une requête q=(1,0) compare trois clés (1,0),(0,1),(1,1). Leurs valeurs scalaires sont 1,2,4. On prend une températureτ=1.
Les équations et les explications au clic restent disponibles sans JavaScript. Active-le pour manipuler le modèle et choisir les réponses.
Pour aller plus loin
Arbres de décision, optimisation multivariée, réseaux profonds complets, apprentissage non supervisé, évaluation sur données réelles, biais, confidentialité et déploiement restent à développer. Le laboratoire d’attention ne constitue pas un modèle de langage.