Intelligence artificielle

ModÚles de langage à grande échelle basés sur le décodeur : Un guide complet

mm
Decoder-Based Large Language Models: A Complete Guide

Les modèles de langage à grande échelle (LLM) ont révolutionné le domaine du traitement automatique des langues (TAL) en démontrant des capacités remarquables dans la génération de texte similaire à celui des humains, la réponse aux questions et l’assistance dans une large gamme de tâches liées au langage. Au cœur de ces modèles puissants se trouve l’architecture de transformateur décodeur-seul, une variante de l’architecture de transformateur originale proposée dans l’article fondateur “Attention is All You Need” de Vaswani et al.

Dans ce guide complet, nous allons explorer les mécanismes internes des LLM basés sur le décodeur, en nous plongeant dans les blocs de construction fondamentaux, les innovations architecturales et les détails d’implémentation qui ont propulsé ces modèles au premier plan de la recherche et des applications en TAL.

L’architecture de transformateur : Un rappel

Avant de plonger dans les spécificités des LLM basés sur le décodeur, il est essentiel de revisiter l’architecture de transformateur, la fondation sur laquelle ces modèles sont construits. Le transformateur a introduit une approche novatrice de modélisation de séquence, en s’appuyant uniquement sur des mécanismes d’attention pour capturer les dépendances à longue portée dans les données, sans avoir besoin de couches récurrentes ou convolutionnelles.

Transformers Architecture

Architecture de transformateurs

L’architecture de transformateur originale se compose de deux principaux composants : un encodeur et un décodeur. L’encodeur traite la séquence d’entrée et génère une représentation contextualisée, qui est ensuite consommée par le décodeur pour produire la séquence de sortie. Cette architecture a été initialement conçue pour des tâches de traduction automatique, où l’encodeur traite la phrase d’entrée dans la langue source, et le décodeur génère la phrase correspondante dans la langue cible.

Auto-attention : La clé du succès du transformateur

Au cœur du transformateur se trouve le mécanisme d’auto-attention, une technique puissante qui permet au modèle de peser et d’agréger les informations provenant de différentes positions dans la séquence d’entrée. Contrairement aux modèles de séquence traditionnels, qui traitent les jetons d’entrée de manière séquentielle, l’auto-attention permet au modèle de capturer les dépendances entre n’importe quelle paire de jetons, indépendamment de leur position dans la séquence.

Multiquery attention

Multiquery attention

L’opération d’auto-attention peut être décomposée en trois principales étapes :

  1. Projections de requête, de clé et de valeur : La séquence d’entrée est projetée dans trois représentations distinctes : requêtes (Q), clés (K) et valeurs (V). Ces projections sont obtenues en multipliant l’entrée avec des matrices de poids apprises.
  2. Calcul des scores d’attention : Pour chaque position dans la séquence d’entrée, des scores d’attention sont calculés en prenant le produit scalaire entre le vecteur de requête correspondant et tous les vecteurs de clé. Ces scores représentent la pertinence de chaque position par rapport à la position actuellement traitée.
  3. Somme pondérée des valeurs : Les scores d’attention sont normalisés à l’aide d’une fonction softmax, et les poids d’attention résultants sont utilisés pour calculer une somme pondérée des vecteurs de valeur, produisant la représentation de sortie pour la position actuelle.

L’attention multi-tête, une variante du mécanisme d’auto-attention, permet au modèle de capturer différents types de relations en calculant des scores d’attention sur plusieurs “têtes” en parallèle, chacune avec son propre ensemble de projections de requête, de clé et de valeur.

Variantes et configurations architecturales

Bien que les principes fondamentaux des LLM basés sur le décodeur restent cohérents, les chercheurs ont exploré diverses variantes et configurations architecturales pour améliorer les performances, l’efficacité et les capacités de généralisation. Dans cette section, nous allons nous plonger dans les différents choix architecturaux et leurs implications.

Types d’architecture

