Minhas informações de contato
Correspondênciaadmin@informação.bz
2024-08-19
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
A coluna AIxiv é uma coluna onde a Machine Heart publica conteúdo acadêmico e técnico. Nos últimos anos, a coluna Heart of the Machine AIxiv recebeu mais de 2.000 relatórios, abrangendo os principais laboratórios das principais universidades e empresas de todo o mundo, promovendo efetivamente o intercâmbio e a divulgação acadêmica. Se você tem um trabalho excelente que deseja compartilhar, sinta-se à vontade para contribuir ou entre em contato conosco para reportar. E-mail de envio: [email protected]; [email protected];
No campo da inteligência artificial, um aumento nos parâmetros do modelo muitas vezes significa uma melhoria no desempenho. No entanto, à medida que a escala do modelo se expande, o poder de computação e os requisitos de memória do dispositivo terminal também aumentam. A tecnologia de quantização de baixo bit tornou-se uma das principais tecnologias para permitir que grandes modelos sejam executados com eficiência em dispositivos com recursos limitados, pois pode reduzir significativamente os custos de armazenamento e computação e melhorar a eficiência de inferência. No entanto, se o dispositivo de hardware não suportar o modo de dados quantizados de baixo bit, as vantagens da quantização de baixo bit não serão realizadas.
Para resolver este problema, a Microsoft Research Asia lançou um novo compilador de dados Ladder e algoritmo T-MAC, que permite que hardware que atualmente suporta apenas cálculos de precisão simétrica execute diretamente a multiplicação de matrizes de precisão mista. Os resultados dos testes mostram que o Ladder pode atingir uma aceleração máxima de 14,6 vezes no suporte a tipos de dados personalizados que a GPU não suporta originalmente, permitindo a execução de dados em grande escala na CPU no Surface AI PC equipado com o mais recente Qualcomm Snapdragon X Elite; A taxa de transferência do modelo do chipset é duas vezes mais rápida que a NPU do acelerador dedicado. Além disso, os pesquisadores também projetaram a arquitetura de hardware LUT Tensor Core. Esse design simplificado permite que o hardware suporte diretamente vários cálculos de precisão mista de baixo bit, fornecendo novas ideias para o design de hardware de inteligência artificial.
Grandes modelos têm sido cada vez mais implantados em dispositivos finais, como smartphones, laptops e robôs, para fornecer inteligência avançada e serviços de resposta em tempo real. No entanto, grandes modelos contendo centenas de milhões de parâmetros impõem exigências extremamente elevadas à memória e ao poder de computação dos dispositivos terminais, limitando assim a sua aplicação generalizada. A tecnologia de quantização de baixo bit pode comprimir significativamente o tamanho do modelo e reduzir a demanda por recursos de computação. Tornou-se um meio eficaz para implantar modelos grandes no lado do dispositivo e obter inferência eficiente.
Com o desenvolvimento da tecnologia de quantização de baixo bit, os tipos de dados são cada vez mais diversificados, como int4, int2, int1 e outros dados de baixo bit, fazendo com que grandes modelos usem cada vez mais a multiplicação de matrizes de precisão mista de baixo peso e alto peso de bits. cálculos em inferência (multiplicação de matrizes de precisão mista, mpGEMM). No entanto, as unidades de computação de hardware existentes, como CPUs e GPUs, geralmente suportam apenas modos de computação simétricos e não são compatíveis com esta multiplicação de matrizes de precisão mista.
Como a multiplicação de matrizes de precisão mista difere da multiplicação de matrizes tradicional?
Na multiplicação de matrizes tradicional, os valores em ambas as extremidades envolvidas na operação são simétricos, como FP16*FP16, int8*int8. Mas a quantização de bits baixos de modelos grandes quebra essa simetria, fazendo com que uma extremidade da multiplicação seja um bit alto e a outra extremidade um bit baixo, como int8*int1 ou int8*int2 implementado no modelo BitNet de 1 bit, e ponto flutuante números. Multiplicação mista com inteiros FP16*int4.
Para aproveitar ao máximo as vantagens da quantização de baixo bit, permitir que os dispositivos de hardware suportem diretamente a multiplicação de matrizes de precisão mista e garantir a operação eficaz e de alta velocidade de grandes modelos em dispositivos finais, pesquisadores da Microsoft Research Asia se concentraram nos operadores de computação de CPU e GPU existentes e na inovação da arquitetura de hardware:
Ladder: conversão sem perdas de tipos de dados personalizados em tipos de dados suportados por hardware
Atualmente, aceleradores de última geração estão integrando as operações de unidades de computação de menor bit, como FP32, FP16 e até FP8, em arquiteturas de nova geração. No entanto, limitado pela área do chip e alto custo de hardware, cada acelerador pode fornecer apenas tipos limitados de unidades de computação para tipos de dados padrão. Por exemplo, a GPU NVIDIA V100 TENSOR CORE suporta apenas FP16, enquanto o A100 adicionou suporte para int2, int4, int8. , mas não abrange formatos de dados mais recentes, como FP8 ou OCP-MXFP. Além disso, existe uma lacuna entre a rápida iteração de grandes modelos e o ritmo lento de atualizações de hardware, resultando na incapacidade de muitos novos tipos de dados de serem suportados pelo hardware, o que, por sua vez, afeta a aceleração e a operação de grandes modelos.
Pesquisadores da Microsoft Research Asia descobriram que, embora o acelerador de hardware não possua instruções de computação para tipos de dados personalizados, seu sistema de memória pode convertê-los em blocos de dados opacos de largura fixa para armazenar tipos de dados arbitrários. Ao mesmo tempo, a maioria dos tipos de dados personalizados pode ser convertida sem perdas em tipos de dados padrão de bits mais altos, suportados pelas unidades de computação de hardware existentes. Por exemplo, tensores NF4 podem ser convertidos em FP16 ou FP32 para realizar operações de ponto flutuante.
Com base nessas descobertas, os pesquisadores propuseram umUm método para suportar todos os tipos de dados personalizados, separando o armazenamento e o cálculo de dados, e desenvolveu o compilador de dados Ladder para preencher a lacuna entre os tipos de dados personalizados emergentes e os formatos de precisão inerentes suportados pelo hardware atual.
Ladder define um sistema de tipos de dados, incluindo abstrações para conversão sem perdas entre tipos de dados. Ele pode representar vários tipos de dados suportados por algoritmos e hardware e define regras de conversão entre tipos de dados. Ao lidar com aplicações de algoritmo de baixo bit, o Ladder traduz dados de baixo bit no formato de execução mais eficiente no hardware atual por meio de uma série de otimizações, incluindo otimização de computação e armazenamento - mapeando o algoritmo para instruções de computação correspondentes e dados em diferentes formatos são armazenados em diferentes níveis de unidades de armazenamento para alcançar as operações mais eficientes.
Figura 1: Arquitetura do sistema ladder
A avaliação de desempenho de inferência DNN executada em GPUs NVIDIA A100, NVIDIA V100, NVIDIA RTX A6000, NVIDIA RTX 4090 e AMD Instinct MI250 mostra que o Ladder supera os compiladores DNN de última geração existentes no suporte nativo a tipos de dados e suporte a GPUs. funciona bem em tipos de dados personalizados que não eram originalmente suportados, com uma aceleração máxima de até 14,6 vezes.
Ladder é o primeiro sistema a suportar sistematicamente a representação de dados de baixa precisão em tipos de dados personalizados ao executar DNNs em aceleradores de hardware modernos.Isso fornece aos pesquisadores de modelos um método de otimização de tipo de dados mais flexível e também permite que os desenvolvedores de arquitetura de hardware suportem uma gama mais ampla de tipos de dados sem alterar o hardware.
T-MAC: Cálculo universal de multiplicação de matrizes de precisão mista de baixo bit sem multiplicação
Para permitir que os dispositivos de hardware existentes suportem diferentes modos de dados e multiplicação de matrizes de precisão mista, ao implantar modelos grandes no lado final, uma abordagem comum é quantizar inversamente o modelo de baixo bit. No entanto, existem dois problemas principais com esta abordagem: primeiro, do ponto de vista do desempenho, a sobrecarga de conversão no processo de desquantização pode compensar a melhoria de desempenho trazida pela quantização de baixo bit; segundo, do ponto de vista do desenvolvimento, os desenvolvedores precisam ter como alvo diferentes redesenhados; layout de dados e kernel de cálculo para precisão mista. Pesquisadores da Microsoft Research Asia acreditam que a chave para implantar grandes modelos quantizados de baixo bit em dispositivos está em como romper a implementação da multiplicação de matriz tradicional baseada em características de baixo bit.
Para tanto, os pesquisadores propuseram, a partir dos níveis do sistema e do algoritmoT-MAC, um método baseado em tabela de consulta (LUT, Look-Up Table), ajuda modelos grandes com quantização de baixo bit a obter inferência eficiente na CPU.A ideia central do T-MAC é aproveitar a característica de que uma extremidade da multiplicação de matrizes de precisão mista é composta por bits muito baixos (como 1 bit ou 2 bits). Seus resultados de saída são possíveis apenas 2 elevado à potência 1 e 2 elevado à potência 2. Esses resultados de saída menores podem ser calculados antecipadamente e armazenados na tabela. Durante a operação, os resultados só precisam ser lidos na tabela, evitando o. necessidade de cálculos repetidos reduzem muito o número de operações de multiplicação e adição.
Especificamente,O T-MAC transforma a multiplicação tradicional centrada no tipo de dados em operações de tabela de pesquisa baseadas em bits, permitindo uma solução unificada e escalonável de multiplicação de matrizes de precisão mista que reduz o tamanho da tabela e o mantém no mínimo. Em unidades de memória rápidas, o custo do acesso aleatório. tabelas é reduzida.Essa inovação abre caminho para a implantação de grandes modelos quantizados com poucos bits em dispositivos de borda com recursos limitados.
Figura 2: Diagrama esquemático T-MAC
Em testes contra modelos de linguagem Llama quantizados de baixo bit e BitNet de 1 bit, o T-MAC demonstrou vantagens de desempenho significativas. No Surface Laptop 7 equipado com o mais recente Qualcomm Snapdragon, a taxa de geração do modelo 7B Llama de 4 bits pode atingir 20 tokens por segundo, que é muito mais rápida que a velocidade média de leitura humana. Comparado com a estrutura Llama.cpp original, é 4 a 5 vezes mais rápido e até duas vezes mais rápido que o acelerador NPU dedicado.
Mesmo em dispositivos de desempenho inferior, como Raspberry Pi 5, o T-MAC permite que o modelo 3B BitNet-b1.58 atinja uma taxa de geração de 11 tokens por segundo. O T-MAC também tem vantagens significativas em termos de energia, alcançando as mesmas taxas de geração em dispositivos com recursos limitados e exigindo apenas 1/4 a 1/6 da contagem de núcleos do Llama.cpp original.
Esses resultados mostram que o T-MAC fornece uma solução prática que torna mais eficiente a implantação de grandes modelos de linguagem em dispositivos de ponta usando CPUs de uso geral sem depender de GPUs, permitindo que grandes modelos sejam implantados em dispositivos com recursos limitados e executem com eficiência. promovendo a aplicação de grandes modelos em uma ampla gama de cenários.
LUT Tensor Core: impulsionando aceleradores de hardware de última geração com suporte nativo para multiplicação de matrizes de precisão mista
Tanto o T-MAC quanto o Ladder implementam suporte otimizado para multiplicação de matrizes de precisão mista em arquiteturas de CPU e GPU existentes. Embora essas inovações em nível de software melhorem significativamente a eficiência computacional, elas ainda não são tão eficientes quanto os aceleradores de hardware que podem implementar diretamente uma tabela de consulta especializada. Os pesquisadores acreditam que a abordagem mais ideal é redesenhar os aceleradores de hardware para que CPUs, GPUs, etc. possam suportar nativamente a multiplicação de matrizes de precisão mista. No entanto, esse objetivo enfrenta três desafios principais:
Para enfrentar esses desafios, os pesquisadores da Microsoft Research Asia projetaramLUT Tensor Core, uma microarquitetura GPU Tensor Core que usa tabelas de pesquisa para realizar diretamente a multiplicação de matrizes de precisão mista.Por um lado, o design baseado na tabela de consulta simplifica a operação de multiplicação em uma operação de pré-cálculo de tabela, e os resultados podem ser pesquisados diretamente na tabela para melhorar a eficiência do cálculo. Por outro lado, esta abordagem também simplifica os requisitos de hardware. Requer apenas registros para armazenamento de tabelas e multiplexadores para pesquisas, sem a necessidade de multiplicadores e somadores. Ao mesmo tempo, o LUT Tensor Core alcança flexibilidade na precisão do peso por meio do design serial de bits e usa quantização de tabela para obter flexibilidade na precisão da ativação.
Além disso, para integrar a microarquitetura GPU existente e a pilha de software, os pesquisadores expandiram o conjunto de instruções MMA existente na GPU, adicionaram um conjunto de instruções LMMA e projetaram uma pilha de software semelhante ao cuBLAS para integração nas GPUs existentes. algumas estruturas DNN. Os pesquisadores também projetaram um compilador para planejamento de execução ponta a ponta em GPUs com LUT Tensor Cores. Essas abordagens inovadoras permitem a adoção rápida e contínua de LUT Tensor Cores.
Figura 3: Visão geral da microarquitetura LUT Tensor Core
Testes nos modelos Llama e BitNet mostram que o LUT Tensor Core pode fornecer até 6,93 vezes a velocidade de inferência e representa apenas 38,7% da área do Tensor Core tradicional. Com quase a mesma precisão do modelo, isso equivale a 20,7 vezes a densidade de computação e 19,1 vezes a melhoria da eficiência energética. À medida que a escala e a complexidade dos grandes modelos de inteligência artificial continuam a crescer, o LUT Tensor Core ajuda a liberar ainda mais o potencial dos modelos de linguagem grande e com poucos bits e a promover a aplicação da inteligência artificial em novos cenários.
"O método da tabela de consulta levou a uma mudança no paradigma da computação. No passado, dependíamos de operações de multiplicação e acumulação de matrizes, mas na era dos grandes modelos, graças à tecnologia de quantização de baixo bit, a tabela de consulta O método se tornará popular. Em comparação com a aritmética de ponto flutuante tradicional ou a multiplicação de matrizes, o método da tabela de pesquisa é mais leve e eficiente no cálculo e é mais fácil de expandir no nível do hardware. Ele pode atingir maior densidade de transistor e fornecer maior rendimento por unidade. área de chips, promovendo assim o desenvolvimento da arquitetura de hardware." disse Cao Ting, pesquisador-chefe da Microsoft Research Asia.
O efeito de cauda longa da quantização de baixo bit: trazendo novas possibilidades para a inteligência incorporada
A tecnologia de quantização de baixo bit não apenas otimiza a eficiência de execução de modelos grandes em dispositivos finais, mas também fornece novo espaço para expansão de parâmetros de modelo (aumento de escala), reduzindo o "volume" de um único parâmetro. Esta capacidade de expansão de parâmetros dá ao modelo maior flexibilidade e capacidades expressivas. Conforme mostrado pelo modelo BitNet, ele começa a partir de um modelo de baixo bit e gradualmente se expande para treinamento em maior escala.
As tecnologias inovadoras da Microsoft Research Asia, como T-MAC, Ladder e LUT Tensor Core, fornecem soluções de operação de alto desempenho para vários modelos grandes quantizados de baixo bit, permitindo que esses modelos sejam executados com eficiência em vários dispositivos e promovendo a pesquisa científica. Projete e otimize modelos grandes. de uma perspectiva low-bit. Algumas destas tecnologias já desempenham um papel em grandes modelos de pesquisa, como o Bing Search da Microsoft e o seu negócio de publicidade.Com a redução da memória e dos recursos computacionais, também será possível implantar grandes modelos de baixo bit em sistemas inteligentes incorporados, como robôs, permitindo que esses dispositivos alcancem melhor percepção dinâmica e interação em tempo real com o ambiente.
Atualmente, T-MAC e Ladder são de código aberto no GitHub. Desenvolvedores relevantes são bem-vindos para testar os aplicativos e explorar mais possibilidades de tecnologia de inteligência artificial com a Microsoft Research Asia.