Ensemble-Instruct: Generación de Datos para Ajuste por Instrucciones con una Mezcla Heterogénea de Modelos de Lenguaje
Ensemble-Instruct: Generating Instruction-Tuning Data with a Heterogeneous Mixture of LMs
October 21, 2023
Autores: Young-Suk Lee, Md Arafat Sultan, Yousef El-Kurdi, Tahira Naseem Asim Munawar, Radu Florian, Salim Roukos, Ramón Fernandez Astudillo
cs.AI
Resumen
Utilizando el aprendizaje en contexto (ICL, por sus siglas en inglés) para la generación de datos, técnicas como Self-Instruct (Wang et al., 2023) o su sucesor Alpaca (Taori et al., 2023) pueden entrenar agentes conversacionales robustos con solo una pequeña cantidad de supervisión humana. Una limitación de estos enfoques es que recurren a modelos de lenguaje extremadamente grandes (alrededor de 175 mil millones de parámetros) que también son propietarios y no públicos. Aquí exploramos la aplicación de dichas técnicas a modelos de lenguaje mucho más pequeños (alrededor de 10 a 40 mil millones de parámetros) y con licencias permisivas. Encontramos que el enfoque Self-Instruct es menos efectivo en estos tamaños y proponemos nuevos métodos de ICL que se basan en dos ideas principales: (a) Categorización y simplificación de las plantillas de ICL para facilitar el aprendizaje de instrucciones al modelo de lenguaje, y (b) Ensamblaje de múltiples salidas del modelo de lenguaje para ayudar a seleccionar ejemplos sintéticos de alta calidad. Nuestro algoritmo aprovecha las 175 tareas semilla de Self-Instruct y emplea pipelines separados para instrucciones que requieren una entrada y aquellas que no. Investigaciones empíricas con diferentes modelos de lenguaje muestran que: (1) Nuestro método propuesto genera datos de ajuste de instrucciones de mayor calidad que Self-Instruct, (2) Mejora significativamente el rendimiento tanto de modelos de lenguaje básicos como de aquellos ajustados con instrucciones, y (3) Los modelos de lenguaje más pequeños ajustados con instrucciones generan salidas más útiles que sus contrapartes más grandes sin ajustar. Nuestro código está disponible en https://github.com/IBM/ensemble-instruct.
English
Using in-context learning (ICL) for data generation, techniques such as
Self-Instruct (Wang et al., 2023) or the follow-up Alpaca (Taori et al., 2023)
can train strong conversational agents with only a small amount of human
supervision. One limitation of these approaches is that they resort to very
large language models (around 175B parameters) that are also proprietary and
non-public. Here we explore the application of such techniques to language
models that are much smaller (around 10B--40B parameters) and have permissive
licenses. We find the Self-Instruct approach to be less effective at these
sizes and propose new ICL methods that draw on two main ideas: (a)
Categorization and simplification of the ICL templates to make prompt learning
easier for the LM, and (b) Ensembling over multiple LM outputs to help select
high-quality synthetic examples. Our algorithm leverages the 175 Self-Instruct
seed tasks and employs separate pipelines for instructions that require an
input and instructions that do not. Empirical investigations with different LMs
show that: (1) Our proposed method yields higher-quality instruction tuning
data than Self-Instruct, (2) It improves performances of both vanilla and
instruction-tuned LMs by significant margins, and (3) Smaller instruction-tuned
LMs generate more useful outputs than their larger un-tuned counterparts. Our
codebase is available at https://github.com/IBM/ensemble-instruct.