T5 (Text-to-Text Transfer Transformer) (FR)

From Systems analysis wiki
Jump to navigation Jump to search

T5 (Text-to-Text Transfer Transformer) est une famille de grands modèles de langage développée par des chercheurs de Google AI et présentée en 2019[1]. L'innovation clé de T5 est un framework unifié « text-to-text » qui traite toute tâche de traitement du langage naturel (NLP) comme un problème de transformation d'une séquence de texte en une autre. Cela a permis d'utiliser un modèle, une fonction de perte et une procédure d'entraînement uniques pour un large éventail de tâches, telles que la traduction, le résumé, la réponse aux questions et la classification[2].

Le modèle est basé sur l'architecture standard du transformeur « encodeur-décodeur », ce qui le distingue des modèles de type BERT (encodeur seul) et GPT (décodeur seul). Le travail sur T5 a été conçu comme une étude empirique à grande échelle visant à examiner et comparer systématiquement diverses techniques d'apprentissage par transfert en NLP, plutôt que de créer une méthode fondamentalement nouvelle[1].

Le paradigme « Text-to-Text »

L'idée centrale de T5 est que toutes les tâches sont formulées dans un format unifié. Le modèle reçoit du texte en entrée et génère également du texte en sortie. Pour que le modèle puisse distinguer les tâches qui lui sont assignées, un préfixe d'instruction textuel spécifique est ajouté à la séquence d'entrée[2].

  • Traduction : `translate English to German: That is good.` → `Das ist gut.`
  • Classification de sentiment : `sst2 sentence: a very exciting film.` → `positive`
  • Résumé : `summarize: [long texte d'un article]` → `[résumé]`

Cette approche simplifie radicalement le processus d'application du modèle, éliminant le besoin de développer des « têtes » spécifiques à la tâche (task-specific heads) pour chaque tâche individuelle, ce qui était caractéristique des architectures comme BERT[3].

Architecture et mise à l'échelle

Architecture encodeur-décodeur

T5 utilise l'architecture standard du transformeur, composée de deux parties[1] :

  • Encodeur : Traite toute la séquence d'entrée simultanément, créant une représentation riche et contextualisée. Comme dans BERT, l'encodeur de T5 est bidirectionnel.
  • Décodeur : Génère le texte de sortie token par token (de manière autorégressive), en utilisant la représentation fournie par l'encodeur.

Cette structure hybride permet à T5 de résoudre efficacement à la fois les tâches de compréhension du langage et les tâches de génération de texte[4].

Améliorations clés

L'architecture de T5 inclut plusieurs modifications par rapport au modèle de transformeur original :

  • Plongements de position relatifs : Au lieu des plongements de position sinusoïdaux absolus, T5 utilise une forme simplifiée mais efficace de codage de position relatif, où un biais scalaire apprenable (bias), qui ne dépend que de la distance relative entre les tokens, est ajouté aux logits d'attention[1].
  • Normalisation de couche modifiée (Layer Norm) : La normalisation est déplacée en dehors de la connexion résiduelle (residual connection), et le biais additif (bias) en est retiré pour améliorer la stabilité de l'entraînement.

Échelles du modèle

Dans l'article original, le modèle a été présenté en plusieurs configurations, différant par le nombre de paramètres, ce qui a permis d'étudier systématiquement l'influence de l'échelle[5] :

  • T5-Small : ~60 millions de paramètres
  • T5-Base : ~220 millions de paramètres
  • T5-Large : ~770 millions de paramètres
  • T5-3B : ~3 milliards de paramètres
  • T5-11B : ~11 milliards de paramètres

L'étude a montré que l'augmentation de l'échelle du modèle est l'un des moyens les plus fiables d'améliorer ses performances[1].

Pré-entraînement : le dataset C4 et la tâche de corruption d'intervalles

La tâche de corruption d'intervalles (Span Corruption)

Pour le pré-entraînement de T5, une tâche de débruitage (denoising) a été choisie, plus précisément une variante spécifique appelée corruption d'intervalles (span corruption)[6]. La méthode fonctionne comme suit :

  1. Dans le texte d'entrée, 15 % des tokens sont masqués de manière aléatoire.
  2. Contrairement à la méthode MLM dans BERT, où des tokens individuels sont masqués, dans T5, des segments continus entiers (spans) sont masqués.
  3. Chaque intervalle corrompu est remplacé par un unique token de masque (par exemple, `<X>`, `<Y>`).
  4. Le modèle est entraîné à générer en sortie la séquence des intervalles supprimés, séparés par les masques correspondants.

Cette approche contraint le modèle à prédire des séquences de texte entières, ce qui s'est avéré être une tâche de pré-entraînement plus efficace que la simple modélisation du langage[1].

Le dataset C4 (Colossal Clean Crawled Corpus)

Pour réaliser le potentiel de l'apprentissage par transfert, les chercheurs ont créé un vaste ensemble de données textuelles nettoyées de haute qualité, le C4, d'environ 750 Go[2]. Il a été obtenu par un nettoyage et un filtrage à grande échelle du corpus web public Common Crawl[7]. Le processus de nettoyage comprenait la suppression des doublons, du texte passe-partout (« Lorem ipsum »), des phrases incomplètes, ainsi que le filtrage du langage offensant[8].

Critiques du dataset C4

