Appeler SMS WhatsApp Email

Définition Transformer Architecture

Architecture Transformer

L’architecture Transformer est un type de modèle d’apprentissage profond, introduit en 2017, qui a révolutionné le domaine du traitement automatique du langage naturel (TALN) et s’est depuis étendu à d’autres domaines tels que la vision par ordinateur et la bio-informatique. Elle se distingue principalement par son utilisation du mécanisme d’auto-attention, qui lui permet de pondérer l’importance des différentes parties d’une séquence d’entrée lors du traitement de l’information, sans nécessiter de traitement séquentiel comme les architectures récurrentes précédentes.

Au cœur de l’architecture Transformer se trouvent plusieurs concepts fondamentaux et principes essentiels. Le plus important est le mécanisme d’auto-attention (self-attention). Contrairement aux réseaux de neurones récurrents (RNN) qui traitent les données séquentiellement, l’auto-attention permet au modèle de considérer toutes les parties d’une séquence d’entrée simultanément. Pour chaque élément de la séquence, l’auto-attention calcule un score d’attention par rapport à tous les autres éléments de la même séquence. Ce score détermine l’influence que chaque élément aura sur la représentation de l’élément courant. Techniquement, cela est réalisé en projetant chaque élément d’entrée en trois vecteurs : une requête (Query), une clé (Key) et une valeur (Value). Les scores d’attention sont calculés en comparant la requête d’un élément avec les clés de tous les autres éléments, souvent via un produit scalaire. Ces scores sont ensuite normalisés (généralement avec une fonction softmax) et utilisés pour pondérer les vecteurs Valeur, dont la somme pondérée devient la nouvelle représentation de l’élément.

Pour capturer différentes relations et aspects de l’information en parallèle, l’architecture Transformer utilise l’attention multi-têtes (multi-head attention). Ce mécanisme exécute plusieurs calculs d’attention en parallèle, chacun avec des projections linéaires différentes pour les requêtes, clés et valeurs. Les sorties de ces têtes d’attention indépendantes sont ensuite concaténées et à nouveau projetées linéairement pour produire la sortie finale. Cela permet au modèle d’apprendre conjointement des informations provenant de différents sous-espaces de représentation et à différentes positions.

Étant donné que le mécanisme d’auto-attention ne prend pas intrinsèquement en compte l’ordre des éléments dans une séquence (il est invariant à la permutation), l’architecture Transformer incorpore un encodage positionnel (positional encoding). Ce sont des vecteurs qui sont ajoutés aux représentations d’entrée (embeddings) des tokens pour fournir des informations sur leur position absolue ou relative dans la séquence. Différentes fonctions, sinusoïdales ou apprises, peuvent être utilisées pour générer ces encodages.

La structure originale du Transformer est une architecture encodeur-décodeur, typiquement utilisée pour des tâches de séquence à séquence comme la traduction automatique. L’encodeur traite la séquence d’entrée et produit une série de représentations contextuelles. Le décodeur prend ensuite ces représentations et génère la séquence de sortie, élément par élément, en utilisant également un mécanisme d’attention sur les sorties de l’encodeur (attention encodeur-décodeur) et une auto-attention sur les éléments déjà générés de la séquence de sortie. Chaque encodeur et décodeur est composé d’un empilement de plusieurs blocs identiques (N couches). Chaque bloc d’encodeur contient typiquement une couche d’auto-attention multi-têtes suivie d’une couche de réseau neuronal feed-forward positionnel. Chaque bloc de décodeur insère une couche d’attention multi-têtes supplémentaire qui effectue une attention sur la sortie de l’encodeur.

Pour faciliter l’entraînement de ces réseaux profonds, deux autres composants sont cruciaux : les connexions résiduelles (residual connections) et la normalisation de couche (layer normalization). Les connexions résiduelles, inspirées des ResNets, ajoutent l’entrée d’une sous-couche à sa sortie, aidant à prévenir le problème de la disparition du gradient. La normalisation de couche est appliquée après chaque sous-couche (attention et feed-forward) pour stabiliser les activations et accélérer la convergence. Enfin, avant d’être traitées par le Transformer, les séquences de texte sont d’abord converties en une séquence de tokens numériques par un processus de tokenisation, puis ces tokens sont transformés en vecteurs denses appelés embeddings.

