Ajuste de Modelos de Linguagem por Proxy
Tuning Language Models by Proxy
January 16, 2024
Autores: Alisa Liu, Xiaochuang Han, Yizhong Wang, Yulia Tsvetkov, Yejin Choi, Noah A. Smith
cs.AI
Resumo
Apesar das capacidades gerais dos grandes modelos de linguagem pré-treinados, eles consistentemente se beneficiam de uma adaptação adicional para melhor alcançar comportamentos desejados. No entanto, ajustar esses modelos tem se tornado cada vez mais intensivo em recursos, ou impossível quando os pesos do modelo são privados. Introduzimos o proxy-tuning, um algoritmo leve de decodificação que opera sobre modelos de linguagem de caixa preta para alcançar o resultado de ajustar diretamente o modelo, mas acessando apenas suas previsões sobre o vocabulário de saída. Nosso método ajusta um modelo de linguagem menor e, em seguida, aplica a diferença entre as previsões dos modelos menores ajustados e não ajustados para deslocar as previsões originais do modelo base na direção do ajuste, mantendo os benefícios do pré-treinamento em grande escala. Em experimentos, quando aplicamos o proxy-tuning ao Llama2-70B usando proxies de apenas 7B de tamanho, conseguimos fechar 88% da lacuna entre o Llama2-70B e sua versão de chat verdadeiramente ajustada, quando avaliada em benchmarks de conhecimento, raciocínio e segurança. Curiosamente, quando testado no TruthfulQA, os modelos com proxy-tuning são na verdade mais verídicos do que os modelos ajustados diretamente, possivelmente porque a orientação no tempo de decodificação retém melhor o conhecimento factual do modelo. Em seguida, demonstramos a generalidade do proxy-tuning aplicando-o para adaptação de domínio em código e ajuste fino específico para tarefas de resposta a perguntas e problemas matemáticos. Nosso trabalho demonstra o potencial de usar modelos de linguagem pequenos ajustados para personalizar eficientemente modelos de linguagem grandes, potencialmente proprietários, por meio de orientação no tempo de decodificação.
English
Despite the general capabilities of large pretrained language models, they
consistently benefit from further adaptation to better achieve desired
behaviors. However, tuning these models has become increasingly
resource-intensive, or impossible when model weights are private. We introduce
proxy-tuning, a lightweight decoding-time algorithm that operates on top of
black-box LMs to achieve the result of directly tuning the model, but by
accessing only its prediction over the output vocabulary. Our method instead
tunes a smaller LM, then applies the difference between the predictions of the
small tuned and untuned LMs to shift the original predictions of the base model
in the direction of tuning, while retaining the benefits of larger scale
pretraining. In experiments, when we apply proxy-tuning to Llama2-70B using
proxies of only 7B size, we can close 88% of the gap between Llama2-70B and its
truly-tuned chat version, when evaluated across knowledge, reasoning, and
safety benchmarks. Interestingly, when tested on TruthfulQA, proxy-tuned models
are actually more truthful than directly tuned models, possibly because
decoding-time guidance better retains the model's factual knowledge. We then
demonstrate the generality of proxy-tuning by applying it for domain adaptation
on code, and task-specific finetuning on question-answering and math problems.
Our work demonstrates the promise of using small tuned LMs to efficiently
customize large, potentially proprietary LMs through decoding-time guidance.