FuseChat: Fusão de Conhecimento em Modelos de Conversação
FuseChat: Knowledge Fusion of Chat Models
February 25, 2024
Autores: Fanqi Wan, Ziyi Yang, Longguang Zhong, Xiaojun Quan, Xinting Huang, Wei Bi
cs.AI
Resumo
Embora o treinamento de grandes modelos de linguagem (LLMs) a partir do zero possa, de fato, resultar em modelos com capacidades e pontos fortes distintos, essa abordagem acarreta custos substanciais e pode levar a uma possível redundância de competências. Uma estratégia alternativa é combinar LLMs existentes em um modelo mais robusto, reduzindo assim a necessidade de um pré-treinamento dispendioso. No entanto, devido às diversas arquiteturas dos LLMs, a fusão direta de parâmetros se mostra inviável. Recentemente, o FuseLLM introduziu o conceito de fusão de conhecimento para transferir o conhecimento coletivo de múltiplos LLMs estruturalmente variados para um LLM alvo por meio de um treinamento contínuo leve. Neste relatório, ampliamos a escalabilidade e a flexibilidade do framework FuseLLM para realizar a fusão de LLMs de chat, resultando no FuseChat.
O FuseChat compreende duas etapas principais. Primeiramente, realizamos a fusão de conhecimento para LLMs de origem com estruturas e escalas variadas, obtendo múltiplos LLMs alvo de estrutura e tamanho idênticos por meio de um ajuste fino leve. Em seguida, esses LLMs alvo são fundidos no espaço de parâmetros, onde propomos um método inovador para determinar os pesos de fusão com base na taxa de variação das matrizes de parâmetros antes e depois do ajuste fino. Validamos nossa abordagem utilizando três destacados LLMs de chat com arquiteturas e escalas diversas, nomeadamente NH2-Mixtral-8x7B, NH2-Solar-10.7B e OpenChat-3.5-7B. Os resultados experimentais abrangendo diversos domínios de chat demonstram a superioridade do \textsc{FuseChat-7B} em um amplo espectro de LLMs de chat nas escalas de 7B e 34B, superando até mesmo o GPT-3.5 (Março) e se aproximando do Mixtral-8x7B-Instruct. Nosso código, pesos do modelo e dados estão acessíveis publicamente em https://github.com/fanqiwan/FuseLLM.
English
While training large language models (LLMs) from scratch can indeed lead to
models with distinct capabilities and strengths, this approach incurs
substantial costs and may lead to potential redundancy in competencies. An
alternative strategy is to combine existing LLMs into a more robust LLM,
thereby diminishing the necessity for expensive pre-training. However, due to
the diverse architectures of LLMs, direct parameter blending proves to be
unfeasible. Recently, FuseLLM introduced the concept of knowledge
fusion to transfer the collective knowledge of multiple structurally varied
LLMs into a target LLM through lightweight continual training. In this report,
we extend the scalability and flexibility of the FuseLLM framework to
realize the fusion of chat LLMs, resulting in FuseChat.
FuseChat comprises two main stages. Firstly, we undertake knowledge
fusion for structurally and scale-varied source LLMs to derive multiple target
LLMs of identical structure and size via lightweight fine-tuning. Then, these
target LLMs are merged within the parameter space, wherein we propose a novel
method for determining the merging weights based on the variation ratio of
parameter matrices before and after fine-tuning. We validate our approach using
three prominent chat LLMs with diverse architectures and scales, namely
NH2-Mixtral-8x7B, NH2-Solar-10.7B, and
OpenChat-3.5-7B. Experimental results spanning various chat domains
demonstrate the superiority of \textsc{FuseChat-7B} across a broad
spectrum of chat LLMs at 7B and 34B scales, even surpassing GPT-3.5
(March) and approaching Mixtral-8x7B-Instruct. Our code, model
weights, and data are openly accessible at
https://github.com/fanqiwan/FuseLLM.