Les LLM basés sur le décodeur peuvent être classés en trois principaux types : encodeur-décodeur, décodeur causal et décodeur de préfixe. Chaque type d’architecture présente des modèles d’attention distincts.

Architecture encodeur-décodeur

Basée sur le modèle de transformateur vanilla, l’architecture encodeur-décodeur se compose de deux piles : un encodeur et un décodeur. L’encodeur utilise des couches d’auto-attention multi-tête empilées pour encoder la séquence d’entrée et générer des représentations latentes. Le décodeur effectue ensuite une attention croisée sur ces représentations pour générer la séquence cible. Bien que cette architecture soit efficace dans diverses tâches de TAL, peu de LLM, tels que Flan-T5, adoptent cette architecture.

Architecture de décodeur causal

L’architecture de décodeur causal incorpore un masque d’attention unidirectionnel, permettant à chaque jeton d’entrée de ne prêter attention qu’aux jetons passés et à lui-même. Les jetons d’entrée et de sortie sont traités dans le même décodeur. Des modèles notables comme GPT-1, GPT-2 et GPT-3 sont construits sur cette architecture, GPT-3 faisant preuve de capacités d’apprentissage en contexte remarquables. De nombreux LLM, y compris OPT, BLOOM et Gopher, ont largement adopté les décodeurs causaux.

Architecture de décodeur de préfixe

Également connue sous le nom d’architecture de décodeur non causal, l’architecture de décodeur de préfixe modifie le mécanisme de masquage des décodeurs causaux pour permettre une attention bidirectionnelle sur les jetons de préfixe et une attention unidirectionnelle sur les jetons générés. Comme l’architecture encodeur-décodeur, les décodeurs de préfixe peuvent encoder la séquence de préfixe de manière bidirectionnelle et prédire les jetons de sortie de manière autoregressive en utilisant des paramètres partagés. Les LLM basés sur les décodeurs de préfixe incluent GLM130B et U-PaLM.

Les trois types d’architecture peuvent être étendus en utilisant la technique d’échelle de mélange d’experts (MoE), qui active de manière éparse un sous-ensemble de poids de réseau de neurones pour chaque entrée. Cette approche a été employée dans des modèles tels que Switch Transformer et GLaM, l’augmentation du nombre d’experts ou de la taille totale des paramètres montrant des améliorations significatives des performances.

Transformateur décodeur-seul : Émbrasser la nature autoregressive

Alors que l’architecture de transformateur originale a été conçue pour des tâches de séquence à séquence comme la traduction automatique, de nombreuses tâches de TAL, telles que la modélisation de langage et la génération de texte, peuvent être formulées comme des problèmes autoregressifs, où le modèle génère un jeton à la fois, conditionné aux jetons précédemment générés.

Entrez le transformateur décodeur-seul, une variante simplifiée de l’architecture de transformateur qui ne conserve que le composant décodeur. Cette architecture est particulièrement bien adaptée aux tâches autoregressives, car elle génère des jetons de sortie un par un, en exploitant les jetons précédemment générés comme contexte d’entrée.

La principale différence entre le transformateur décodeur-seul et le décodeur original du transformateur réside dans le mécanisme d’auto-attention. Dans le cadre du décodeur-seul, l’opération d’auto-attention est modifiée pour empêcher le modèle d’accéder à des jetons futurs, une propriété connue sous le nom de causalité. Cela est réalisé grâce à une technique appelée “auto-attention masquée”, où les scores d’attention correspondant aux positions futures sont définis sur moins l’infini, les masquant efficacement pendant l’étape de normalisation softmax.

Composants architecturaux des LLM basés sur le décodeur

Bien que les principes fondamentaux de l’auto-attention et de l’auto-attention masquée restent les mêmes, les LLM modernes basés sur le décodeur ont introduit plusieurs innovations architecturales pour améliorer les performances, l’efficacité et les capacités de généralisation. Explorons certains des principaux composants et techniques employés dans les LLM les plus récents.

Représentation d’entrée

Avant de traiter la séquence d’entrée, les LLM basés sur le décodeur emploient des techniques de tokenisation et d’intégration pour convertir le texte brut en une représentation numérique adaptée au modèle.

