ChatPaper.aiChatPaper

Ajustement fin des modèles de langage avec uniquement des passes avant

Fine-Tuning Language Models with Just Forward Passes

May 27, 2023
Auteurs: Sadhika Malladi, Tianyu Gao, Eshaan Nichani, Alex Damian, Jason D. Lee, Danqi Chen, Sanjeev Arora
cs.AI

Résumé

Le fine-tuning des modèles de langage (LMs) a permis d'obtenir des succès sur diverses tâches en aval, mais à mesure que les LMs augmentent en taille, la rétropropagation nécessite une quantité de mémoire prohibitivement importante. Les méthodes d'ordre zéro (ZO) peuvent en principe estimer les gradients en utilisant seulement deux passes avant, mais sont théoriquement considérées comme étant catastrophiquement lentes pour l'optimisation de grands modèles. Dans ce travail, nous proposons un optimiseur d'ordre zéro efficace en mémoire (MeZO), adaptant la méthode classique ZO-SGD pour fonctionner sur place, permettant ainsi de fine-tuner les LMs avec la même empreinte mémoire que l'inférence. Par exemple, avec une seule GPU A100 80GB, MeZO peut entraîner un modèle de 30 milliards de paramètres, alors que le fine-tuning avec rétropropagation ne peut entraîner qu'un LM de 2,7 milliards avec le même budget. Nous menons des expériences exhaustives sur différents types de modèles (LMs masqués et autorégressifs), échelles de modèles (jusqu'à 66 milliards), et tâches en aval (classification, choix multiples, et génération). Nos résultats démontrent que (1) MeZO surpasse significativement l'apprentissage en contexte et le sondage linéaire ; (2) MeZO atteint des performances comparables au fine-tuning avec rétropropagation sur plusieurs tâches, avec une réduction de mémoire allant jusqu'à 12x ; (3) MeZO est compatible avec les techniques de réglage des paramètres complets et efficaces comme LoRA et le réglage de préfixe ; (4) MeZO peut optimiser efficacement des objectifs non différentiables (par exemple, maximiser la précision ou le F1). Nous étayons nos résultats empiriques par des insights théoriques, mettant en évidence comment un pré-entraînement adéquat et des invites de tâches permettent à MeZO de fine-tuner des modèles énormes, malgré les analyses classiques ZO suggérant le contraire.
English
Fine-tuning language models (LMs) has yielded success on diverse downstream tasks, but as LMs grow in size, backpropagation requires a prohibitively large amount of memory. Zeroth-order (ZO) methods can in principle estimate gradients using only two forward passes but are theorized to be catastrophically slow for optimizing large models. In this work, we propose a memory-efficient zerothorder optimizer (MeZO), adapting the classical ZO-SGD method to operate in-place, thereby fine-tuning LMs with the same memory footprint as inference. For example, with a single A100 80GB GPU, MeZO can train a 30-billion parameter model, whereas fine-tuning with backpropagation can train only a 2.7B LM with the same budget. We conduct comprehensive experiments across model types (masked and autoregressive LMs), model scales (up to 66B), and downstream tasks (classification, multiple-choice, and generation). Our results demonstrate that (1) MeZO significantly outperforms in-context learning and linear probing; (2) MeZO achieves comparable performance to fine-tuning with backpropagation across multiple tasks, with up to 12x memory reduction; (3) MeZO is compatible with both full-parameter and parameter-efficient tuning techniques such as LoRA and prefix tuning; (4) MeZO can effectively optimize non-differentiable objectives (e.g., maximizing accuracy or F1). We support our empirical findings with theoretical insights, highlighting how adequate pre-training and task prompts enable MeZO to fine-tune huge models, despite classical ZO analyses suggesting otherwise.
PDF32December 15, 2024