L’importance et l’impact de l’architecture Transformer dans le domaine de l’intelligence artificielle, et plus particulièrement du TALN, sont immenses. Elle a permis des avancées significatives dans la compréhension et la génération du langage naturel, surpassant largement les performances des architectures précédentes comme les RNN et les LSTM sur de nombreuses tâches. L’un de ses avantages majeurs est sa capacité à être parallélisée beaucoup plus efficacement que les RNN, car le calcul de l’attention pour chaque élément peut être effectué indépendamment des autres pour une grande partie, ce qui a permis d’entraîner des modèles beaucoup plus grands sur des ensembles de données massifs. Cela a conduit à l’émergence de modèles de fondation (foundation models) ou de grands modèles de langage (LLM), tels que BERT et GPT, qui sont pré-entraînés sur de vastes corpus de texte et peuvent ensuite être adaptés à une multitude de tâches spécifiques avec peu de données supplémentaires (fine-tuning). La capacité du Transformer à capturer des dépendances contextuelles à longue portée dans le texte, une faiblesse des RNN, est une autre raison clé de son succès. Son influence s’étend désormais au-delà du TALN, avec des adaptations réussies en vision par ordinateur (Vision Transformers ou ViT), en traitement de la parole, en biologie computationnelle (par exemple, pour la prédiction de la structure des protéines comme avec AlphaFold2), et dans d’autres domaines traitant des données séquentielles ou structurées.

Les applications pratiques et les utilisations courantes de l’architecture Transformer sont nombreuses et variées. En traduction automatique, des modèles comme Google Translate utilisent des Transformers pour fournir des traductions plus fluides et précises entre de nombreuses langues. Dans la génération de texte, des modèles comme la série GPT (Generative Pre-trained Transformer) d’OpenAI sont capables de produire du texte cohérent et contextuellement pertinent, utilisé pour la rédaction d’articles, la création de dialogues, la complétion de code, et plus encore. Les systèmes de réponse aux questions, qui peuvent comprendre une question posée en langage naturel et trouver ou générer une réponse pertinente à partir d’un contexte donné, s’appuient fortement sur les Transformers. La classification de texte, telle que l’analyse de sentiments, la détection de spam, ou la catégorisation de sujets, bénéficie également de la richesse des représentations apprises par ces modèles. Le résumé de texte, qu’il soit extractif (sélectionnant des phrases importantes) ou abstractif (générant un nouveau résumé), a été grandement amélioré. D’autres applications en TALN incluent la reconnaissance d’entités nommées (NER), la modélisation du langage masqué (comme BERT, utilisé pour comprendre le contexte bidirectionnel d’un mot), et la vérification de faits. En vision par ordinateur, les Vision Transformers (ViT) ont montré des performances compétitives avec les réseaux de neurones convolutifs (CNN) sur des tâches de classification d’images, et des variantes sont utilisées pour la détection d’objets et la segmentation sémantique. Dans le domaine de la recommandation, les Transformers peuvent modéliser les séquences d’interactions des utilisateurs pour prédire leurs préférences futures.

Il existe plusieurs nuances, interprétations et variations de l’architecture Transformer. Les modèles peuvent être classés en trois grandes familles : les modèles encodeur-seul (encoder-only), les modèles décodeur-seul (decoder-only), et les modèles encodeur-décodeur. Les modèles encodeur-seul, comme BERT, RoBERTa, et ALBERT, sont principalement utilisés pour des tâches de compréhension du langage (Natural Language Understanding – NLU) où une représentation riche de l’entrée est nécessaire, comme la classification de texte ou l’extraction de réponses. Les modèles décodeur-seul, comme la série GPT et XLNet, sont auto-régressifs et excellents pour la génération de texte. Ils traitent le contexte précédent pour prédire le token suivant. Les modèles encodeur-décodeur, fidèles à l’architecture originale « Attention Is All You Need », comme T5 et BART, sont bien adaptés aux tâches de séquence à séquence telles que la traduction ou le résumé abstractif.
Face à la complexité quadratique de l’auto-attention par rapport à la longueur de la séquence, de nombreuses recherches ont porté sur des variantes d’attention plus efficaces. Celles-ci incluent l’attention éparse (sparse attention) qui limite le nombre de paires clé-valeur auxquelles chaque requête assiste, comme dans le Longformer ou le BigBird, permettant de traiter des séquences beaucoup plus longues. Des Transformers linéaires, qui réduisent la complexité à O(N), ont également été proposés. L’application des Transformers à la vision (ViT) a nécessité une adaptation où les images sont divisées en patchs, qui sont ensuite traités comme une séquence de tokens. Des travaux explorent également l’utilisation des Transformers pour d’autres modalités de données, y compris l’audio, la vidéo, et même les données tabulaires, souvent en trouvant des moyens appropriés de « tokeniser » ces données.