vector embedding

vector embedding

Tokenisation : Le processus de tokenisation convertit le texte d’entrée en une séquence de jetons, qui peuvent être des mots, des sous-mots ou même des caractères individuels, selon la stratégie de tokenisation employée. Les techniques de tokenisation populaires pour les LLM incluent l’encodage par paires de bytes (BPE), SentencePiece et WordPiece. Ces méthodes visent à équilibrer la taille du vocabulaire et la granularité de la représentation, permettant au modèle de gérer efficacement les mots rares ou en dehors du vocabulaire.

Intégration de jetons : Après la tokenisation, chaque jeton est mappé à une représentation vectorielle dense appelée intégration de jeton. Ces intégrations sont apprises pendant le processus d’entraînement et capturent les relations sémantiques et syntaxiques entre les jetons.

Intégrations de position : Les modèles de transformateur traitent l’ensemble de la séquence d’entrée simultanément, sans la notion inhérente de position de jeton présente dans les modèles récurrents. Pour incorporer les informations de position, des intégrations de position sont ajoutées aux intégrations de jetons, permettant au modèle de distinguer les jetons en fonction de leur position dans la séquence. Les premiers LLM ont utilisé des intégrations de position fixes basées sur des fonctions sinusoidales, tandis que les modèles plus récents ont exploré des intégrations de position apprises ou des techniques de codage de position alternatives comme les intégrations de position rotatives.

Blocs d’attention multi-tête

Les blocs de construction fondamentaux des LLM basés sur le décodeur sont les couches d’attention multi-tête, qui effectuent l’opération d’auto-attention masquée décrite précédemment. Ces couches sont empilées plusieurs fois, chaque couche prêtant attention à la sortie de la couche précédente, permettant au modèle de capturer des dépendances et des représentations de plus en plus complexes.

Têtes d’attention : Chaque couche d’attention multi-tête se compose de plusieurs “têtes d’attention“, chacune avec son propre ensemble de projections de requête, de clé et de valeur. Cela permet au modèle de prêter attention à différents aspects de l’entrée simultanément, capturant des relations et des modèles diversifiés.

Connexions résiduelles et normalisation de couche : Pour faciliter l’entraînement de réseaux profonds et atténuer le problème de gradient disparaissant, les LLM basés sur le décodeur emploient des connexions résiduelles et des techniques de normalisation de couche. Les connexions résiduelles ajoutent l’entrée d’une couche à sa sortie, permettant aux gradients de s’écouler plus facilement pendant la rétropropagation. La normalisation de couche aide à stabiliser les activations et les gradients, améliorant encore la stabilité et les performances de l’entraînement.

Couches de feed-forward

En plus des couches d’attention multi-tête, les LLM basés sur le décodeur intègrent des couches de feed-forward, qui appliquent un réseau de neurones feed-forward simple à chaque position dans la séquence. Ces couches introduisent des non-linéarités et permettent au modèle d’apprendre des représentations plus complexes.

Fonctions d’activation : Le choix de la fonction d’activation dans les couches de feed-forward peut avoir un impact significatif sur les performances du modèle. Alors que les premiers LLM reposaient sur la fonction d’activation ReLU largement utilisée, les modèles plus récents ont adopté des fonctions d’activation plus sophistiquées comme la fonction d’activation linéaire à erreur gaussienne (GELU) ou la fonction d’activation SwiGLU, qui ont montré des performances améliorées.

Attention éparse et transformateurs efficaces

Bien que le mécanisme d’auto-attention soit puissant, il comporte une complexité computationnelle quadratique par rapport à la longueur de la séquence, le rendant coûteux en termes de calcul pour les longues séquences. Pour relever ce défi, plusieurs techniques ont été proposées pour réduire les exigences computationnelles et de mémoire de l’auto-attention, permettant un traitement efficace de séquences plus longues.

