notícias

Desafiando a lei de escala, Meta lança MobileLLM, um modelo pequeno de 350M no lado móvel, com desempenho comparável ao 7B LLaMA-v

2024-07-22

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina


Novo Relatório de Sabedoria

Editor: Qiao Yang

[Introdução à Nova Sabedoria] A Lei de Dimensionamento ainda não chegou ao fim e os “pequenos modelos” tornaram-se gradualmente uma tendência que os gigantes da tecnologia estão a acompanhar. A série MobileLLM lançada recentemente pela Meta foi até reduzida em escala para menos de 1B. As duas versões possuem apenas parâmetros de 125M e 350M, respectivamente, mas alcançaram melhor desempenho do que os modelos de maior escala.

Nas conferências de imprensa de vários gigantes da tecnologia em maio e junho, já podemos sentir vagamente uma importante tendência de desenvolvimento da IA: dos centros de dados na nuvem aos utilizadores individuais, dos grandes servidores aos notebooks e dispositivos móveis.

Seguir a Lei do Scaling não é mais o único caminho, e a história de modelos que “pegam pouco para ganhar muito” continua a se desenrolar.

Primeiro a Microsoft o atualizou; depois o Google o usou.

Em termos de hardware, temos visto as funções de IA sendo gradualmente integradas aos produtos eletrônicos.

Por exemplo, a infame função Recall da Microsoft é uma parte importante deles; a Apple também lançou aplicativos sob a égide do Apple Intelligence, esforçando-se para se integrar perfeitamente ao iOS.

Hoje em dia, os parâmetros do LLM costumam atingir dezenas de bilhões. Os parâmetros do Apple 3B já são muito pequenos, mas ainda existe um limite alto para dispositivos móveis, como telefones celulares.

Ele não apenas usa um modelo de compactação de precisão mista de 2 e 4 bits (média de 3,5 bits por peso), mas também requer pelo menos 8G de memória e um chip M1 para funcionar.

Um artigo publicado recentemente pela Meta mostra que o número de parâmetros pode ser ainda mais reduzido. O número de parâmetros do modelo MobileLLM recentemente proposto é inferior a 1B, mas o desempenho ainda é impressionante.


Endereço do artigo: https://arxiv.org/abs/2402.14905

LeCun também tuitou pessoalmente para endossar esta pesquisa, elogiando uma série de operações que simplificaram o número de parâmetros.


Este artigo foi aceito pelo ICML 2024 e o código de treinamento do modelo foi aberto no GitHub.


Endereço GitHub: https://github.com/facebookresearch/MobileLLM

Introdução

Vamos primeiro fazer uma suposição. Se o GPT-4 (com cerca de 1 trilhão de parâmetros) for implantado na vida com uma velocidade de inferência de 50 tokens/s, de que tipo de hardware você precisa?

A resposta é 100 milhões de GPUs H100. Muito menos os dispositivos móveis, eles não podem ser colocados em casa.

Então, e se reduzirmos o padrão e usarmos um modelo como LLaMA-v2 7B, juntamente com quantização de 8 bits?

Um cálculo simples mostra que apenas o armazenamento dos parâmetros do modelo requer cerca de 7 GB, mas não é espaço de armazenamento, mas sim um precioso espaço de memória operacional (DRAM).


Além disso, a DRAM não pode ser totalmente ocupada pelo modelo AI Considerando o funcionamento do sistema operacional e outros aplicativos, a proporção de memória LLM não pode exceder 10%.

De acordo com as estatísticas da Figura 2, os dispositivos móveis lançados recentemente por diversas marcas são geralmente equipados com 6 a 12 GB de DRAM. Isso significa que se você quiser implantá-lo com sucesso em um telefone celular, o número de parâmetros do modelo deverá ser reduzido para <1B.

Não apenas o armazenamento, mas também o consumo de energia é um grande problema. O consumo de energia do modelo 7B é de cerca de 0,7J/token, e um iPhone totalmente carregado tem cerca de 50kJ para desperdiçar. Calculado, se a velocidade de geração for de 10 tokens/s, uma carga completa do seu celular só permitirá que você fale com o modelo por 2 horas.

Com base nas considerações acima, é a escolha mais ideal para implantar um modelo <1B no terminal móvel. Portanto, o tamanho do parâmetro do MobileLLM está posicionado em 125M/350M, que é uma ordem de magnitude menor que o modelo 3B da Apple. pode ser considerado o "mini entre os minis".

Mas não se limite à Lei de Escala. Parâmetros pequenos não significam capacidades fracas. A importância da arquitetura do modelo deve voltar à nossa atenção.


MobileLLM não só alcança desempenho SOTA em modelos do mesmo tamanho, mas também propõe que a profundidade da arquitetura é mais importante que a largura. Um modelo pequeno "profundo e estreito" "delgado" também pode aprender conceitos abstratos.

Arquitetura e Métodos

Com parâmetros de apenas 125M/350M, como otimizar o projeto da arquitetura dentro de uma faixa limitada tornou-se uma questão importante.

Para LLM <1B, o autor explorou 4 técnicas eficazes de projeto de arquitetura.

1) Use a rede feedforward SwiGLU

2) Faça o formato geral da rede “longa e estreita”, ou seja, profunda e estreita

3) Reutilize o método de compartilhamento de incorporação

4) Use mecanismo de atenção de consulta agrupada (atenção de consulta agrupada)


Com base nisso, o autor também propôs um método de compartilhamento de camadas em blocos, que pode melhorar ainda mais a precisão do modelo sem introduzir sobrecarga de memória adicional, mas ao custo de aumentar o atraso de inferência do processo de decodificação.

Este modelo com mecanismo de compartilhamento de camada adicionado é denominado MobileLLM-LS.

