Aprimorando Modelos de Linguagem Grande com Estratégias de Dados Sintéticos
Esse estudo explora métodos eficazes para gerar dados sintéticos para treinamento de modelos de linguagem.
Yung-Chieh Chan, George Pu, Apaar Shanker, Parth Suresh, Penn Jenks, John Heyer, Sam Denton
― 15 min ler
Índice
- Aplicações de Grandes Modelos de Linguagem
- Investigando Estratégias de Geração de Dados Sintéticos
- Principais Contribuições
- Trabalhos Relacionados
- Treinamento Eficiente de LLM
- Dados Sintéticos para Ajuste Fino
- Geração Eficiente de Dados Sintéticos
- Visão Geral das Abordagens de Geração de Dados Sintéticos
- Estratégias de Geração de Dados
- Configuração Experimental
- Conjuntos de Dados e Avaliações
- Gerando Dados Sintéticos sob Restrições de Dados
- Resultados Experimentais
- Eficácia das Estratégias de Geração de Dados Sintéticos
- Análise de Custo-Benefício: Quando Criar Novas Instruções ou Respostas?
- Troca de Desempenho com Diferentes Modelos de Aumento
- Troca de Desempenho com Verificação
- Custo-Benefício com um Modelo Estudante Diferente
- Conclusão
- Fonte original
- Ligações de referência
À medida que os grandes modelos de linguagem (LLMs) são usados em mais tarefas, a necessidade de bons dados para ajustar esses modelos tá virando um problema. Usar dados humanos de alta qualidade é comum pra melhorar o desempenho do modelo, mas pode ser muito caro. Outras maneiras de criar conjuntos de dados surgiram, como usar Dados Sintéticos, mas ainda não se sabe bem como esses métodos funcionam, especialmente quando os recursos são limitados e as tarefas são difíceis de checar.
Pra lidar com isso, a gente categoriza os métodos de Geração de Dados sintéticos em três tipos principais: Aumento de Respostas, Parafraseamento de Perguntas e Aumento de Novas Perguntas. A gente estuda quão eficazes essas estratégias são ao treinar versões menores dos LLMs, chamadas de modelos estudantes, sob diferentes limites, como o tamanho do conjunto de instruções original e a quantidade de consultas que podemos usar. A gente descobre que nem todos os métodos funcionam igualmente bem em diferentes situações. Na verdade, a melhor forma de criar dados depende muito de quantas consultas temos em relação ao tamanho do conjunto de instruções inicial. Quando há menos consultas disponíveis, adicionar novas respostas a perguntas existentes funciona melhor. No entanto, conforme a quantidade de consultas aumenta, criar novas perguntas se torna a melhor escolha.
A gente também vê que a escolha de como aumentar os dados e outras decisões de design importam muito mais quando se lida com menores quantidades de dados do que quando há uma grande quantidade de dados pra trabalhar. Oferecemos um guia prático pra escolher o método certo de criação de dados sintéticos com base em vários aspectos, incluindo quão fácil é escalar os métodos, a importância de verificar a qualidade dos dados sintéticos e os tipos de LLMs usados pra gerar dados sintéticos.
Aplicações de Grandes Modelos de Linguagem
As aplicações de grandes modelos de linguagem abrangem várias áreas, como entender linguagem natural e gerar código. Mas aplicar esses modelos a novas áreas enfrenta desafios pra obter dados bons e específicos que são necessários pras tarefas.
Pra lidar com esse problema, surgiram diferentes soluções, usando input humano, uma mistura de métodos e dados sintéticos. Alguns desses métodos envolvem melhorar a qualidade dos dados manualmente ou automaticamente, aumentar a quantidade de dados disponíveis ou obter sinais de aprendizado mais úteis de cada amostra. Por exemplo, alguns modelos melhoraram em codificação, matemática e tarefas de longo contexto após serem ajustados com dados mistos.
Embora esses métodos mostrem potencial, a relação custo-benefício e o desempenho em várias tarefas e sob diferentes restrições ainda não estão claros, especialmente quando os recursos disponíveis são baixos. Essa incerteza torna desafiador pras pessoas que querem otimizar suas estratégias de criação de dados pra tarefas e limites específicos.
Investigando Estratégias de Geração de Dados Sintéticos
Neste estudo, a gente olha pra eficácia de diferentes estratégias de geração de dados sintéticos pra treinar LLMs sob vários limites. A gente usa uma situação onde temos apenas um pequeno conjunto de instruções iniciais e um LLM professor pra guiar um LLM estudante. Nosso objetivo é usar o conjunto limitado de instruções iniciais e escolher o melhor modelo professor pra melhorar efetivamente o modelo estudante.
Pra avaliar essas estratégias, analisamos como um modelo estudante se sai sob diferentes condições, como o tamanho do conjunto de instruções iniciais e o orçamento de consultas permitido. O tamanho do conjunto de instruções iniciais indica quantas instruções específicas de tarefa estão disponíveis, enquanto o orçamento de consultas mostra quantas perguntas pro modelo professor podemos fazer.
Dada a variedade de métodos em tarefas de matemática, dividimos as abordagens de criação de dados sintéticos em três tipos principais - Aumento de Respostas, Parafraseamento de Perguntas e Aumento de Novas Perguntas. Também avaliamos como esses métodos podem se aplicar a diferentes tarefas, como matemática, codificação e respostas gerais a perguntas. Além disso, tentamos esclarecer os aspectos-chave necessários ao projetar estratégias de dados pra treinar LLMs.
Principais Contribuições
- Apresentamos um novo framework pra avaliar estratégias de geração de dados sintéticos sob restrições de dados e mostramos que dados sintéticos podem ser eficazes pra novas tarefas além dos cenários tradicionais de matemática e codificação.
- Demonstramos que a melhor estratégia de geração de dados depende do equilíbrio entre quantas consultas podemos usar e o tamanho do conjunto de instruções iniciais. Quando a proporção é baixa, adicionar novas respostas a perguntas existentes funciona melhor. Quando a proporção é alta, criar novas perguntas é melhor.
- Identificamos que a escolha do modelo pra criação de novas perguntas desempenha um papel essencial em quão bem o modelo estudante se sai, enquanto aspectos como verificação de respostas e a escolha do modelo estudante têm menos impacto.
Trabalhos Relacionados
Treinamento Eficiente de LLM
À medida que o tamanho dos modelos e as necessidades de dados aumentam rapidamente, tornar o processo de treinamento de LLMs mais eficiente tá se tornando crucial. Pesquisadores têm procurado maneiras de ajudar os treinadores a otimizar suas estratégias de pré-treinamento por meio de leis de escalabilidade e misturas de dados. Reconhecendo o aumento dos LLMs de código aberto e a demanda por LLMs específicos para tarefas, vários estudos focaram em melhorar a eficiência durante o pós-treinamento. Do ponto de vista computacional, surgiram técnicas pra reduzir os recursos necessários pra ajuste fino. Além disso, trabalhos anteriores reduziram com sucesso as necessidades de dados no ajuste fino ao melhorar a qualidade. Esses esforços guiam nosso trabalho na compreensão de custo e eficiência ao ajustar com dados sintéticos gerados por LLMs.
Dados Sintéticos para Ajuste Fino
Usar dados sintéticos e híbridos pra ajuste fino teve sucesso em várias tarefas. Em raciocínio matemático, instruções de alta qualidade são difíceis de encontrar, então muitos estudos usam dados sintéticos gerados por LLMs pra melhorar as habilidades de raciocínio matemático de LLMs menores. Em tarefas de codificação, dados sintéticos podem ser verificados contra casos de teste ou executar código, o que ajuda a melhorar os resultados. Métodos semelhantes foram usados em tarefas de seguir instruções, treinando LLMs em várias instruções sintéticas com pouco ou nenhum input humano. No entanto, a maioria dos estudos olha apenas para um único domínio sem considerar como esses métodos funcionam sob diferentes restrições e estratégias de dados. A gente pretende construir sobre esses métodos enquanto explora quais fatores na geração de dados sintéticos são cruciais em várias tarefas e orçamentos.
Geração Eficiente de Dados Sintéticos
Embora dados sintéticos sejam mais baratinhos do que dados reais, os custos associados à sua geração em grande escala podem ainda se acumular. Outros trabalhos se concentram em filtrar conjuntos de dados sintéticos por diversidade e correção usando truques projetados pra cada domínio. A pesquisa atual sobre o treinamento de LLMs com dados sintéticos enfatiza escalabilidade e desempenho. No entanto, pra que esses métodos se apliquem a mais tarefas, precisamos desmembrar e avaliar a relação custo-benefício em diferentes escalas e condições. Nosso esforço atende a isso oferecendo um guia pros treinadores de modelos definirem e refinarem suas estratégias de geração de dados sintéticos, visando máxima eficiência dentro dos limites do orçamento.
Visão Geral das Abordagens de Geração de Dados Sintéticos
Dado um conjunto de instruções iniciais, podemos criar pares de instrução-resposta pra ajuste fino do modelo estudante usando três métodos diferentes. Começamos considerando uma instrução inicial de um conjunto de dados e como instruções e respostas sintéticas são geradas.
Neste trabalho, investigamos técnicas de dados sintéticos inicialmente desenvolvidas para raciocínio matemático e estendemos essas abordagens pra uma variedade mais ampla de tarefas e cenários. Escolhemos o ajuste fino supervisionado como o método de aprendizado pro nosso modelo estudante, que requer um conjunto de dados composto por pares de instrução-resposta.
Estabelecemos termos pra esclarecer nossa discussão sobre estratégias de geração de dados e experimentos. Deixe o conjunto de instruções iniciais ser denotado por uma variável de tamanho. Uma estratégia de geração de dados sintéticos pode ser pensada em duas etapas: (1) aumentar as instruções iniciais usando um modelo projetado pra aumentar instruções, e (2) gerar respostas correspondentes pra cada instrução usando um modelo professor. Ao escolher diferentes modelos de aumento, podemos criar um conjunto de dados de treinamento sintético que contém instruções e suas respostas relacionadas pra ajudar a treinar um modelo estudante.
Estratégias de Geração de Dados
Aumento de Respostas
Esse método cria uma variedade de respostas pras instruções iniciais, diferenciando-se em caminhos de raciocínio e escolhas de palavras. Usando o prompting de Cadeia de Pensamento, aumentamos a variedade de respostas. Por exemplo, se perguntarmos quantas vezes a Terra gira em seu eixo em um dia, a resposta gerada pode começar com informações de fundo e terminar com a resposta.
Parafraseamento de Perguntas
Esse método gera novas instruções reformulando as instruções iniciais. Geralmente, fazer modelos gerarem instruções diversas e relevantes é mais difícil do que criar respostas diversas pra perguntas dadas. Um exemplo de uma instrução reformulada pode ser perguntar quantas rotações a Terra faz em um período de 24 horas, que deve ter a mesma resposta final.
Aumento de Novas Perguntas
Esse método produz novas instruções com base no conjunto inicial, mas visa respostas finais diferentes. Garantimos que as novas instruções sejam relevantes e sigam o formato correto. Por exemplo, uma nova instrução pode perguntar quantas vezes a Lua gira no tempo que a Terra leva pra orbitar duas vezes, levando a uma resposta final diferente.
Configuração Experimental
A precisão dos modelos estudante e professor é medida em um conjunto de amostras de teste, onde uma precisão maior é melhor. Nossa configuração envolve um modelo estudante, um modelo de aumento, um modelo professor e um conjunto de instruções específicas de tarefa. O modelo estudante aprende a partir de um conjunto de dados maior criado pelo modelo de aumento.
Pra entender quão amplamente aplicáveis são nossos métodos, escolhemos três tipos diferentes de tarefas: matemática, codificação e respostas gerais a perguntas, que são populares na indústria. Pros nossos testes principais, usamos versões específicas de modelos que garantem uma diferença notável no desempenho entre os modelos professor e estudante, permitindo destacar melhor as melhorias feitas usando cada método.
Conjuntos de Dados e Avaliações
Escolhemos um conjunto de dados pra cada uma das três tarefas pra testar as estratégias de geração de dados sintéticos. Pra matemática, usamos um conjunto de dados que contém perguntas de matemática de nível escolar. Pra codificação, usamos um conjunto de dados de texto pra SQL de muitos domínios diferentes. Pra respostas gerais a perguntas, selecionamos um conjunto de dados composto por perguntas de ciências de escola primária. Cada conjunto de dados tem um conjunto de teste usado pra avaliação, garantindo que meça a eficácia dos nossos métodos de geração de dados sintéticos.
Gerando Dados Sintéticos sob Restrições de Dados
Neste trabalho, olhamos pra quão eficazes são as estratégias de geração de dados sintéticos escolhidas sob limites específicos de dados iniciais e custos. Pra imitar limitações reais de dados, criamos tamanhos diferentes de conjuntos de instruções iniciais e pareamos cada método de geração. Ao fazer isso, podemos ver quantos conjuntos de treinamento conseguimos gerar, dado o número de consultas permitidas.
Resultados Experimentais
Nosso experimento avalia quão bem cada estratégia de geração de dados sintéticos impacta a precisão do modelo estudante. Primeiro, exploramos quão escalável cada método é sob diferentes restrições. Em seguida, analisamos a relação custo-benefício de criar novas instruções versus respostas.
Eficácia das Estratégias de Geração de Dados Sintéticos
A gente estuda quão eficazes são os métodos de geração de dados comparando a precisão do modelo estudante após ajustá-lo com dados sintéticos de cada método. Os resultados mostram que tendências se generalizam em diferentes restrições e a escalabilidade se mantém verdadeira nos conjuntos de dados que examinamos.
Nos nossos testes, observamos que quando começamos com um pequeno conjunto de instruções iniciais, o aumento de novas perguntas continua a melhorar a precisão mesmo com um conjunto de dados grande. No entanto, à medida que aumentamos o tamanho do conjunto de instruções iniciais, as diferenças de desempenho entre os métodos começam a se estreitar.
Análise de Custo-Benefício: Quando Criar Novas Instruções ou Respostas?
A melhor estratégia de geração de dados depende de vários fatores, como custos de consulta e complexidade do conjunto de dados. A gente foca na questão de se é melhor adicionar novas respostas ou novas instruções ao nosso conjunto de dados.
Em configurações com recursos limitados, o aumento de respostas ajuda a medir melhorias criando novas respostas pras perguntas originais. Tanto o parafraseamento de perguntas quanto os métodos de novas perguntas mudam o espaço das perguntas, e nossa análise mostra que o aumento de respostas é a melhor escolha quando a proporção do orçamento é baixa. À medida que o orçamento aumenta, criar novas perguntas, seja por meio de parafraseamento ou novas perguntas, se torna mais benéfico.
Normalmente, o aumento de novas perguntas se sai melhor do que o parafraseamento de perguntas em termos de custo e escalabilidade, mas reformular perguntas é frequentemente mais fácil de implementar e pode funcionar melhor em configurações limitadas.
Troca de Desempenho com Diferentes Modelos de Aumento
A gente examina se podemos reduzir custos usando um modelo de aumento menos poderoso pra gerar instruções. Dado que tendências em relação a custo-benefício se transferem entre tarefas, realizamos experimentos pra ver como várias escolhas de modelos de aumento se saem ao gerar dados sintéticos.
Os resultados mostram que, embora o parafraseamento de perguntas continue eficaz mesmo com modelos mais fracos, o desempenho do aumento de novas perguntas está intimamente ligado às capacidades do modelo de aumento usado. Uma queda significativa no desempenho foi notada ao usar modelos menos poderosos pra tarefas de novas perguntas.
Troca de Desempenho com Verificação
Como nossos modelos professores às vezes dão respostas incorretas pra algumas instruções, o processo de treinamento pode incluir respostas imprecisas e ruidosas. A gente verifica se a verificação das respostas sintéticas contra respostas corretas melhora a eficácia do treinamento do modelo estudante.
Pra esse propósito, focamos em métodos que criam respostas finais corretas. Nas nossas descobertas, observamos que verificar respostas não leva a melhorias significativas na eficácia. Isso pode ser devido ao fato de que o modelo estudante ainda pode aprender informações valiosas a partir de respostas incorretas geradas por um modelo professor mais capaz, apesar de que os esforços de verificação possam potencialmente limitar a diversidade geral.
Custo-Benefício com um Modelo Estudante Diferente
Por fim, analisamos se nossas descobertas em relação a custo-benefício se mantêm verdadeiras ao mudar o modelo estudante. Usando diferentes métodos de geração de dados, replicamos testes com um modelo estudante diferente e focamos nos mesmos conjuntos de instruções iniciais. Os resultados indicam que padrões semelhantes em custo-benefício se aplicam em diferentes configurações de modelos, reforçando a ideia de considerar o tamanho do conjunto de dados inicial e o orçamento disponível ao determinar a melhor estratégia de geração de dados.
Conclusão
Neste estudo, oferecemos um framework pra analisar a eficácia de vários métodos de geração de dados sintéticos pra treinar grandes modelos de linguagem sob diferentes restrições de recursos e tipos de tarefas. Nossas descobertas mostram que a estratégia ideal depende da proporção do orçamento de consulta em relação ao tamanho do conjunto de instruções iniciais. Quando essa proporção é baixa, aumentar respostas a perguntas existentes se mostra mais eficaz, enquanto gerar novas perguntas se torna mais vantajoso à medida que a proporção aumenta.
A gente vê que a escolha do método de aumento é menos crítica quando há mais dados disponíveis, o que pode permitir futuras economias e melhorias de eficiência. A análise também aponta que a verificação de respostas sintéticas e a escolha específica do modelo estudante tendem a ter menos influência no desempenho. Esses insights podem ajudar a guiar os profissionais na escolha das estratégias certas de geração de dados pra treinar LLMs de forma mais eficiente dentro dos limites de recursos.
Título: Balancing Cost and Effectiveness of Synthetic Data Generation Strategies for LLMs
Resumo: As large language models (LLMs) are applied to more use cases, creating high quality, task-specific datasets for fine-tuning becomes a bottleneck for model improvement. Using high quality human data has been the most common approach to unlock model performance, but is prohibitively expensive in many scenarios. Several alternative methods have also emerged, such as generating synthetic or hybrid data, but the effectiveness of these approaches remain unclear, especially in resource-constrained scenarios and tasks that are not easily verified. To investigate this, we group various synthetic data generation strategies into three representative categories -- Answer Augmentation, Question Rephrase and New Question -- and study the performance of student LLMs trained under various constraints, namely seed instruction set size and query budget. We demonstrate that these strategies are not equally effective across settings. Notably, the optimal data generation strategy depends strongly on the ratio between the available teacher query budget and the size of the seed instruction set. When this ratio is low, generating new answers to existing questions proves most effective, but as this ratio increases, generating new questions becomes optimal. Across all tasks, we find that choice of augmentation method and other design choices matter substantially more in low to mid data regimes than in high data regimes. We provide a practical framework for selecting the appropriate augmentation method across settings, taking into account additional factors such as the scalability of each method, the importance of verifying synthetic data, and the use of different LLMs for synthetic data generation.
Autores: Yung-Chieh Chan, George Pu, Apaar Shanker, Parth Suresh, Penn Jenks, John Heyer, Sam Denton
Última atualização: 2024-10-30 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2409.19759
Fonte PDF: https://arxiv.org/pdf/2409.19759
Licença: https://creativecommons.org/licenses/by/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.