Attention éparse : Les techniques d’attention éparse, telles que celle employée dans le modèle GPT-3, prêtent attention de manière sélective à un sous-ensemble de positions dans la séquence d’entrée, plutôt que de calculer des scores d’attention pour toutes les positions. Cela peut réduire considérablement la complexité computationnelle tout en maintenant des performances raisonnables.

Attention à fenêtre glissante : Introduite dans le modèle Mistral 7B, l’attention à fenêtre glissante (SWA) est une technique simple mais efficace qui restreint la portée d’attention de chaque jeton à une taille de fenêtre fixe. Cette approche exploite la capacité des couches de transformateur à transmettre des informations à travers plusieurs couches, augmentant efficacement la portée d’attention sans la complexité quadratique de l’auto-attention complète.

Cache de tampon roulant : Pour réduire encore les exigences de mémoire, en particulier pour les longues séquences, le modèle Mistral 7B emploie un cache de tampon roulant. Cette technique stocke et réutilise les vecteurs de clé et de valeur calculés pour une taille de fenêtre fixe, évitant les calculs redondants et minimisant l’utilisation de la mémoire.

Attention de requête groupée : Introduite dans le modèle LLaMA 2, l’attention de requête groupée (GQA) est une variante du mécanisme d’attention multi-requête qui divise les têtes d’attention en groupes, chaque groupe partageant une matrice de clé et de valeur commune. Cette approche équilibre l’efficacité de l’attention multi-requête et les performances de l’auto-attention standard, offrant des temps d’inférence améliorés tout en maintenant des résultats de haute qualité.

Grouped-query attention

Grouped-query attention

Taille de modèle et mise à l’échelle

L’une des caractéristiques définissantes des LLM modernes est leur échelle, le nombre de paramètres allant de milliards à des centaines de milliards. L’augmentation de la taille du modèle a été un facteur crucial pour atteindre les performances de pointe, car les modèles plus grands peuvent capturer des modèles plus complexes et des relations dans les données.

Compte de paramètres : Le nombre de paramètres dans un LLM basé sur le décodeur est principalement déterminé par la dimension d’intégration (d_model), le nombre de têtes d’attention (n_heads), le nombre de couches (n_layers) et la taille du vocabulaire (vocab_size). Par exemple, le modèle GPT-3 a 175 milliards de paramètres, avec d_model = 12288, n_heads = 96, n_layers = 96 et vocab_size = 50257.

Parallélisme de modèle : L’entraînement et le déploiement de tels modèles massifs nécessitent des ressources computationnelles et un matériel spécialisés. Pour surmonter ce défi, des techniques de parallélisme de modèle ont été employées, où le modèle est divisé sur plusieurs GPU ou TPU, chaque appareil étant responsable d’une partie des calculs.

Mélange d’experts : Une autre approche pour mettre à l’échelle les LLM consiste à utiliser l’architecture de mélange d’experts (MoE), qui combine plusieurs modèles d’experts, chacun se spécialisant dans un sous-ensemble spécifique des données ou de la tâche. Le modèle Mixtral 8x7B est un exemple de modèle MoE qui utilise le modèle Mistral 7B comme modèle de base, atteignant des performances supérieures tout en maintenant l’efficacité computationnelle.

Inférence et génération de texte

L’une des principales utilisations des LLM basés sur le décodeur est la génération de texte, où le modèle génère du texte cohérent et ressemblant à celui des humains sur la base d’une invite ou d’un contexte donné.

Décodage autoregressif : Lors de l’inférence, les LLM basés sur le décodeur génèrent du texte de manière autoregressive, prédisant un jeton à la fois en fonction des jetons précédemment générés et de l’invite d’entrée. Ce processus se poursuit jusqu’à ce qu’un critère d’arrêt prédéterminé soit atteint, tel que la longueur de séquence maximale ou la génération d’un jeton de fin de séquence.

Stratégies d’échantillonnage : Pour générer du texte diversifié et réaliste, diverses stratégies d’échantillonnage peuvent être employées, telles que l’échantillonnage top-k, l’échantillonnage top-p (également connu sous le nom d’échantillonnage à noyau) ou la mise à l’échelle de température. Ces techniques contrôlent le compromis entre la diversité et la cohérence du texte généré en ajustant la distribution de probabilité sur le vocabulaire.

