XYZNOT

Articles · arXiv 2109.01652

Finetuned Language Models Are Zero-Shot Learners

Publié le cs.CL arXivPDF

Lire avec traduction et IA

Résumé en trois lignes

  1. 🎯 Les grands modèles de langue non entraînés peinent sur les tâches zero-shot car les prompts bruts s'écartent de la distribution des tokens de pré-entraînement.
  2. 🔧 Instruction tuning : finetuner un LM décodeur de 137B sur 62 jeux de données de TAL verbalisés par des modèles en langage naturel, en retenant des clusters d'évaluation.
  3. 📈 FLAN en zero-shot surpasse GPT-3 175B en zero-shot sur 20 des 25 benchmarks évalués et bat GPT-3 en few-shot sur des tâches comme ANLI et BoolQ.

Résumé

Cet article explore une méthode simple pour améliorer les capacités d'apprentissage zero-shot des modèles de langue. Nous montrons que l'instruction tuning — le finetuning de modèles de langue sur un ensemble de tâches décrites par des instructions — améliore substantiellement les performances zero-shot sur des tâches inédites. Nous prenons un modèle de langue pré-entraîné de 137 milliards de paramètres et lui appliquons un instruction tuning sur plus de 60 tâches de TAL verbalisées via des modèles d'instructions en langage naturel. Nous évaluons ce modèle adapté aux instructions, que nous appelons FLAN, sur des types de tâches inédits. FLAN améliore considérablement les performances de son homologue non modifié et surpasse GPT-3 175B en zero-shot sur 20 des 25 tâches évaluées. FLAN surpasse même largement GPT-3 en few-shot sur ANLI, RTE, BoolQ, AI2-ARC, OpenbookQA et StoryCloze. Des études d'ablation révèlent que le nombre de jeux de données de finetuning, l'échelle du modèle et les instructions en langage naturel sont essentiels au succès de l'instruction tuning.

Résumé original (anglais)

This paper explores a simple method for improving the zero-shot learning abilities of language models. We show that instruction tuning -- finetuning language models on a collection of tasks described via instructions -- substantially improves zero-shot performance on unseen tasks. We take a 137B parameter pretrained language model and instruction-tune it on over 60 NLP tasks verbalized via natural language instruction templates. We evaluate this instruction-tuned model, which we call FLAN, on unseen task types. FLAN substantially improves the performance of its unmodified counterpart and surpasses zero-shot 175B GPT-3 on 20 of 25 tasks that we evaluate. FLAN even outperforms few-shot GPT-3 by a large margin on ANLI, RTE, BoolQ, AI2-ARC, OpenbookQA, and StoryCloze. Ablation studies reveal that number of finetuning datasets, model scale, and natural language instructions are key to the success of instruction tuning.

Guide de lecture

Problème et motivation

Les grands modèles de langue (comme GPT-3 175B) excellent dans l'apprentissage few-shot en tirant parti d'exemples fournis dans le contexte. Cependant, leurs capacités zero-shot restent nettement plus faibles sur des benchmarks de TAL complexes tels que la compréhension de lecture, l'inférence en langage naturel (NLI) et les systèmes de questions-réponses. Les modèles non ajustés reposent sur des prompts formatés comme des continuations de données de pré-entraînement, un format peu naturel et rigide pour des tâches généralement énoncées sous forme de directives ou de requêtes explicites.

Les auteurs examinent si un finetuning supervisé sur un ensemble large et diversifié de tâches de TAL, formulées explicitement sous forme d'instructions en langage naturel, permet aux modèles de langue de se généraliser en zero-shot à des types de tâches entièrement inédits lors de l'inférence.

Idées clés

  • Instruction Tuning : Convertir des jeux de données de TAL existants en formats instruction-réponse à l'aide de gabarits de prompts en langage naturel, en combinant la supervision multitâche avec le prompting.
  • Task Cluster Holdout : Regrouper les jeux de données en clusters thématiques (ex. NLI, Closed-Book QA, Traduction, Analyse de sentiment). Lors de l'évaluation de la généralisation zero-shot sur un cluster cible , tous les jeux de données appartenant à (et aux clusters étroitement liés) sont exclus de l'entraînement pour garantir une évaluation inter-tâches véritablement zero-shot.
  • Classification with Options : Pour les tâches de classification, ajouter un suffixe OPTIONS: listant directement les étiquettes candidates valides dans le prompt, guidant ainsi la distribution de sortie du modèle génératif sans la limiter purement à des comparaisons de logits pour du classement.

