Minhas informações de contato
Correspondênciaadmin@informação.bz
2024-08-19
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Relatório do coração da máquina
Editor: Panda
O Mamba é bom, mas o seu desenvolvimento ainda é inicial.
Existem muitas arquiteturas de aprendizagem profunda, mas a de maior sucesso nos últimos anos é a Transformer, que estabeleceu seu domínio em vários campos de aplicação.
Um dos principais impulsionadores deste sucesso é o mecanismo de atenção, que permite que os modelos baseados no Transformer se concentrem em partes relevantes da sequência de entrada para obter uma melhor compreensão contextual. Porém, a desvantagem do mecanismo de atenção é que o overhead computacional é alto, o que aumentará quadraticamente com o tamanho da entrada, dificultando o processamento de textos muito longos.
Felizmente, uma nova arquitetura com grande potencial nasceu há algum tempo: o modelo estruturado de sequência de espaço de estados (SSM). Essa arquitetura pode capturar com eficiência dependências complexas em dados sequenciais, tornando-a um oponente poderoso do Transformer.
O design deste tipo de modelo é inspirado no clássico modelo de espaço de estados - podemos pensar nele como um modelo de fusão de redes neurais recorrentes e redes neurais convolucionais. Eles podem ser calculados de forma eficiente usando operações de loop ou convolução, permitindo que a sobrecarga computacional seja dimensionada linearmente ou quase linearmente com o comprimento da sequência, reduzindo significativamente os custos computacionais.
Mais especificamente, o Mamba, uma das variantes de maior sucesso do SSM, possui capacidades de modelagem comparáveis às do Transformer, enquanto mantém a escalabilidade linear com o comprimento da sequência.
O Mamba introduz pela primeira vez um mecanismo de seleção simples, mas eficaz, que reparametriza SSMs com base em entradas, permitindo que o modelo retenha dados necessários e relevantes indefinidamente enquanto filtra informações irrelevantes. Além disso, o Mamba também inclui um algoritmo com reconhecimento de hardware que usa varreduras em vez de convoluções para calcular o modelo ciclicamente, o que pode aumentar a velocidade de cálculo em 3 vezes na GPU A100.
Conforme mostrado na Figura 1, com sua poderosa capacidade de modelar dados complexos de sequência longa e escalabilidade quase linear, o Mamba emergiu como um modelo básico e espera-se que revolucione vários campos de pesquisa e desenvolvimento, como visão computacional, processamento de linguagem natural e medicina. cuidados. Áreas de aplicação.
Portanto, a literatura sobre a pesquisa e aplicação do Mamba está crescendo rapidamente e é vertiginosa, e um relatório de revisão abrangente será de grande benefício. Recentemente, uma equipe de pesquisa da Universidade Politécnica de Hong Kong publicou suas contribuições no arXiv.
Este relatório de revisão resume o Mamba a partir de múltiplas perspectivas, o que pode não apenas ajudar os iniciantes a aprender o mecanismo básico de funcionamento do Mamba, mas também ajudar os profissionais experientes a compreender os progressos mais recentes.
Mamba é uma direção de pesquisa popular e, portanto, muitas equipes estão tentando escrever relatórios de revisão, além do apresentado neste artigo, há outras revisões focadas em modelos de espaço de estado ou Mamba visual. Para obter detalhes, consulte os artigos correspondentes. :
Conhecimento preliminar
Mamba combina a estrutura cíclica da Rede Neural Recorrente (RNN), a computação paralela e o mecanismo de atenção do Transformador e as características lineares do Modelo de Espaço de Estados (SSM). Portanto, para compreender completamente o Mamba, você deve primeiro compreender essas três arquiteturas.
rede neural recorrente
As redes neurais recorrentes (RNN) são boas no processamento de dados de sequência devido à sua capacidade de reter memória interna.
Especificamente, em cada passo de tempo discreto k, um RNN padrão processa um vetor junto com o estado oculto do passo de tempo anterior e, em seguida, gera outro vetor e atualiza o estado oculto. Este estado oculto pode ser usado como memória do RNN, que pode reter as informações de entrada que foram vistas no passado. Esta memória dinâmica permite que o RNN lide com sequências de diferentes comprimentos.
Ou seja, RNN é um modelo recorrente não linear que captura efetivamente padrões temporais usando conhecimento histórico armazenado em estados ocultos.
Transformador
O mecanismo de autoatenção do Transformer ajuda a capturar dependências globais entre entradas. Isto é feito atribuindo pesos a cada posição com base na sua importância em relação a outras posições. Mais especificamente, a entrada original é primeiro transformada linearmente para converter a sequência x de vetores de entrada em três tipos de vetores: consulta Q, chave K e valor V.
Em seguida, o escore de atenção normalizado S é calculado e o peso da atenção é calculado.
Além de podermos realizar uma função de atenção única, também podemos realizar atenção com múltiplas cabeças. Isso permite que o modelo capture diferentes tipos de relacionamentos e compreenda sequências de entrada de múltiplas perspectivas. A atenção multicabeças usa vários conjuntos de módulos de autoatenção para processar sequências de entrada em paralelo. Cada uma dessas cabeças opera de forma independente e executa os mesmos cálculos que os mecanismos padrão de autoatenção.
Posteriormente, os pesos de atenção de cada cabeça são agregados e combinados para obter a soma ponderada dos vetores de valor. Esta etapa de agregação permite que o modelo use informações de vários cabeçotes e capture muitos padrões e relacionamentos diferentes na sequência de entrada.
espaço de estado
O modelo de espaço de estados (SSM) é uma estrutura matemática tradicional que pode ser usada para descrever o comportamento dinâmico de um sistema ao longo do tempo. Nos últimos anos, o SSM tem sido amplamente utilizado em diversos campos, como cibernética, robótica e economia.
Em sua essência, o SSM reflete o comportamento do sistema por meio de um conjunto de variáveis ocultas chamadas “estado”, permitindo capturar efetivamente as dependências dos dados de tempo. Ao contrário do RNN, o SSM é um modelo linear com propriedades associativas. Especificamente, o modelo clássico de espaço de estados constrói duas equações-chave (equação de estado e equação de observação) para modelar a relação entre a entrada x e a saída y no tempo atual t por meio de um estado oculto N-dimensional h (t).
Para atender às necessidades de aprendizado de máquina, o SSM deve passar por um processo de discretização – convertendo parâmetros contínuos em parâmetros discretos. De modo geral, o objetivo dos métodos de discretização é dividir o tempo contínuo em K intervalos discretos com uma área integral tão igual quanto possível. Para atingir esse objetivo, uma das soluções mais representativas adotadas pelo SSM é Zero-Order Hold (ZOH), que assume que o valor da função no intervalo Δ = [_{−1}, _ ] permanece constante. O SSM discreto tem uma estrutura semelhante a uma rede neural recorrente, portanto, o SSM discreto pode realizar o processo de inferência com mais eficiência do que os modelos baseados em Transformer.
O SSM discreto é um sistema linear com propriedades associativas e, portanto, pode ser perfeitamente integrado com cálculos convolucionais.
A relação entre RNN, Transformer e SSM
A Figura 2 mostra os algoritmos de cálculo de RNN, Transformer e SSM.
Por um lado, as RNNs convencionais operam com base em uma estrutura recorrente não linear, onde cada cálculo depende apenas do estado oculto anterior e da entrada atual.
Embora esta forma permita que o RNN gere saída rapidamente durante a inferência autoregressiva, também torna difícil para o RNN utilizar totalmente o poder de computação paralelo da GPU, resultando em um treinamento de modelo mais lento.
A arquitetura Transformer, por outro lado, realiza multiplicações de matrizes em vários pares de chaves de consulta em paralelo, e as multiplicações de matrizes podem ser alocadas com eficiência aos recursos de hardware, permitindo um treinamento mais rápido de modelos baseados em atenção. No entanto, se você quiser que um modelo baseado em Transformer gere respostas ou previsões, o processo de inferência pode ser muito demorado.
Ao contrário do RNN e do Transformer, que suportam apenas um tipo de cálculo, o SSM discreto é muito flexível graças à sua natureza linear, podendo suportar cálculo de loop e cálculo de convolução; Esse recurso permite que o SSM não apenas obtenha inferência eficiente, mas também treinamento paralelo. Porém, deve-se ressaltar que o SSM mais convencional é invariante no tempo, ou seja, seus A, B, C e Δ são independentes da entrada do modelo x. Isso limitará seus recursos de modelagem com reconhecimento de contexto, fazendo com que o SSM tenha um desempenho insatisfatório em algumas tarefas específicas, como a cópia seletiva.
Mamba
A fim de resolver as deficiências acima do SSM tradicional e obter modelagem consciente do contexto, Albert Gu e Tri Dao propuseram o Mamba, que pode ser usado como rede de backbone de um modelo básico de sequência universal. Consulte o relatório Machine Heart "Five times throughput,". o desempenho envolve de forma abrangente o Transformer: A nova arquitetura Mamba detona o círculo de IA".
Depois disso, os dois propuseram ainda o Mamba-2, no qual a Dualidade Estruturada Espaço-Estado (SSD/Structured Space-State Duality) construiu uma estrutura teórica robusta que conecta o SSM estruturado com várias formas de atenção. os algoritmos e tecnologias de otimização de sistema originalmente desenvolvidos para Transformer to SSM Você também pode consultar o relatório Heart of the Machine "Fighting Transformer Again!" O Mamba 2, liderado pelo autor original, está aqui, e a eficiência de treinamento da nova arquitetura foi bastante melhorada.”
Mamba-1: Modelo de espaço de estado seletivo usando algoritmos com reconhecimento de hardware
Mamba-1 apresenta três principais tecnologias inovadoras baseadas no modelo de espaço de estado estruturado, nomeadamente inicialização de memória, mecanismo de seleção e computação com reconhecimento de hardware baseada no operador de projeção polinomial de alta ordem (HiPPO). Conforme mostrado na Figura 3. O objetivo dessas técnicas é melhorar as capacidades de modelagem linear de séries temporais de longo alcance do SSM.
Especificamente, a estratégia de inicialização constrói uma matriz de estado oculto coerente para promover efetivamente a memória de longo alcance.
Os mecanismos de seleção permitem então que o SSM adquira representações de conteúdo perceptível.
Finalmente, para melhorar a eficiência do treinamento, o Mamba também inclui dois algoritmos de computação com reconhecimento de hardware: Varredura Associativa Paralela e Recomputação de Memória.
Mamba-2: dualidade do espaço de estados
O Transformer inspirou o desenvolvimento de muitas tecnologias diferentes, como ajuste fino com eficiência de parâmetros, mitigação de esquecimento catastrófico e quantização de modelos. Para que os modelos de espaço de estados também se beneficiem dessas tecnologias originalmente desenvolvidas para o Transformer, o Mamba-2 introduz uma nova estrutura: Dualidade de Espaço de Estados Estruturados (SSD). Esta estrutura conecta teoricamente o SSM e diferentes formas de atenção.
Essencialmente, o SSD mostra que tanto o mecanismo de atenção usado pelo Transformer quanto o sistema linear invariante no tempo usado no SSM podem ser vistos como transformações de matriz semi-separáveis.
Além disso, Albert Gu e Tri Dao também provaram que o SSM seletivo é equivalente a um mecanismo de atenção linear estruturado implementado usando uma matriz de máscara semi-separável.
Mamba-2 projeta um método de computação baseado em SSD que utiliza hardware de forma mais eficiente, usando um algoritmo de multiplicação de matrizes de decomposição em blocos.
Especificamente, ao tratar o modelo de espaço de estados como uma matriz semi-separável através desta transformação de matriz, o Mamba-2 é capaz de decompor esta computação em blocos de matriz, onde os blocos diagonais representam computações intra-bloco. Enquanto os blocos fora da diagonal representam a computação entre blocos por meio da decomposição de estado oculto do SSM. Este método permite que a velocidade de treinamento do Mamba-2 seja 2 a 8 vezes mais rápida do que a varredura de correlação paralela do Mamba-1, enquanto o desempenho é comparável ao do Transformer.
Bloco mamba
Vamos dar uma olhada nos designs de blocos do Mamba-1 e Mamba-2. A Figura 4 compara as duas arquiteturas.
O design do Mamba-1 é centrado no SSM, onde a tarefa da camada seletiva do SSM é realizar o mapeamento da sequência de entrada X para Y. Neste projeto, após criar inicialmente uma projeção linear de X, é utilizada uma projeção linear de (A, B, C). Em seguida, o token de entrada e a matriz de estado são varridos através da unidade SSM seletiva usando correlação paralela para obter a saída Y. Posteriormente, o Mamba-1 adota uma conexão de salto para incentivar a reutilização de recursos e aliviar o problema de degradação de desempenho que geralmente ocorre durante o treinamento do modelo. Finalmente, o modelo Mamba é construído empilhando este módulo de maneira alternada com normalização padrão e conexões residuais.
Quanto ao Mamba-2, a camada SSD é introduzida para criar um mapeamento de [X, A, B, C] para Y. Isso é conseguido usando uma única projeção no início do bloco para processar [X, A, B, C] simultaneamente, semelhante a como as arquiteturas de atenção padrão geram projeções Q, K, V em paralelo.
Ou seja, o bloco Mamba-2 é simplificado com base no bloco Mamba-1 removendo a projeção linear da sequência. Isso permite que a arquitetura SSD execute cálculos mais rapidamente do que a varredura seletiva paralela do Mamba-1. Além disso, para melhorar a estabilidade do treinamento, o Mamba-2 também adiciona uma camada de normalização após a conexão de salto.
O modelo Mamba está evoluindo
O modelo de espaço de estados e o Mamba desenvolveram-se rapidamente recentemente e tornaram-se um modelo básico de escolha de rede de backbone com grande potencial. Embora o Mamba tenha um bom desempenho em tarefas de processamento de linguagem natural, ele ainda apresenta alguns problemas, como perda de memória, dificuldade de generalização para diferentes tarefas e baixo desempenho em padrões complexos em comparação com modelos de linguagem baseados em Transformer. Para resolver estes problemas, a comunidade científica propôs muitas melhorias na arquitetura Mamba. A pesquisa existente concentra-se principalmente no design de blocos de modificação, padrões de varredura e gerenciamento de memória. A Tabela 1 resume os estudos relevantes por categoria.
projeto de bloco
O design e a estrutura do bloco Mamba têm um grande impacto no desempenho global do modelo Mamba e, portanto, este tornou-se um importante foco de investigação.
Conforme mostrado na Figura 5, a pesquisa existente pode ser dividida em três categorias com base em diferentes métodos de construção de novos módulos Mamba:
Modo de digitalização
A varredura de correlação paralela é um componente chave do modelo Mamba. Seu objetivo é resolver os problemas computacionais causados pelo mecanismo de seleção, melhorar a velocidade do processo de treinamento e reduzir os requisitos de memória. Isto é conseguido explorando a natureza linear dos SSMs variantes no tempo para projetar a fusão do núcleo e a recomputação no nível do hardware. No entanto, o paradigma de modelagem de sequência unidirecional do Mamba não conduz ao aprendizado abrangente de diversos dados, como imagens e vídeos.
Para aliviar este problema, alguns investigadores exploraram novos métodos de digitalização eficientes para melhorar o desempenho do modelo Mamba e facilitar o seu processo de treino. Conforme mostrado na Figura 6, em termos de desenvolvimento de modos de digitalização, os resultados da pesquisa existente podem ser divididos em duas categorias:
gerenciamento de memória
Semelhante ao RNN, dentro do modelo de espaço de estados, a memória de estados ocultos armazena efetivamente as informações das etapas anteriores e, portanto, tem um impacto crucial no desempenho geral do SSM. Embora o Mamba introduza um método baseado em HiPPO para inicialização de memória, ainda é difícil gerenciar a memória na unidade SSM, o que inclui a transferência de informações ocultas antes das camadas e a obtenção de compactação de memória sem perdas.
Para este fim, vários estudos pioneiros propuseram diversas soluções diferentes, incluindo inicialização, compressão e concatenação de memória.
Adapte o Mamba a diversos dados
A arquitetura Mamba é uma extensão do modelo de espaço de estado seletivo. Possui as características básicas do modelo cíclico e, portanto, é muito adequada como modelo básico geral para processamento de dados de sequência, como texto, séries temporais e fala.
Além disso, algumas pesquisas pioneiras recentes ampliaram os cenários de aplicação da arquitetura Mamba, para que ela possa não apenas processar dados de sequência, mas também ser usada em campos como imagens e mapas, conforme mostrado na Figura 7.
O objetivo destes estudos é aproveitar ao máximo a excelente capacidade do Mamba em obter dependências de longo alcance e aproveitar a sua eficiência nos processos de aprendizagem e raciocínio. A Tabela 2 resume brevemente os resultados dessas pesquisas.
dados de sequência
Os dados de sequência referem-se aos dados coletados e organizados em uma ordem específica, onde a ordem dos pontos de dados é significativa. Este relatório de revisão resume de forma abrangente a aplicação do Mamba em uma variedade de dados de sequência, incluindo dados de linguagem natural, vídeo, séries temporais, fala e movimento humano. Veja o artigo original para obter detalhes.
dados não sequenciais
Ao contrário dos dados sequenciais, os dados não sequenciais não seguem uma ordem específica. Seus pontos de dados podem ser organizados em qualquer ordem sem afetar significativamente o significado dos dados. Esta falta de ordem inerente pode ser difícil para modelos recorrentes (RNN, SSM, etc.) que são especificamente concebidos para capturar dependências temporais nos dados.
Surpreendentemente, algumas pesquisas recentes permitiram com sucesso que o Mamba (um SSM representativo) processasse eficientemente dados não sequenciais, incluindo imagens, mapas e dados de nuvem de pontos.
dados multimodais
A fim de melhorar as capacidades de percepção e compreensão da cena da IA, dados de múltiplas modalidades podem ser integrados, como linguagem (dados sequenciais) e imagens (dados não sequenciais). Essa integração pode fornecer informações muito valiosas e complementares.
Nos últimos anos, os modelos multimodais de grandes linguagens (MLLM) têm sido o foco de pesquisa mais popular; esse tipo de modelo herda as capacidades poderosas dos modelos de grandes linguagens (LLM), incluindo poderosa expressão de linguagem e capacidades de raciocínio lógico. Embora o Transformer tenha se tornado o método dominante no campo, o Mamba também está emergindo como um forte concorrente. Seu desempenho no alinhamento de dados de fontes mistas e na obtenção de escala de complexidade linear com o comprimento da sequência torna o Mamba promissor no aprendizado multimodal.
aplicativo
Algumas aplicações notáveis de modelos baseados em Mamba são apresentadas abaixo. A equipe dividiu essas aplicações nas seguintes categorias: processamento de linguagem natural, visão computacional, análise de fala, descoberta de medicamentos, sistemas de recomendação e robótica e sistemas autônomos.
Não vamos apresentar muito aqui, veja o artigo original para detalhes.
Desafios e oportunidades
Embora o Mamba tenha alcançado um desempenho notável em alguns campos, no geral, a investigação do Mamba ainda está na sua infância e ainda existem alguns desafios a serem superados pela frente. É claro que estes desafios também são oportunidades.