Pourquoi un modèle inonde son premier mot d'une attention qu'il ne lit jamais.

SRC·46 Source
Il inonde son tout premier mot d'une attention qu'il ne lit jamais.

Il inonde son tout premier mot d'une attention qu'il ne lit jamais.

Observez où regarde un modèle et vous le surprendrez à déverser un flot d'attention sur son premier mot — un mot qui ne porte presque rien. Ce n'est pas un bug. Comme un paratonnerre : il dresse une pointe inoffensive pour encaisser la foudre, et l'orage passe sans ravager le reste. Le modèle se garde un endroit où jeter l'attention dont il n'a pas besoin.
Le softmax doit distribuer une unité entière — même à rien.

Le softmax doit distribuer une unité entière — même à rien.

αj=esjk=1tesk,j=1tαj=1,αj>0\alpha_j=\dfrac{e^{s_j}}{\sum_{k=1}^{t}e^{s_k}},\qquad \sum_{j=1}^{t}\alpha_j=1,\quad \alpha_j>0
L'attention passe par le softmax, qui transforme les scores bruts en poids tous positifs dont la somme fait exactement un. Chaque mot doit donc dépenser une unité entière d'attention sur les mots qu'il voit — même si aucun ne compte. Comme un arrosoir qu'il faut vider entièrement : la moindre goutte doit tomber quelque part, même sur une terre déjà détrempée.
Alors il se construit un drain pour l'attention qu'il ne peut pas utiliser.

Alors il se construit un drain pour l'attention qu'il ne peut pas utiliser.

Si un mot doit dépenser une unité entière mais n'a rien à regarder, où passe le surplus ? La parade du modèle : choisir un point et en faire un drain. Comme le trop-plein d'un lavabo : il évacue discrètement ce que la cuvette ne peut retenir, et rien ne déborde. Ce déversoir est le puits d'attention — et c'est précisément ce qui donne son nom au procédé.
Quel mot devient le drain ? Le tout premier.

Quel mot devient le drain ? Le tout premier.

Vt={1,2,,t},t=1nVt={1}\mathcal{V}_t=\{1,2,\dots,t\},\qquad \bigcap_{t=1}^{n}\mathcal{V}_t=\{1\}
Pourquoi le premier mot ? À cause de la façon dont un modèle lit : chaque mot ne peut regarder que les mots qui le précèdent. Le tout premier token devient ainsi la seule clé que tous les mots suivants voient toujours. Comme le tronc unique d'un arbre : remontez n'importe quelle branche et vous atteignez la même racine. Le premier mot est le seul endroit que tous peuvent atteindre — le drain naturel.
Y jeter l'attention est sans danger : ça ne renvoie presque rien.

Y jeter l'attention est sans danger : ça ne renvoie presque rien.

ot=j=1tαtjvj,αt1 large,  v1 carries little  near no-opo_t=\sum_{j=1}^{t}\alpha_{tj}\,v_j,\qquad \alpha_{t1}\ \text{large},\ \ v_1\ \text{carries little}\ \Rightarrow\ \text{near no-op}
Pourquoi toute cette attention gaspillée n'abîme-t-elle pas la réponse ? Parce que la sortie d'un mot est un mélange des valeurs auxquelles il prête attention — et la valeur du puits ne porte presque aucun signal. On y verse de l'attention et il n'en ressort presque rien. Comme un mur de mousse de studio : criez vers lui, aucun écho ne revient. Le puits absorbe le surplus et ne change rien.
Dans un long échange, n'expulsez jamais le puits.

Dans un long échange, n'expulsez jamais le puits.

{1,,k}sinks  {tw+1,,t}recent window(k4)\underbrace{\{1,\dots,k\}}_{\text{sinks}}\ \cup\ \underbrace{\{t-w+1,\dots,t\}}_{\text{recent window}}\qquad (k\approx 4)
Pour borner sa mémoire, un modèle peut faire glisser une fenêtre et oublier ses mots les plus anciens. Mais qu'il oublie le puits, et la sortie s'effondre en charabia. Le remède est simple : toujours garder les premiers tokens, plus la fenêtre récente. Comme la clé de voûte d'une arche : n'importe quelle autre pierre peut être remplacée, mais ôtez celle-là et toute l'arche s'écroule.
La correction plus propre : laisser l'attention sommer à moins de un.

La correction plus propre : laisser l'attention sommer à moins de un.

αj=esj1+kesk,jαj=kesk1+kesk<1\alpha_j=\dfrac{e^{s_j}}{1+\sum_{k}e^{s_k}},\qquad \sum_{j}\alpha_j=\dfrac{\sum_{k}e^{s_k}}{1+\sum_{k}e^{s_k}}<1
Et si un mot pouvait simplement retenir son attention ? Ajoutez un seul +1 au dénominateur du softmax — une case invisible notée zéro — et les poids peuvent sommer à moins de un. Un mot peut alors ne s'attacher à rien sans inventer de drain. Comme un déversoir au flanc d'un barrage : un canal construit exprès pour envoyer le surplus, sans dommage, nulle part.
Il s'est fait une place pour l'inutile. Était-ce un défaut ?

Il s'est fait une place pour l'inutile. Était-ce un défaut ?

On a failli appeler le puits un bug — un mot noyé sous une attention qu'il ne lit jamais. Mais c'était le modèle qui se ménageait, en silence, un endroit où mettre le rien, pour que le reste demeure net. 🌱 Combien de défauts sont en réalité un esprit qui se fait de la place — laissant un espace vide qui veut simplement dire aucun ?
touchez →balayez ↑ pour approfondirbalayez ↓ pour quitter