Transformers expliqués pour les experts


Les transformers sont des architectures pour les données séquentielles, basées sur le mécanisme d'auto-attention et permettant un traitement parallèle.

L'idée de base est le calcul de poids d'attention qui déterminent dans quelle mesure un élément d'entrée prend en compte les autres éléments.

Formellement, l'attention est calculée comme une somme pondérée des vecteurs de valeur \( V \), où les poids proviennent de la fonction softmax appliquée aux produits scalaires des vecteurs de requête et de clé :

\[ \mathrm{Attention}(Q,K,V) = \mathrm{softmax}\left( rac{QK^T}{\sqrt{d_k}} ight) V \]

Ici, \( Q, K, V \) sont les matrices des requêtes, clés et valeurs, et \( d_k \) est la dimension des vecteurs clés.

L'architecture Transformer se compose d'un encodeur et d'un décodeur, chacun constitué de plusieurs couches avec une attention multi-tête et des réseaux feed-forward.

Cette structure permet d'apprendre des dépendances complexes dans les séquences et a révolutionné le traitement du langage naturel.


Définition :
« Les transformers sont des architectures de réseaux neuronaux qui, grâce à l'auto-attention, permettent un traitement parallèle des séquences et modélisent efficacement les dépendances longues. »


Source :
Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, Ł., & Polosukhin, I. (2017). Attention is All You Need. Advances in Neural Information Processing Systems (NeurIPS).