Amar Merabti · carnet EN
← Retour au carnet

Exp. 08 · 2026 · projet personnel

Ce que fait vraiment un Transformer, tête par tête

Peut-on ouvrir un modèle de langue et montrer, tête par tête, comment il s'y prend ?

105 152
paramètres : deux couches, deux têtes, contexte de 33 jetons
99,7 %
des positions recopiables prédites correctement
5,5 %
ce qu'il en reste quand on coupe les deux têtes de la seconde couche
2,3 min
d'entraînement sur un portable, sans GPU
01 · La tâche

Une règle que le modèle ne peut pas mémoriser

Pour observer un mécanisme, il faut une tâche dont on connaît la solution. Celle-ci tient en une phrase : on tire une suite de lettres au hasard, d'une longueur elle-même tirée au hasard entre quatre et douze, et on la répète jusqu'au bout de la séquence. La première occurrence est imprévisible ; tout ce qui suit se déduit du contexte, à condition de retrouver où la lettre courante est déjà apparue et de recopier ce qui la suivait.

Ma première version était fausseJ'avais d'abord fixé la longueur du motif à seize. Un modèle à une seule couche atteignait alors 100 % : il lui suffisait de regarder seize positions en arrière, un simple décalage. Le contrôle négatif ne contrôlait rien. Tirer la période au hasard à chaque exemple supprime ce raccourci.

Fig. 1 — Le modèle tourne dans cette page. Chaque case montre la lettre et, en dessous, ce que le modèle prédit ensuite, avec sa probabilité ; touchez-en une pour voir où chaque tête regarde. Les cases « couper » désactivent une tête : coupez la tête 1 de la couche 0 et regardez la recopie s'effondrer.
02 · L'apparition

La capacité arrive d'un coup, et pas à une seule couche

L'entraînement dure 2,3 minutes sur un portable sans carte graphique. Rien ne se passe pendant deux cents pas, puis la recopie apparaît brutalement et sature à 99,7 %. Le même modèle privé d'une couche plafonne à 40,4 % : la recopie en contexte demande deux étages, un pour marquer d'où l'on vient, l'autre pour aller chercher la suite — c'est le circuit décrit par Elhage et ses collègues en 2021, puis par Olsson en 2022, ici reproduit à l'échelle d'un jouet.

Exactitude sur les positions recopiables au fil de l'entraînement, deux couches contre une
Fig. 2 — Exactitude sur les positions dont la suite est lisible dans le contexte. La ligne pointillée est le hasard (1/26).
03 · L'ablation

Une tête qu'on coupe, et le modèle ne sait plus recopier

On peut désigner les coupables. Chaque tête est désactivée à son tour — sa sortie est mise à zéro — et l'on mesure ce que le modèle perd. On mesure aussi où va son attention : sur le jeton précédent, ou sur les positions qui suivent les occurrences antérieures de la lettre courante.

Tête coupéeRecopie restanteAtt. jeton précédentAtt. induction
couche 0, tête 10,2470,910,04
couche 0, tête 00,9210,030,12
couche 1, tête 00,9550,000,69
couche 1, tête 10,9810,000,70
couche 1 entière0,055——

La lecture est nette. La tête 1 de la couche 0 place 91 % de son attention sur le jeton précédent : c'est elle qui inscrit, dans chaque position, l'identité de celle qui la précède. La couper fait tomber la recopie de 99,5 % à 24,7 %. Les deux têtes de la couche 1, elles, portent près de 70 % de leur attention sur le motif d'induction — mais les couper une par une ne coûte presque rien (−4 et −1,4 points) : elles se doublonnent. Coupées ensemble, la recopie tombe à 5,5 %. Autrement dit : une fonction, deux exemplaires, et un étage préparatoire sans lequel rien ne marche.

04 · Un détail qui n'en est pas un

Le modèle parie sur le retour du motif

Sur les positions dites imprévisibles, le modèle obtient 14 % de réussite, bien au-dessus du hasard (3,8 %). En regardant de plus près, ces 14 % viennent d'un seul endroit : la frontière du motif, la position où la répétition commence. Là, le modèle a raison 93,9 % du temps ; partout ailleurs, il est exactement au hasard (3,8 %).

Il a donc appris une stratégie de pari : tant qu'aucune répétition n'a été détectée, proposer la première lettre de la suite. C'est faux presque partout, et juste précisément là où ça compte. Un chiffre qui ressemblait à du bruit décrivait en fait un comportement.

Enfin, le modèle exécuté dans cette page est bien celui qui a été entraîné : sur six séquences et 192 positions, l'écart maximal entre le portage JavaScript et PyTorch est de 10⁻⁵ sur les logits comme sur les cartes d'attention, y compris après ablation, et aucune prédiction ne diffère.