Méthode

Le modèle de base est LaMDA-PT, un transformer dense décodeur seul, de gauche à droite, comptant 137 milliards de paramètres, pré-entraîné sur 2,49T de tokens BPE issus de documents web, de code, de Wikipédia et de données de dialogue (environ 10 % non anglophones).

  1. Agrégation de données : 62 jeux de données provenant de TensorFlow Datasets sont regroupés en 12 clusters. Pour chaque jeu de données, 10 gabarits uniques d'instructions en langage naturel sont rédigés (incluant jusqu'à 3 gabarits « inversés », ex. générer du texte à partir d'un sentiment).
  2. Configuration de l'entraînement : Le nombre d'exemples d'entraînement par jeu de données est plafonné à 30k. Les lots sont construits selon un schéma de mélange proportionnel aux exemples avec un taux de mélange maximal de 3 000 pour éviter que les grands jeux de données ne dominent. L'entraînement s'effectue sur 30k étapes de gradient avec une taille de batch de 8 192 tokens en utilisant l'optimiseur Adafactor (taux d'apprentissage de ), une longueur de séquence de 1 024 (entrée) et 256 (cible), avec du sequence packing.
  3. Protocole d'évaluation : Pour évaluer les performances sur clusters exclus, modèles FLAN distincts sont entraînés. Les performances sont rapportées à la fois sous forme de moyenne sur tous les gabarits d'instructions et avec le meilleur gabarit sélectionné sur un ensemble de validation.
  4. Inférence avec exemples Few-Shot : Lorsque exemples sont disponibles, les entrées sont formatées ainsi : où représente la concaténation avec un token séparateur, plafonnée à 16 exemples et 960 tokens.

Résultats

  • Comparaison Zero-Shot face à GPT-3 : En utilisant le meilleur gabarit de validation, FLAN 137B en zero-shot surpasse GPT-3 175B en zero-shot sur 20 des 25 benchmarks évalués et dépasse GPT-3 en few-shot sur 10 jeux de données, notamment ANLI R1–R3, RTE, BoolQ, OpenbookQA et StoryCloze.
  • Types de tâches : Des gains importants sont observés sur les tâches formulées naturellement sous forme d'instructions (ex. NLI, compréhension de lecture, closed-book QA, traduction). Sur RTE, FLAN atteint 84,1 % (meilleur gabarit dev) contre 63,5 % pour GPT-3 en zero-shot et 72,9 % pour GPT-3 en few-shot. Sur BoolQ, FLAN atteint 82,9 % contre 60,5 % pour GPT-3 en zero-shot et 77,5 % en few-shot.
  • Dépendance à l'échelle : Les ablations sur 422M, 2B, 8B, 68B et 137B paramètres révèlent que l'instruction tuning détériore la généralisation zero-shot sur des tâches inédites pour les modèles de de paramètres. Le transfert positif n'apparaît qu'à grande échelle ( et ).
  • Importance des instructions : Un finetuning sans gabarits d'instructions (entrée-sortie uniquement : 37,3 % de moyenne sur 4 clusters) ou avec uniquement le nom des jeux de données (46,6 %) conduit à des performances zero-shot nettement inférieures à celles obtenues avec des instructions naturelles (55,2 %).
  • Compatibilité avec le Prompt Tuning : Le prompt tuning, efficace en paramètres, appliqué à FLAN produit une meilleure précision sur SuperGLUE que lorsqu'il est appliqué au modèle de base non ajusté LaMDA-PT, en particulier dans des régimes à faibles ressources de 32 exemples.

Limites et questions ouvertes

  • Tâches de complètement de phrases : L'instruction tuning n'apporte que peu de bénéfices (et nuit parfois) sur les tâches de modélisation du langage où les instructions sont redondantes, comme Winogrande ou les complétions de phrases pour le raisonnement de sens commun.
  • Complexité des instructions : L'article étudie uniquement des instructions courtes d'une seule phrase, plutôt que de longues consignes de prompt élaborées comme celles fournies habituellement à des annotateurs humains.
  • Fenêtre de contexte et calcul : La longueur de contexte de 1 024 tokens de FLAN a empêché une évaluation rigoureuse des tâches de résumé. De plus, exécuter et déployer un modèle dense de 137B paramètres nécessite d'importantes ressources de calcul.

Termes clés

instruction tuning
Finetuning d'un modèle de langue pré-entraîné sur un ensemble diversifié de jeux de données formatés à l'aide de gabarits d'instructions en langage naturel afin d'améliorer la généralisation à des tâches inédites.
FLAN
Finetuned Language Net ; le modèle de 137 milliards de paramètres adapté aux instructions, basé sur l'architecture décodeur seul de LaMDA-PT.
task clusters
Regroupements de jeux de données de TAL par type de tâche (ex. NLI, Closed-Book QA) utilisés pour définir des partitions d'évaluation strictes où un cluster entier est exclu pour les tests zero-shot.
LaMDA-PT
Un transformer dense décodeur seul de 137 milliards de paramètres, opérant de gauche à droite, pré-entraîné sur 2,49T de tokens de documents web, code, Wikipédia et dialogues.
classification with options
Une stratégie de formatage de sortie où un token 'OPTIONS:' suivi des classes candidates potentielles est ajouté aux prompts de classification pour guider la génération de texte libre.
examples-proportional mixing
Une stratégie de pondération des jeux de données pendant l'entraînement multitâche où l'échantillonnage est proportionnel à la taille du jeu de données jusqu'à un plafond maximal défini (3 000 exemples).
data contamination analysis
Une évaluation a posteriori mesurant le chevauchement de n-grammes entre le corpus de pré-entraînement et les jeux de données de test afin de vérifier que les gains de performance ne sont pas dus à la mémorisation.

Questions

En quoi l'instruction tuning diffère-t-il du finetuning multitâche standard ?

Le finetuning multitâche traditionnel vise à optimiser les performances sur les tâches d'entraînement spécifiques ou à s'adapter à de nouveaux domaines. L'instruction tuning utilise des instructions en langage naturel pour apprendre au modèle à comprendre des descriptions de tâches, ciblant la généralisation zero-shot sur des types de tâches totalement exclus pendant l'entraînement.

Pourquoi l'instruction tuning nuit-il aux performances sur les modèles de langue plus petits ?

Pour les modèles de 8B paramètres ou moins, l'apprentissage d'environ 40 tâches d'instruction distinctes semble saturer toute la capacité paramétrique du modèle, dégradant la généralisation sur les tâches inédites. Ce n'est qu'autour de et 137B paramètres que la capacité permet à la fois d'exécuter la tâche et de suivre des instructions générales.

Sur quelles tâches FLAN ne parvient-il pas à surpasser le modèle de base non ajusté ?

L'instruction tuning apporte peu de bénéfices sur les tâches formulées directement comme des complétions de modélisation du langage, telles que la résolution de coréférences (ex. Winogrande) et les benchmarks de sens commun par complétion de phrases, où les prompts d'instruction sont largement redondants avec l'objectif de base du pré-entraînement.

Comment la contamination des données dans le corpus de pré-entraînement a-t-elle été traitée ?

Les auteurs ont recherché les chevauchements de 13-grammes entre les exemples de test et le jeu de pré-entraînement de 2,49T de tokens, créant des sous-ensembles propres sans collisions. Les performances sur ces sous-ensembles propres n'ont montré aucune corrélation avec une baisse de résultats, indiquant que la mémorisation n'explique pas les gains zero-shot de FLAN.

La présentation de cette page a été rédigée par une IA à partir de l'article et peut contenir des erreurs. Consultez l'article pour les détails.

Lire avec traduction et IA