Malgré l'objectif déclaré de créer un corpus « propre », le processus de filtrage de C4 a été critiqué pour ses biais systémiques. Des études ont montré que le filtre de langage offensant a supprimé de manière disproportionnée des textes liés aux communautés LGBTQ+, ainsi que des textes en anglais afro-américain (AAE)[8]. De plus, une quantité significative de contenu offensant et protégé par le droit d'auteur a été découverte dans le dataset. Ces problèmes illustrent la complexité de la création d'ensembles de données objectivement « de qualité » et la manière dont les décisions techniques de filtrage peuvent entraîner des biais sociaux involontaires.

Résultats et performances

Au moment de sa publication, T5 a établi de nouveaux records de performance (state-of-the-art) sur de nombreux benchmarks, y compris GLUE, SuperGLUE, SQuAD et des tâches de résumé[2]. En particulier, le modèle T5-11B a atteint un score sur SuperGLUE proche du niveau humain, démontrant sa capacité à gérer des tâches nécessitant un raisonnement logique complexe[9]. Ces résultats ont confirmé l'hypothèse centrale de l'étude : la combinaison d'un framework unifié, d'une grande échelle et d'un dataset de haute qualité constitue une stratégie extrêmement puissante pour atteindre des résultats de pointe en NLP.

Évolution et variantes de T5

L'approche de T5 a servi de base à de nombreux modèles ultérieurs :

  • mT5 : Une version multilingue de T5, entraînée sur le corpus mC4 qui couvre 101 langues[10].
  • ByT5 : Une version expérimentale qui abandonne complètement la tokenisation et opère directement sur les octets bruts UTF-8. Cela la rend robuste aux fautes de frappe et lui permet de traiter n'importe quelle langue sans configuration spécifique (« out-of-the-box »)[11].
  • Switch Transformer : Une version évolutive de T5 qui a introduit l'architecture Mixture-of-Experts (MoE), permettant d'augmenter le nombre de paramètres jusqu'à des billions tout en maintenant des coûts de calcul raisonnables[12].
  • FLAN-T5 : Il ne s'agit pas d'une nouvelle architecture, mais d'un modèle T5 standard qui a subi une étape supplémentaire d'ajustement fin sur des centaines de tâches formulées sous forme d'instructions (instruction tuning). Cela a considérablement amélioré sa capacité à généraliser à de nouvelles tâches inédites en mode zero-shot (sans exemples)[13].
  • UL2 : Un modèle qui prolonge les idées de T5 et qui utilise un nouvel objectif de pré-entraînement appelé Mixture of Denoisers, combinant différents schémas de masquage de texte pour améliorer l'universalité[14].

Liens

Bibliographie

  • Vaswani, A. et al. (2017). Attention Is All You Need. arXiv:1706.03762.
  • Raffel, C. et al. (2020). Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer. arXiv:1910.10683.
  • Xue, L. et al. (2021). mT5: A Massively Multilingual Pre-trained Text-to-Text Transformer. arXiv:2010.11934.
  • Dodge, J. et al. (2021). Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus. arXiv:2104.08758.
  • Fedus, W. et al. (2021). Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity. arXiv:2101.03961.
  • Ni, J. et al. (2021). Sentence-T5: Scalable Sentence Encoders from Pre-trained Text-to-Text Models. arXiv:2108.08877.
  • Guo, M. et al. (2021). LongT5: Efficient Text-To-Text Transformer for Long Sequences. arXiv:2112.07916.
  • Xue, L. et al. (2022). ByT5: Towards a Token-Free Future with Pre-trained Byte-to-Byte Models. arXiv:2105.13626.
  • Tay, Y. et al. (2022). UL2: Unifying Language Learning Paradigms. arXiv:2205.05131.
  • Chung, H. W. et al. (2022). Scaling Instruction-Finetuned Language Models. arXiv:2210.11416.
  • Longpre, S. et al. (2023). The Flan Collection: Designing Data and Methods for Effective Instruction Tuning. arXiv:2301.13688.

Notes et références

  1. 1.0 1.1 1.2 1.3 1.4 1.5 Raffel, Colin; Shazeer, Noam; Roberts, Adam; et al. «Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer». Journal of Machine Learning Research. [1]
  2. 2.0 2.1 2.2 2.3 «Exploring Transfer Learning with T5: the Text-To-Text Transfer Transformer». Google Research Blog. [2]
  3. «A Detailed Look At Google's T5 Model in NLP». DhiWise Blog. [3]
  4. «T5 (Text-to-Text Transfer Transformer)». GeeksforGeeks. [4]
  5. «T5». Hugging Face Transformers Documentation. [5]
  6. «T5 (language model)». In Wikipedia. [6]
  7. «C4 Dataset». Papers With Code. [7]
  8. 8.0 8.1 Dodge, J.; Sap, M.; Marasović, A.; et al. «Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus». arXiv. [8]
  9. «Google T5 algorithm scores 88.9 on SuperGLUE languge benchmark, compared to 89.8 human baseline». Reddit, r/linguistics. [9]
  10. Xue, Linting; Constant, Noah; Roberts, Adam; et al. «mT5: A massively multilingual pre-trained text-to-text transformer». arXiv. [10]
  11. Xue, Linting; Barua, Aditya; Constant, Noah; et al. «ByT5: Towards a token-free future with pre-trained byte-to-byte models». arXiv. [11]
  12. Fedus, William; Zoph, Barret; Shazeer, Noam. «Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity». arXiv. [12]
  13. Chung, Hyung Won; et al. «Scaling Instruction-Finetuned Language Models». arXiv. [13]
  14. Tay, Yi; Dehghani, Mostafa; Tran, Vinh; et al. «UL2: Unifying Language Learning Paradigms». arXiv. [14]