Un aperçu des modèles de langage basés sur les transformateurs
Dans cet article, nous nous concentrons sur les modèles basés sur les transformateurs qui répondent aux limitations précédentes. Nous explorerons le mécanisme d’attention et les composants des transformateurs, et comment ils sont appliqués dans des modèles tels que USE, BERT et GPT.
Mécanisme d’attention et transformateurs
Les mécanismes d’attention permettent aux modèles de faire des prédictions en considérant l’ensemble de l’entrée et en se concentrant sélectivement sur des parties spécifiques. Cette focalisation est guidée par des poids appris. Par exemple, dans la phrase “Le renard a vu un lapin. Il avait très faim, alors il a essayé de l’attraper, mais il l’a esquivé juste à temps,” l’attention aide à déterminer à quel “il” se réfère, le lapin ou le renard.
Les transformateurs utilisent une structure encodeur-décodeur exploitant le mécanisme d’attention. L’encodeur traite l’entrée en se concentrant sélectivement sur différentes parties et transmet ces codages au décodeur. La Figure 1 montre une architecture simplifiée d’un transformateur encodeur. Les mots sont d’abord convertis en nombres via des méthodes telles que le one-hot encoding ou les embeddings Word2Vec. Cette séquence est alimentée à une couche de self-attention, qui utilise des parties de l’entrée pour prédire une autre partie. Les résultats sont transmis à un réseau neuronal feed-forward, créant des informations encodées contextuellement pour le décodeur.
Le décodeur est similaire mais inclut une couche d’attention encodeur-décodeur pour se concentrer sur les parties importantes de la séquence d’entrée. Contrairement aux réseaux neuronaux récurrents (par exemple, les LSTM), les transformateurs lisent tous les mots d’entrée simultanément, permettant ainsi la parallélisation et le traitement de corpus plus volumineux.
Universal Sentence Encoder (USE)
Les modèles USE abordent deux limitations principales : la prédiction du mot suivant/précédent limite l’application dans les tâches en aval, et les embeddings de mots ne capturent pas l’information contextuelle des phrases entières. Google Research a introduit des modèles USE utilisant des transformateurs et des Deep Averaging Networks (DAN) optimisés pour les embeddings de phrases à travers plusieurs tâches.
Le modèle USE basé sur les transformateurs empile six encodeurs de transformateurs, qui tokenisent les entrées et calculent les sorties séquentiellement. Les sorties finales forment l’embedding de la phrase. DAN, en revanche, fait la moyenne des représentations vectorielles des mots d’entrée et de leurs bigrammes, les passant à travers des couches feed-forward pour former l’embedding de la phrase.
Les modèles USE emploient l’apprentissage multitâche, combinant des ensembles de données non supervisées et supervisées comme Wikipédia, les actualités web et les forums de discussion. Ils sont entraînés pour des tâches telles que skip-thought (prédiction des phrases environnantes), entrée-réponse conversationnelle et inférence en langue naturelle (classification des paires de phrases comme neutres, d’entailment ou de contradiction). Ces modèles sont affinés pour des tâches spécifiques telles que l’analyse des sentiments et la classification.
Bien qu’excellant dans les tâches au niveau des phrases, les modèles USE sont moins efficaces pour la génération de texte générale, que nous explorerons avec d’autres modèles.
Generative Pretraining Transformer (GPT)
GPT d’OpenAI, introduit en 2018, a été révolutionnaire pour le préentraînement d’un modèle de langage général pour diverses tâches. GPT utilise un empilement de 12 décodeurs, encodant les séquences d’entrée avec le Byte Pair Encoding (BPE) et l’encodage de position. Il a été entraîné sur le dataset BooksCorpus pour la prédiction de texte et la classification.
GPT est affiné pour des tâches telles que l’inférence en langue naturelle, la réponse aux questions, la similarité sémantique et la classification, surpassant les modèles précédents. Cependant, sa nature unidirectionnelle est une limitation.
Bidirectional Encoder Representations from Transformers (BERT)
BERT, introduit par Google AI, est un modèle basé sur l’encodeur entraîné de manière bidirectionnelle. BERT_BASE est comparable en taille à GPT, tandis que BERT_LARGE possède 340 millions de paramètres. Il utilise la tokenisation WordPiece, les embeddings de segment et les embeddings de position. BERT est préentraîné sur des tâches de modèle de langue masquée et de prédiction de la phrase suivante utilisant des ensembles de données comme BooksCorpus et Wikipédia.
BERT surpasse GPT dans diverses tâches grâce à sa nature bidirectionnelle. Les variantes comme ALBERT (allégé) et RoBERTa (optimisé) offrent différents compromis. La bidirectionnalité de BERT améliore les performances mais a du mal à comprendre la négation.
GPT-2 et conditionnement des tâches
GPT-2, le modèle d’OpenAI de 2019, varie en taille, le plus grand étant 10 fois plus grand que GPT. Entraîné sur 40 Go de données Reddit, GPT-2 utilise le conditionnement des tâches, produisant différentes sorties en fonction des invites de tâches. Il surpasse BERT dans la plupart des tâches, mais montre des limitations dans le résumé de texte.
GPT-3
GPT-3, introduit en 2020, possède 175 milliards de paramètres et partage l’architecture de GPT-2 avec plus de couches. Entraîné sur un mélange de jeux de données, GPT-3 excelle dans l’apprentissage par quelques exemples, produisant des textes et des codes cohérents. Cependant, il a du mal avec la cohérence des textes longs et les répétitions.
Conclusion
Nous avons passé en revue des modèles basés sur les transformateurs tels que USE, GPT et BERT, mettant en évidence leurs avancées et leurs limitations. Bien que transformateurs pour le traitement du langage naturel, ces modèles continuent de faire face à des défis, tels que la gestion de nouveaux concepts et l’analyse de textes spécifiques à un domaine.