Intelligence Artificielle
La PNL augmente avec les modèles de transformateurs | Une analyse complète de T5, BERT et GPT

Le traitement du langage naturel (NLP) a connu certaines des avancées les plus marquantes de ces dernières années, principalement en raison de l'architecture du transformateur. Ces avancées ont non seulement amélioré les capacités des machines à comprendre et à générer le langage humain, mais ont également redéfini le paysage de nombreuses applications, des moteurs de recherche à l’IA conversationnelle.
Pour apprécier pleinement l’importance des transformateurs, nous devons d’abord revenir sur les prédécesseurs et les éléments constitutifs qui ont jeté les bases de cette architecture révolutionnaire.
Premières techniques de PNL : les fondations avant les transformateurs
Incorporations de mots : de One-Hot à Word2Vec
Dans les approches PNL traditionnelles, la représentation des mots était souvent littérale et manquait de toute forme de compréhension sémantique ou syntaxique. L'encodage à chaud est un excellent exemple de cette limitation.
Le codage à chaud est un processus par lequel les variables catégorielles sont converties en une représentation vectorielle binaire où un seul bit est « chaud » (mis à 1) tandis que tous les autres sont « froids » (mis à 0). Dans le contexte de la PNL, chaque mot d'un vocabulaire est représenté par des vecteurs uniques où chaque vecteur correspond à la taille du vocabulaire, et chaque mot est représenté par un vecteur avec uniquement des 0 et un 1 à l'index correspondant à ce mot dans la liste de vocabulaire.
Exemple d'encodage One-Hot
Supposons que nous ayons un petit vocabulaire avec seulement cinq mots : [« roi », « reine », « homme », « femme », « enfant »]. Les vecteurs de codage one-hot pour chaque mot ressembleraient à ceci :
- "roi" -> [1, 0, 0, 0, 0]
- "reine" -> [0, 1, 0, 0, 0]
- "homme" -> [0, 0, 1, 0, 0]
- "femme" -> [0, 0, 0, 1, 0]
- "enfant" -> [0, 0, 0, 0, 1]
Représentation mathématique
Si on note comme la taille de notre vocabulaire et comme la représentation vectorielle ponctuelle du ième mot du vocabulaire, la représentation mathématique de serait:
où la ième position est 1 et toutes les autres positions sont 0.
L’inconvénient majeur du codage one-hot est qu’il traite chaque mot comme une entité isolée, sans relation avec les autres mots. Il en résulte des vecteurs clairsemés et de grande dimension qui ne capturent aucune information sémantique ou syntaxique sur les mots.
L’introduction des incorporations de mots, notamment Word2Vec, a été un moment charnière dans la PNL. Développé par une équipe de Google dirigée par Tomas Mikolov en 2013, Word2Vec représentait les mots dans un espace vectoriel dense, capturant les relations syntaxiques et sémantiques des mots en fonction de leur contexte au sein de grands corpus de texte.
Contrairement à l'encodage à chaud, Word2Vec produit des vecteurs denses, généralement comportant des centaines de dimensions. Les mots qui apparaissent dans des contextes similaires, tels que « roi » et « reine », auront des représentations vectorielles plus proches les unes des autres dans l'espace vectoriel.
À titre d'illustration, supposons que nous ayons entraîné un modèle Word2Vec et que nous représentions maintenant les mots dans un espace tridimensionnel hypothétique. Les représentations vectorielles continues (généralement plus que tridimensionnelles, mais réduites ici pour plus de simplicité) pourraient ressembler à ceci :
- "roi" -> [0.2, 0.1, 0.9]
- "reine" -> [0.21, 0.13, 0.85]
- "homme" -> [0.4, 0.3, 0.2]
- "femme" -> [0.41, 0.33, 0.27]
- "enfant" -> [0.5, 0.5, 0.1]
Bien que ces chiffres soient fictifs, ils illustrent à quel point des mots similaires ont des vecteurs similaires.
Représentation mathématique
Si nous représentons l'intégration Word2Vec d'un mot comme , et notre espace d'intégration a dimensions, alors peut être représenté comme :
Relations sémantiques
Word2Vec peut même capturer des relations complexes, telles que des analogies. Par exemple, la célèbre relation capturée par les intégrations Word2Vec est :
vecteur("roi") – vecteur("homme") + vecteur("femme")≈vecteur("reine")
Cela est possible car Word2Vec ajuste les vecteurs de mots pendant la formation afin que les mots partageant des contextes communs dans le corpus soient positionnés étroitement dans l'espace vectoriel.
Word2Vec utilise deux architectures principales pour produire une représentation distribuée des mots : Continuous Bag-of-Words (CBOW) et Skip-Gram. CBOW prédit un mot cible à partir des mots contextuels environnants, tandis que Skip-Gram fait l'inverse, prédisant les mots contextuels à partir d'un mot cible. Cela a permis aux machines de commencer à comprendre l’utilisation et la signification des mots de manière plus nuancée.
Modélisation de séquence : RNN et LSTM
Au fur et à mesure que le domaine progressait, l'accent s'est déplacé vers la compréhension des séquences de texte, ce qui était crucial pour des tâches telles que la traduction automatique, le résumé de texte et l'analyse des sentiments. Les réseaux de neurones récurrents (RNN) sont devenus la pierre angulaire de ces applications en raison de leur capacité à gérer des données séquentielles en conservant une forme de mémoire.
Cependant, les RNN n’étaient pas sans limites. Ils ont été confrontés à des dépendances à long terme en raison du problème du gradient de disparition, où les informations se perdent au fil de longues séquences, ce qui rend difficile l'apprentissage des corrélations entre des événements distants.
Les réseaux de mémoire à long terme et à court terme (LSTM), introduits par Sepp Hochreiter et Jürgen Schmidhuber en 1997, a résolu ce problème avec une architecture plus sophistiquée. Les LSTM ont des portes qui contrôlent le flux d'informations : la porte d'entrée, la porte d'oubli et la porte de sortie. Ces portes déterminent quelles informations sont stockées, mises à jour ou supprimées, permettant au réseau de préserver les dépendances à long terme et d'améliorer considérablement les performances d'un large éventail de tâches NLP.
L'architecture du transformateur
Le paysage du PNL a subi une transformation radicale avec l'introduction du modèle de transformateur dans l'article de référence « Attention is All You Need » de Vaswani et al. en 2017. L'architecture du transformateur s'écarte du traitement séquentiel des RNN et des LSTM et utilise à la place un mécanisme appelé « auto-attention » pour peser l'influence de différentes parties des données d'entrée.
L'idée principale du transformateur est qu'il peut traiter l'intégralité des données d'entrée en une seule fois, plutôt que séquentiellement. Cela permet une bien plus grande parallélisation et, par conséquent, une augmentation significative de la vitesse d'entraînement. Le mécanisme d’auto-attention permet au modèle de se concentrer sur différentes parties du texte au fur et à mesure de son traitement, ce qui est crucial pour comprendre le contexte et les relations entre les mots, quelle que soit leur position dans le texte.
Encodeur et décodeur dans les transformateurs :
Dans le modèle original du Transformer, comme décrit dans l'article «L'attention est tout ce dont vous avez besoin» de Vaswani et al., l'architecture est divisée en deux parties principales : l'encodeur et le décodeur. Les deux parties sont composées de couches qui ont la même structure générale mais servent des objectifs différents.
Codeur:
- RôleLe rôle de l'encodeur est de traiter les données d'entrée et de créer une représentation qui capture les relations entre les éléments (comme les mots d'une phrase). Cette partie du transformateur ne génère aucun nouveau contenu ; elle transforme simplement l'entrée en un état exploitable par le décodeur.
- Fonctionnalités: Chaque couche d'encodeur dispose de mécanismes d'auto-attention et de réseaux neuronaux à action directe. Le mécanisme d'auto-attention permet à chaque position de l'encodeur de s'occuper de toutes les positions de la couche précédente de l'encodeur ; il peut ainsi apprendre le contexte autour de chaque mot.
- Intégrations contextuelles: La sortie de l'encodeur est une série de vecteurs qui représentent la séquence d'entrée dans un espace de grande dimension. Ces vecteurs sont souvent appelés intégrations contextuelles car ils codent non seulement les mots individuels mais également leur contexte dans la phrase.
Décodeur:
- RôleLe rôle du décodeur est de générer les données de sortie séquentiellement, une partie à la fois, en fonction des données reçues de l'encodeur et de ce qu'il a généré jusqu'à présent. Il est conçu pour des tâches comme la génération de texte, où l'ordre de génération est crucial.
- Fonctionnalités: Les couches de décodeur contiennent également des mécanismes d'auto-attention, mais ils sont masqués pour empêcher les positions de s'occuper des positions suivantes. Cela garantit que la prédiction pour une position particulière ne peut dépendre que de sorties connues aux positions antérieures. De plus, les couches de décodeur incluent un deuxième mécanisme d'attention qui s'occupe de la sortie du codeur, intégrant le contexte de l'entrée dans le processus de génération.
- Capacités de génération séquentielle: Il s'agit de la capacité du décodeur à générer une séquence un élément à la fois, en s'appuyant sur ce qu'il a déjà produit. Par exemple, lors de la génération de texte, le décodeur prédit le mot suivant en fonction du contexte fourni par l'encodeur et de la séquence de mots qu'il a déjà générée.
Chacune de ces sous-couches au sein de l'encodeur et du décodeur est essentielle à la capacité du modèle à gérer des tâches NLP complexes. Le mécanisme d'attention multi-têtes, en particulier, permet au modèle de se concentrer sélectivement sur différentes parties de la séquence, offrant ainsi une compréhension approfondie du contexte.
Modèles populaires exploitant les transformateurs
Suite au succès initial du modèle de transformateur, il y a eu une explosion de nouveaux modèles construits sur son architecture, chacun avec ses propres innovations et optimisations pour différentes tâches :
BERT (Représentations d'encodeur bidirectionnel à partir de transformateurs): Introduit par Google en 2018, BERT a révolutionné la manière dont les informations contextuelles sont intégrées dans les représentations linguistiques. En pré-entraînant sur un vaste corpus de texte avec un modèle de langage masqué et la prédiction de la phrase suivante, BERT capture de riches contextes bidirectionnels et a obtenu des résultats de pointe sur un large éventail de tâches de PNL.
T5 (Transformateur de transfert de texte à texte): Présenté par Google en 2020, T5 recadre toutes les tâches PNL comme un problème texte-texte, en utilisant un format texte unifié. Cette approche simplifie le processus d'application du modèle à diverses tâches, notamment la traduction, le résumé et la réponse aux questions.
GPT (Transformateur Génératif Préformé): Développé par OpenAI, la gamme de modèles GPT a commencé avec GPT-1 et a atteint GPT-4 d'ici 2023. Ces modèles sont pré-entraînés à l'aide d'un apprentissage non supervisé sur de grandes quantités de données textuelles et affinés pour diverses tâches. Leur capacité à générer des textes cohérents et contextuellement pertinents les a rendus très influents dans les applications académiques et commerciales de l’IA.
Voici une comparaison plus approfondie des modèles T5, BERT et GPT dans différentes dimensions :
1. Tokenisation et vocabulaire
- BERT: Utilise la tokenisation WordPièce avec une taille de vocabulaire d'environ 30,000 XNUMX jetons.
- GPT: Utilise le codage par paires d'octets (BPE) avec une grande taille de vocabulaire (par exemple, GPT-3 a une taille de vocabulaire de 175,000 XNUMX).
- T5: utilise la tokenisation SentencePièce qui traite le texte comme brut et ne nécessite pas de mots pré-segmentés.
2. Objectifs de pré-formation
- BERT: Modélisation du langage masqué (MLM) et prédiction de la phrase suivante (NSP).
- GPT: Modélisation du langage causal (CLM), où chaque jeton prédit le jeton suivant dans la séquence.
- T5: utilise un objectif de débruitage où des étendues aléatoires de texte sont remplacées par un jeton sentinelle et le modèle apprend à reconstruire le texte original.
3. Représentation d'entrée
- BERT: Les intégrations de jetons, de segments et de position sont combinées pour représenter l'entrée.
- GPT : Les intégrations de jetons et de position sont combinées (pas d'intégration de segments car elles ne sont pas conçues pour les tâches de paires de phrases).
- T5 : Uniquement les intégrations de jetons avec des encodages de position relative ajoutés pendant les opérations d'attention.
4. Mécanisme d'attention
- BERT: utilise des codages de position absolus et permet à chaque jeton de s'occuper de tous les jetons à gauche et à droite (attention bidirectionnelle).
- GPT: utilise également des codages de position absolus mais restreint l'attention aux jetons précédents uniquement (attention unidirectionnelle).
- T5: Implémente une variante du transformateur qui utilise des biais de position relative au lieu d'intégrations de position.
5. Architecture du modèle
- BERT : Architecture uniquement encodeur avec plusieurs couches de blocs de transformateur.
- GPT: Architecture uniquement décodeur, également à plusieurs couches mais conçue pour les tâches génératives.
- T5: Architecture codeur-décodeur, où le codeur et le décodeur sont composés de couches de transformateur.
6. Approche de réglage fin
- BERT: adapte les états cachés finaux du modèle pré-entraîné pour les tâches en aval avec des couches de sortie supplémentaires si nécessaire.
- GPT: ajoute une couche linéaire au-dessus du transformateur et affine la tâche en aval en utilisant le même objectif de modélisation de langage causal.
- T5: convertit toutes les tâches dans un format texte en texte, où le modèle est affiné pour générer la séquence cible à partir de la séquence d'entrée.
7. Données et échelle de formation
- BERT: Formé sur BooksCorpus et Wikipedia anglais.
- GPT: GPT-2 et GPT-3 ont été formés sur divers ensembles de données extraits d'Internet, GPT-3 étant formé sur un corpus encore plus vaste appelé Common Crawl.
- T5: Formé sur le « Colossal Clean Crawled Corpus », qui est une version grande et propre du Common Crawl.
8. Gestion du contexte et de la bidirectionnalité
- BERT: Conçu pour comprendre le contexte dans les deux sens simultanément.
- GPT: Formé à comprendre le contexte dans une direction avant (de gauche à droite).
- T5: Peut modéliser un contexte bidirectionnel dans l'encodeur et unidirectionnel dans le décodeur, approprié pour les tâches séquence à séquence.
9. Adaptabilité aux tâches en aval
- BERT: Nécessite des couches de tête spécifiques à la tâche et un réglage fin pour chaque tâche en aval.
- GPT: Est de nature générative et peut être incité à effectuer des tâches avec des changements minimes dans sa structure.
- T5: Traite chaque tâche comme un problème « texte à texte », ce qui la rend intrinsèquement flexible et adaptable à de nouvelles tâches.
10. Interprétabilité et explicabilité
- BERT: La nature bidirectionnelle fournit de riches intégrations contextuelles mais peut être plus difficile à interpréter.
- GPT: Le contexte unidirectionnel est peut-être plus simple à suivre mais n'a pas la profondeur du contexte bidirectionnel.
- T5: Le cadre codeur-décodeur fournit une séparation claire des étapes de traitement mais peut être complexe à analyser en raison de sa nature générative.
L'impact des transformateurs sur la PNL
Les transformateurs ont révolutionné le domaine de la PNL en permettant aux modèles de traiter des séquences de données en parallèle, ce qui a considérablement augmenté la vitesse et l'efficacité de la formation des grands réseaux neuronaux. Ils ont introduit le mécanisme d’auto-attention, permettant aux modèles d’évaluer l’importance de chaque partie des données d’entrée, quelle que soit la distance au sein de la séquence. Cela a conduit à des améliorations sans précédent dans un large éventail de tâches de PNL, notamment la traduction, la réponse aux questions et la synthèse de texte.
La recherche continue de repousser les limites de ce que les modèles basés sur des transformateurs peuvent réaliser. GPT-4 et ses contemporains sont non seulement plus grands, mais également plus efficaces et plus performants grâce aux progrès de l'architecture et des méthodes de formation. Des techniques telles que l'apprentissage en quelques étapes, où les modèles effectuent des tâches avec un minimum d'exemples, et des méthodes permettant un apprentissage par transfert plus efficace sont à l'avant-garde de la recherche actuelle.
Les modèles de langage comme ceux basés sur des transformateurs apprennent à partir de données qui peuvent contenir des biais. Les chercheurs et les praticiens travaillent activement pour identifier, comprendre et atténuer ces préjugés. Les techniques vont des ensembles de données de formation organisés aux ajustements post-formation visant l'équité et la neutralité.