Refute a lei de escala: O projeto arquitetônico de pequenos modelos é muito importante

O artigo que propõe a Lei de Escalabilidade em 2020 acredita que a quantidade de dados de treinamento, a quantidade de parâmetros e o número de iterações de treinamento são os principais fatores que determinam o desempenho, e o impacto da arquitetura do modelo pode quase ser ignorado.

No entanto, o autor deste artigo propôs através de experimentos comparativos que esta lei não se aplica a modelos pequenos.

Quando os parâmetros do modelo são fixados em 125M ou 350M, o modelo “estreito” com 30 a 42 camadas tem desempenho significativamente melhor do que o modelo “curto e gordo” com cerca de 12 camadas (Figura 4), no raciocínio de bom senso, pergunta e resposta , compreensão de leitura, etc. 8 Existem tendências semelhantes em todos os parâmetros de referência.


Esta é na verdade uma descoberta muito interessante, porque no passado, ao projetar arquiteturas para pequenos modelos da ordem de 125M, geralmente não empilhavam mais de 12 camadas.

Por que voltar ao “compartilhamento de código”

O método de "compartilhamento de incorporação" foi proposto pela primeira vez por modelos pequenos como o OPT, porque os parâmetros da camada de codificação no modelo pequeno representam uma proporção considerável.

Por exemplo, o modelo 125M usa codificação com comprimento de contexto de 32k e dimensão de 512. As camadas de codificação de entrada e saída contêm 16M de parâmetros, representando 20%.

Em comparação, o número de parâmetros da camada de codificação de modelos grandes é insignificante. Por exemplo, no LLaMA-7B, essa proporção caiu para 3,7%, e no LLaMA-70B, foi de apenas 0,7%. Portanto, a codificação compartilhada é dispensável para o LLM.

A obsolescência do compartilhamento de código na era dos modelos grandes não significa que essa tecnologia não seja mais adequada para modelos pequenos. Ela pode tornar a arquitetura do modelo mais compacta e eficiente.

Conforme mostrado na Tabela 1, após o compartilhamento de código, o modelo ainda mantém seu desempenho geral original, enquanto reduz o número total de parâmetros em 16M, e até melhora em alguns benchmarks.


mecanismo de compartilhamento de camadas

Como mencionado anteriormente, os resultados experimentais do artigo descobriram que tornar os modelos pequenos “esbeltos” é benéfico para a melhoria do desempenho. Então o autor pensou: Se um mecanismo de compartilhamento de camadas fosse introduzido, não seria equivalente a aumentar a profundidade do modelo enquanto mantinha o número total de parâmetros inalterado.

Experimentos provaram que este método pode realmente melhorar o desempenho, e o artigo também comparou diferentes métodos de compartilhamento de camadas (Figura 6). No final, após pesar a memória do dispositivo, o desempenho e a latência de inferência, o compartilhamento imediato por bloco (compartilhamento imediato por bloco). , Figura 6b).


Experimento de avaliação

O autor construiu modelos MobileLLM/MobileLLM-LS com parâmetros de 125M e 350M e os treinou em um conjunto de dados 1T.

O modelo pré-treinado é testado em vários conjuntos de dados com zero amostras, incluindo benchmarks comumente usados, como ARC-easy, ARCchallenge, HellaSwag, WinoGrande, TQA e RACE.

A Tabela 3 mostra os resultados da avaliação do raciocínio de senso comum de amostra zero. A série MobileLLM basicamente alcançou SOTA abrangente, não apenas superando os modelos clássicos lançados anteriormente, como OPT e BLOOM, mas também melhor do que o GPT-neo, Galactica, lançado recentemente. RWKV e outros parâmetros maiores.


Em termos de resposta a perguntas e compreensão de leitura, o MobileLLM ainda tem um bom desempenho (Tabela 4). Comparado com outros modelos, o 125M e o 325M MobileLLM apresentam uma melhoria de >6,4 pontos e cerca de 10 pontos no TQA, respectivamente.

Tarefas posteriores

Além de executar pontuações em testes de benchmark, o documento também leva em consideração os diversos requisitos do modelo ao implantar cenários de aplicativos e conduz avaliações correspondentes.

AlpacaEval e MT-Bench testam respectivamente o desempenho do modelo em tarefas de bate-papo de rodada única e de rodada múltipla. Em comparação com os outros três modelos básicos, o MobileLLM ainda tem o melhor desempenho e pode até usar parâmetros de 350M para superar o desempenho de outros. parâmetro >1B modelos.


Exceto pelo diálogo, no cenário de chamada de API, a pontuação EM do MobileLLM pode corresponder à do LLaMA-v2 com parâmetros 7B.


Além disso, MobileLLM também é muito compatível com quantização (PTQ). Após a quantificação do W8A8, o desempenho do modelo caiu menos de 0,5 ponto e ainda é compatível com o mecanismo de compartilhamento de camadas, para que possa se adaptar à implantação em condições de hardware mais rigorosas.


Sobre o autor

O autor correspondente deste artigo, Zechun Liu, é um cientista pesquisador do Meta Reality Labs. Ela se formou na Universidade Fudan com bacharelado e doutorado pela Universidade de Ciência e Tecnologia de Hong Kong. Antes de ingressar na Meta, atuou como pesquisadora visitante na CMU por mais de dois anos.


Os interesses de pesquisa de Zechun são a aplicação de aprendizagem profunda em cenários da vida real, como as limitações de recursos insuficientes, o compromisso entre recursos computacionais e precisão, etc., com foco em binarização e quantização de redes, poda de canais de rede, arquitetura design e destilação de conhecimento etc.

Referências:

https://x.com/ylecun/status/1810035281472491665

https://arxiv.org/abs/2402.14905