Pour une compréhension holistique, il est utile de connaître les concepts étroitement liés à l’architecture Transformer. Avant les Transformers, les réseaux de neurones récurrents (RNN), et leurs variantes plus sophistiquées comme les Long Short-Term Memory (LSTM) et les Gated Recurrent Unit (GRU), étaient les architectures dominantes pour le traitement des données séquentielles. Les Transformers ont été conçus pour surmonter certaines de leurs limitations, notamment le traitement séquentiel et la difficulté à gérer les dépendances à longue portée. Le concept d’attention lui-même est plus général et avait été utilisé avec les RNN avant d’être le composant central des Transformers. Les représentations de mots (word embeddings) telles que Word2Vec, GloVe, et FastText, qui convertissent les mots en vecteurs denses, sont des précurseurs et des composants souvent utilisés à l’entrée des Transformers. L’essor des Transformers est intimement lié à celui des modèles de langage pré-entraînés (Pre-trained Language Models – PLMs) et au paradigme du transfert d’apprentissage (transfer learning), où un modèle est d’abord entraîné sur une tâche générale avec beaucoup de données, puis adapté à des tâches spécifiques. Il n’y a pas d’antonymes directs au terme « architecture Transformer », mais on pourrait le contraster avec des approches algorithmiques non basées sur l’apprentissage profond pour le TALN, ou avec des architectures neuronales qui ne s’appuient pas sur le mécanisme d’attention pour la modélisation séquentielle.

L’origine de l’architecture Transformer remonte à la publication de l’article « Attention Is All You Need » par Ashish Vaswani et ses collègues de Google Brain/Research et de l’Université de Toronto en 2017. La principale motivation derrière cette nouvelle architecture était de se passer entièrement des mécanismes de récurrence et de convolution pour le traitement des séquences, et de s’appuyer exclusivement sur l’attention pour établir des dépendances entre les entrées et les sorties. L’objectif était de permettre une meilleure parallélisation et de réduire le temps d’entraînement, tout en améliorant la capacité à modéliser les relations à longue distance dans les séquences. Depuis sa publication, l’architecture Transformer a connu une adoption et une évolution fulgurantes. Des modèles influents comme BERT (Bidirectional Encoder Representations from Transformers) de Google en 2018, puis la série GPT d’OpenAI (GPT-2 en 2019, GPT-3 en 2020, et les versions ultérieures) ont démontré des capacités de plus en plus impressionnantes, stimulant une recherche intense et une adoption rapide dans l’industrie. Son succès dans le TALN a ensuite inspiré son application à d’autres domaines, marquant une étape importante dans l’évolution de l’apprentissage profond.

L’architecture Transformer présente de nombreux avantages, mais aussi des inconvénients, des défis et des limitations. Parmi ses avantages majeurs, on compte sa capacité à être hautement parallélisée, ce qui permet d’entraîner des modèles très volumineux sur d’énormes quantités de données, bien plus rapidement que les architectures séquentielles comme les RNN. Elle excelle dans la capture des dépendances contextuelles à longue portée, ce qui est crucial pour la compréhension fine du langage. Les Transformers ont atteint des performances de pointe (state-of-the-art) dans une vaste gamme de tâches et ont démontré d’excellentes capacités de généralisation grâce au pré-entraînement et au transfert d’apprentissage.
Cependant, l’un des principaux inconvénients est la complexité computationnelle de l’auto-attention, qui est quadratique (O(n^2)) par rapport à la longueur de la séquence d’entrée ‘n’. Cela rend le traitement de très longues séquences (par exemple, des documents entiers ou des génomes) coûteux en termes de calcul et de mémoire. L’entraînement de grands modèles Transformer nécessite des ressources de calcul considérables (GPU/TPU) et d’énormes ensembles de données, ce qui peut limiter leur accessibilité. De plus, les Transformers, comme beaucoup de modèles d’apprentissage profond, sont souvent considérés comme des « boîtes noires », car il est difficile d’interpréter précisément comment ils parviennent à leurs décisions. Les encodages positionnels, bien qu’efficaces, sont parfois perçus comme une solution moins « naturelle » à l’ordre séquentiel que la structure inhérente des RNN.

Les défis actuels et les limitations associés aux Transformers incluent donc la recherche de mécanismes d’attention plus efficaces pour gérer les très longues séquences sans sacrifier les performances. La réduction de l’empreinte mémoire et calculatoire des modèles, ainsi que l’amélioration de leur efficacité énergétique, sont des axes de recherche importants (par exemple, via la distillation de modèles, la quantification ou des architectures plus légères). L’amélioration de l’interprétabilité et de l’explicabilité des décisions prises par les Transformers reste un défi majeur. Enfin, comme tous les modèles entraînés sur de grandes quantités de données textuelles issues d’Internet, les Transformers peuvent hériter et amplifier les biais (sociaux, de genre, raciaux, etc.) présents dans ces données, ce qui soulève des préoccupations éthiques importantes nécessitant une attention continue.