ChatPaper.aiChatPaper

Ajuste Fino de Modelos de Linguagem Apenas com Passagens de Frente

Fine-Tuning Language Models with Just Forward Passes

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

Resumo

O ajuste fino de modelos de linguagem (LMs) tem obtido sucesso em diversas tarefas subsequentes, mas, à medida que os LMs aumentam em tamanho, a retropropagação exige uma quantidade proibitivamente grande de memória. Métodos de ordem zero (ZO) podem, em princípio, estimar gradientes usando apenas duas passagens diretas, mas são teoricamente considerados catastróficamente lentos para otimizar modelos grandes. Neste trabalho, propomos um otimizador de ordem zero eficiente em memória (MeZO), adaptando o método clássico ZO-SGD para operar in-place, permitindo assim o ajuste fino de LMs com a mesma pegada de memória que a inferência. Por exemplo, com uma única GPU A100 80GB, o MeZO pode treinar um modelo de 30 bilhões de parâmetros, enquanto o ajuste fino com retropropagação pode treinar apenas um LM de 2,7B com o mesmo orçamento. Realizamos experimentos abrangentes em diversos tipos de modelos (LMs mascarados e autorregressivos), escalas de modelos (até 66B) e tarefas subsequentes (classificação, múltipla escolha e geração). Nossos resultados demonstram que (1) o MeZO supera significativamente o aprendizado em contexto e a sondagem linear; (2) o MeZO alcança desempenho comparável ao ajuste fino com retropropagação em várias tarefas, com redução de memória de até 12x; (3) o MeZO é compatível com técnicas de ajuste de parâmetros completos e eficientes, como LoRA e prefix tuning; (4) o MeZO pode otimizar efetivamente objetivos não diferenciáveis (por exemplo, maximizar precisão ou F1). Apoiamos nossas descobertas empíricas com insights teóricos, destacando como um pré-treinamento adequado e prompts de tarefas permitem que o MeZO ajuste modelos enormes, apesar das análises clássicas de ZO sugerirem o contrário.
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