Ingénierie d’invite : La qualité et la spécificité de l’invite d’entrée peuvent avoir un impact significatif sur le texte généré. L’ingénierie d’invite, l’art de créer des invites efficaces, est devenue un aspect crucial de l’utilisation des LLM pour diverses tâches, permettant aux utilisateurs de guider le processus de génération du modèle et d’obtenir des sorties désirées.

Décodage avec rétroaction humaine : Pour améliorer encore la qualité et la cohérence du texte généré, des techniques telles que l’Apprentissage par renforcement à partir de la rétroaction humaine (RLHF) ont été employées. Dans cette approche, des évaluateurs humains fournissent une rétroaction sur le texte généré par le modèle, qui est ensuite utilisée pour affiner le modèle, l’alignant efficacement sur les préférences humaines et améliorant ses sorties.

Avancées et directions futures

Le domaine des LLM basés sur le décodeur évolue rapidement, avec de nouvelles recherches et avancées qui continuent de repousser les limites de ce que ces modèles peuvent accomplir. Voici quelques avancées notables et des directions potentielles pour l’avenir :

Variantes de transformateur efficaces : Alors que l’attention éparse et l’attention à fenêtre glissante ont réalisé des progrès significatifs dans l’amélioration de l’efficacité des LLM basés sur le décodeur, les chercheurs explorent activement des architectures de transformateur alternatives et des mécanismes d’attention pour réduire encore les exigences computationnelles tout en maintenant ou améliorant les performances.

LLM multimodaux : L’extension des capacités des LLM au-delà du texte, les modèles multimodaux visent à intégrer plusieurs modalités, telles que des images, de l’audio ou de la vidéo, dans un cadre unifié. Cela ouvre des possibilités excitantes pour des applications telles que la légendage d’images, la réponse à des questions visuelles et la génération de contenu multimédia.

Génération de texte contrôlable : Permettre un contrôle fin des sorties de texte généré est une direction importante mais difficile pour les LLM. Des techniques telles que la génération de texte contrôlée et l’ajustement d’invite visent à fournir aux utilisateurs un contrôle plus granulaire sur divers attributs du texte généré, tels que le style, le ton ou des exigences de contenu spécifiques.

Conclusion

Les LLM basés sur le décodeur sont devenus une force transformative dans le domaine du traitement automatique des langues, repoussant les limites de ce qui est possible en termes de génération et de compréhension du langage. De leurs humbles débuts en tant que variante simplifiée de l’architecture de transformateur, ces modèles ont évolué en systèmes hautement sophistiqués et puissants, exploitant des techniques et des innovations architecturales de pointe.

Alors que nous continuons à explorer et à faire progresser les LLM basés sur le décodeur, nous pouvons nous attendre à voir encore plus de réalisations remarquables dans les tâches liées au langage, ainsi que l’intégration de ces modèles dans une large gamme d’applications et de domaines. Cependant, il est crucial de prendre en compte les considérations éthiques, les défis de compréhension et les préjugés potentiels qui peuvent surgir de la mise en œuvre généralisée de ces modèles puissants.

En restant à la pointe de la recherche, en favorisant la collaboration ouverte et en maintenant un engagement fort en faveur du développement responsable de l’IA, nous pouvons débloquer tout le potentiel des LLM basés sur le décodeur tout en nous assurant qu’ils sont développés et utilisés de manière sûre, éthique et bénéfique pour la société.

J'ai passé les cinq derniÚres années à me plonger dans le monde fascinant de l'apprentissage automatique et de l'apprentissage profond. Ma passion et mon expertise m'ont conduit à contribuer à plus de 50 projets de génie logiciel divers, avec un accent particulier sur l'IA/ML. Ma curiosité permanente m'a également attiré vers le traitement automatique des langues, un domaine que je suis impatient d'explorer plus en détail.