noticias

Un artículo para entender a Mamba, el competidor más fuerte de Transformer

2024-08-19

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



Informe del corazón de la máquina

Editor: Panda

Mamba es buena, pero su desarrollo aún es temprano.

Existen muchas arquitecturas de aprendizaje profundo, pero la más exitosa en los últimos años es Transformer, que ha establecido su dominio en múltiples campos de aplicaciones.

Un factor clave de este éxito es el mecanismo de atención, que permite que los modelos basados ​​en Transformer se centren en partes relevantes de la secuencia de entrada para lograr una mejor comprensión contextual. Sin embargo, la desventaja del mecanismo de atención es que la sobrecarga computacional es alta, la cual aumentará cuadráticamente con el tamaño de entrada, dificultando el procesamiento de textos muy largos.

Afortunadamente, hace algún tiempo nació una nueva arquitectura con gran potencial: el modelo de secuencia de espacio de estados estructurado (SSM). Esta arquitectura puede capturar de manera eficiente dependencias complejas en datos de secuencia, lo que la convierte en un poderoso oponente de Transformer.

El diseño de este tipo de modelo está inspirado en el modelo clásico de espacio de estados; podemos considerarlo como un modelo de fusión de redes neuronales recurrentes y redes neuronales convolucionales. Se pueden calcular de manera eficiente mediante operaciones de bucle o convolución, lo que permite que la sobrecarga computacional escale linealmente o casi linealmente con la longitud de la secuencia, lo que reduce significativamente los costos computacionales.

Más específicamente, Mamba, una de las variantes más exitosas de SSM, tiene capacidades de modelado comparables a las de Transformer, al tiempo que mantiene la escalabilidad lineal con la longitud de la secuencia.

Mamba primero introduce un mecanismo de selección simple pero efectivo que reparametriza los SSM en función de las entradas, lo que permite que el modelo retenga los datos necesarios y relevantes indefinidamente mientras filtra la información irrelevante. Luego, Mamba también incluye un algoritmo compatible con el hardware que utiliza escaneos en lugar de convoluciones para calcular el modelo cíclicamente, lo que puede aumentar la velocidad de cálculo 3 veces en la GPU A100.

Como se muestra en la Figura 1, con su poderosa capacidad para modelar datos complejos de secuencia larga y escalabilidad casi lineal, Mamba ha surgido como un modelo básico y se espera que revolucione múltiples campos de investigación y desarrollo, como la visión por computadora, el procesamiento del lenguaje natural y la medicina. Áreas de aplicación.



Por lo tanto, la literatura sobre la investigación y aplicación de Mamba está creciendo rápidamente y es vertiginosa, y un informe de revisión completo será de gran beneficio. Recientemente, un equipo de investigación de la Universidad Politécnica de Hong Kong publicó sus contribuciones en arXiv.



  • Título del artículo: Una encuesta sobre Mamba
  • Dirección del artículo: https://arxiv.org/pdf/2408.01129

Este informe de revisión resume Mamba desde múltiples perspectivas, lo que no solo puede ayudar a los principiantes a aprender el mecanismo de funcionamiento básico de Mamba, sino también a los practicantes experimentados a comprender los últimos avances.

Mamba es una dirección de investigación popular y, por lo tanto, muchos equipos están intentando escribir informes de revisión, además del presentado en este artículo, hay otras revisiones que se centran en modelos de espacio de estados o Mamba visual. Para obtener más información, consulte los artículos correspondientes. :

  • Mamba-360: Estudio de modelos de espacio de estados como alternativa de transformación para el modelado de secuencias largas: métodos, aplicaciones y desafíos. arXiv:2404.16112
  • Modelo de espacio de estados para una red de nueva generación alternativa a los transformadores: un estudio. arXiv:2404.09516
  • Vision Mamba: un estudio exhaustivo y una taxonomía. arXiv:2405.04404
  • Una encuesta sobre la visión de Mamba: modelos, aplicaciones y desafíos. arXiv:2404.18861
  • Una encuesta sobre la mamba visual. arXiv:2404.15956

Conocimientos preliminares

Mamba combina el marco cíclico de la red neuronal recurrente (RNN), el mecanismo de atención y computación paralela del transformador y las características lineales del modelo de espacio de estados (SSM). Por lo tanto, para comprender completamente Mamba, primero debes comprender estas tres arquitecturas.

red neuronal recurrente

Las redes neuronales recurrentes (RNN) son buenas para procesar datos de secuencia debido a su capacidad para retener la memoria interna.

Específicamente, en cada paso de tiempo discreto k, un RNN estándar procesa un vector junto con el estado oculto del paso de tiempo anterior y luego genera otro vector y actualiza el estado oculto. Este estado oculto se puede utilizar como memoria del RNN, que puede retener la información de entrada que se ha visto en el pasado. Esta memoria dinámica permite a RNN manejar secuencias de diferentes longitudes.

Es decir, RNN es un modelo recurrente no lineal que captura efectivamente patrones temporales mediante el uso de conocimiento histórico almacenado en estados ocultos.

Transformador

El mecanismo de autoatención de Transformer ayuda a capturar las dependencias globales entre las entradas. Esto se hace asignando pesos a cada puesto en función de su importancia en relación con otras posiciones. Más específicamente, la entrada original primero se transforma linealmente para convertir la secuencia x de vectores de entrada en tres tipos de vectores: consulta Q, clave K y valor V.

Luego se calcula la puntuación de atención normalizada S y se calcula el peso de la atención.

Además de poder realizar una única función de atención, también podemos realizar atención con múltiples cabezas. Esto permite que el modelo capture diferentes tipos de relaciones y comprenda las secuencias de entrada desde múltiples perspectivas. La atención de múltiples cabezales utiliza múltiples conjuntos de módulos de autoatención para procesar secuencias de entrada en paralelo. Cada uno de estos cabezales opera de forma independiente y realiza los mismos cálculos que los mecanismos de autoatención estándar.

Posteriormente, los pesos de atención de cada cabeza se agregan y combinan para obtener la suma ponderada de los vectores de valor. Este paso de agregación permite que el modelo utilice información de múltiples cabezas y capture muchos patrones y relaciones diferentes en la secuencia de entrada.

espacio de estados

El modelo de espacio de estados (SSM) es un marco matemático tradicional que se puede utilizar para describir el comportamiento dinámico de un sistema a lo largo del tiempo. En los últimos años, la SSM se ha utilizado ampliamente en muchos campos diferentes, como la cibernética, la robótica y la economía.

En esencia, SSM refleja el comportamiento del sistema a través de un conjunto de variables ocultas llamadas "estado", lo que le permite capturar de manera efectiva las dependencias de los datos de tiempo. A diferencia de RNN, SSM es un modelo lineal con propiedades asociativas. Específicamente, el modelo clásico de espacio de estados construye dos ecuaciones clave (ecuación de estado y ecuación de observación) para modelar la relación entre la entrada x y la salida y en el momento actual t a través de un estado oculto N-dimensional h (t).

  • discretización

Para satisfacer las necesidades del aprendizaje automático, SSM debe someterse a un proceso de discretización que convierta parámetros continuos en parámetros discretos. En términos generales, el objetivo de los métodos de discretización es dividir el tiempo continuo en K intervalos discretos con un área integral lo más igual posible. Para lograr este objetivo, una de las soluciones más representativas adoptadas por SSM es Zero-Order Hold (ZOH), que supone que el valor de la función en el intervalo Δ = [_{−1}, _ ] permanece constante. El SSM discreto tiene una estructura similar a una red neuronal recurrente, por lo que el SSM discreto puede realizar el proceso de inferencia de manera más eficiente que los modelos basados ​​en Transformer.

  • Cálculo de convolución

El SSM discreto es un sistema lineal con propiedades asociativas y, por lo tanto, puede integrarse perfectamente con cálculos convolucionales.

La relación entre RNN, Transformer y SSM

La Figura 2 muestra los algoritmos de cálculo de RNN, Transformer y SSM.



Por un lado, los RNN convencionales operan basándose en un marco recurrente no lineal, donde cada cálculo depende solo del estado oculto anterior y de la entrada actual.

Aunque esta forma permite que RNN genere resultados rápidamente durante la inferencia autorregresiva, también dificulta que RNN utilice completamente la potencia de computación paralela de la GPU, lo que resulta en un entrenamiento del modelo más lento.

La arquitectura Transformer, por otro lado, realiza multiplicaciones de matrices en múltiples pares de claves de consulta en paralelo, y las multiplicaciones de matrices se pueden asignar de manera eficiente a recursos de hardware, lo que permite un entrenamiento más rápido de modelos basados ​​en la atención. Sin embargo, si desea que un modelo basado en Transformer genere respuestas o predicciones, el proceso de inferencia puede llevar mucho tiempo.

A diferencia de RNN y Transformer, que solo admiten un tipo de cálculo, el SSM discreto es muy flexible gracias a su naturaleza lineal y puede admitir tanto el cálculo de bucle como el cálculo de convolución; Esta característica permite a SSM no solo lograr una inferencia eficiente sino también un entrenamiento paralelo. Sin embargo, cabe señalar que el SSM más convencional es invariante en el tiempo, es decir, sus A, B, C y Δ son independientes de la entrada x del modelo. Esto limitará sus capacidades de modelado contextual, lo que provocará que SSM tenga un rendimiento deficiente en algunas tareas específicas, como la copia selectiva.

Tipo de serpiente venenosa

Para resolver las deficiencias anteriores del SSM tradicional y lograr un modelado consciente del contexto, Albert Gu y Tri Dao propusieron Mamba, que puede usarse como la red troncal de un modelo básico de secuencia universal. Consulte el informe de Machine Heart "Cinco veces el rendimiento". El rendimiento rodea integralmente a Transformer: la nueva arquitectura Mamba detona el círculo de la IA".

Después de eso, los dos propusieron además Mamba-2, en el que la dualidad espacio-estado estructurado (SSD/dualidad espacio-estado estructurado) construyó un marco teórico sólido que conecta el SSM estructurado con varias formas de atención. Esto nos permite migrar. Los algoritmos y tecnologías de optimización del sistema desarrollados originalmente para Transformer to SSM. También puede consultar el informe de Heart of the Machine "Fighting Transformer Again". Mamba 2, dirigido por el autor original, ya está aquí y la eficiencia del entrenamiento de la nueva arquitectura ha mejorado enormemente".

Mamba-1: modelo de espacio de estados selectivo que utiliza algoritmos compatibles con el hardware

Mamba-1 introduce tres tecnologías innovadoras importantes basadas en el modelo de espacio de estados estructurado, a saber, inicialización de memoria, mecanismo de selección y computación con reconocimiento de hardware basada en el operador de proyección polinómica de alto orden (HiPPO). Como se muestra en la Figura 3. El objetivo de estas técnicas es mejorar las capacidades de modelado de series temporales lineales de largo alcance de SSM.



Específicamente, la estrategia de inicialización construye una matriz de estado oculto coherente para promover eficazmente la memoria de largo alcance.

Los mecanismos de selección permiten entonces que SSM adquiera representaciones de contenido perceptible.

Finalmente, para mejorar la eficiencia del entrenamiento, Mamba también incluye dos algoritmos informáticos con reconocimiento de hardware: escaneo asociativo paralelo y recomputación de memoria.

Mamba-2: dualidad del espacio de estados

Transformer ha inspirado el desarrollo de muchas tecnologías diferentes, como el ajuste fino eficiente de los parámetros, la mitigación del olvido catastrófico y la cuantificación de modelos. Para que los modelos de espacio de estados también se beneficien de estas tecnologías desarrolladas originalmente para Transformer, Mamba-2 introduce un nuevo marco: Dualidad de espacio de estados estructurado (SSD). Este marco conecta teóricamente la SSM y diferentes formas de atención.

Esencialmente, SSD muestra que tanto el mecanismo de atención utilizado por Transformer como el sistema lineal invariante en el tiempo utilizado en SSM pueden verse como transformaciones matriciales semiseparables.

Además, Albert Gu y Tri Dao también demostraron que el SSM selectivo es equivalente a un mecanismo de atención lineal estructurado implementado utilizando una matriz de máscara semiseparable.

Mamba-2 diseña un método informático basado en SSD que utiliza el hardware de manera más eficiente, utilizando un algoritmo de multiplicación de matrices de descomposición en bloques.

Específicamente, al tratar el modelo de espacio de estados como una matriz semiseparable a través de esta transformación matricial, Mamba-2 puede descomponer este cálculo en bloques matriciales, donde los bloques diagonales representan cálculos intrabloque. Mientras que los bloques fuera de la diagonal representan el cálculo entre bloques mediante la descomposición del estado oculto de SSM. Este método permite que la velocidad de entrenamiento de Mamba-2 sea de 2 a 8 veces más rápida que el escaneo de correlación paralelo de Mamba-1, mientras que el rendimiento es comparable al de Transformer.

bloque mamba

Echemos un vistazo a los diseños de bloques de Mamba-1 y Mamba-2. La Figura 4 compara las dos arquitecturas.



El diseño de Mamba-1 está centrado en SSM, donde la tarea de la capa SSM selectiva es realizar el mapeo de la secuencia de entrada X a Y. En este diseño, después de crear inicialmente una proyección lineal de X, se utiliza una proyección lineal de (A, B, C). Luego, el token de entrada y la matriz de estado se escanean a través de la unidad SSM selectiva utilizando correlación paralela para obtener la salida Y. Posteriormente, Mamba-1 adopta una conexión de salto para fomentar la reutilización de funciones y aliviar el problema de degradación del rendimiento que a menudo ocurre durante el entrenamiento del modelo. Finalmente, el modelo Mamba se construye apilando este módulo de manera alterna con normalización estándar y conexiones residuales.

En cuanto a Mamba-2, se introduce la capa SSD para crear un mapeo de [X, A, B, C] a Y. Esto se logra mediante el uso de una única proyección al inicio del bloque para procesar [X, A, B, C] simultáneamente, de manera similar a cómo las arquitecturas de atención estándar generan proyecciones Q, K, V en paralelo.

Es decir, el bloque Mamba-2 se simplifica basándose en el bloque Mamba-1 eliminando la proyección lineal de la secuencia. Esto permite que la arquitectura SSD realice cálculos más rápido que el escaneo selectivo paralelo de Mamba-1. Además, para mejorar la estabilidad del entrenamiento, Mamba-2 también agrega una capa de normalización después de saltar la conexión.

El modelo Mamba está evolucionando

El modelo de espacio estatal y Mamba se han desarrollado rápidamente recientemente y se han convertido en una opción de red troncal de modelo básico con gran potencial. Aunque Mamba se desempeña bien en tareas de procesamiento de lenguaje natural, todavía tiene algunos problemas, como pérdida de memoria, dificultad para generalizar a diferentes tareas y desempeño deficiente en patrones complejos en comparación con los modelos de lenguaje basados ​​en Transformer. Para resolver estos problemas, la comunidad de investigación ha propuesto muchas mejoras a la arquitectura Mamba. Las investigaciones existentes se centran principalmente en el diseño de bloques de modificación, patrones de escaneo y gestión de memoria. La Tabla 1 resume los estudios relevantes por categoría.



diseño de bloques

El diseño y la estructura del bloque Mamba tienen un gran impacto en el rendimiento general del modelo Mamba y, por lo tanto, esto se ha convertido en un importante foco de investigación.



Como se muestra en la Figura 5, la investigación existente se puede dividir en tres categorías según diferentes métodos de construcción de nuevos módulos Mamba:

  • Método de integración: integre los bloques Mamba con otros modelos para lograr un equilibrio entre efecto y eficiencia;
  • Método de reemplazo: use bloques Mamba para reemplazar las capas principales en otros marcos modelo;
  • Método de modificación: modifica los componentes dentro del bloque Mamba clásico.

Modo de escaneo

El escaneo de correlación paralela es un componente clave dentro del modelo Mamba. Su objetivo es resolver los problemas computacionales causados ​​por el mecanismo de selección, mejorar la velocidad del proceso de entrenamiento y reducir los requisitos de memoria. Esto se logra aprovechando la naturaleza lineal de los SSM que varían en el tiempo para diseñar la fusión de núcleos y el recálculo a nivel de hardware. Sin embargo, el paradigma de modelado de secuencias unidireccionales de Mamba no conduce a un aprendizaje integral de diversos datos, como imágenes y videos.



Para paliar este problema, algunos investigadores han explorado nuevos métodos de escaneo eficientes para mejorar el rendimiento del modelo Mamba y facilitar su proceso de entrenamiento. Como se muestra en la Figura 6, en términos de desarrollo de modos de escaneo, los resultados de las investigaciones existentes se pueden dividir en dos categorías:

  • Método de escaneo aplanado: vea la secuencia de tokens desde una perspectiva aplanada y procese la entrada del modelo en función de esto;
  • Método de escaneo estereoscópico: escaneo de entrada del modelo a través de dimensiones, canales o escalas, que se pueden dividir en tres categorías: escaneo jerárquico, escaneo espaciotemporal y escaneo híbrido.

gestión de la memoria

De manera similar a RNN, dentro del modelo de espacio de estados, la memoria de estados ocultos almacena efectivamente la información de pasos anteriores y, por lo tanto, tiene un impacto crucial en el rendimiento general de SSM. Aunque Mamba introduce un método basado en HiPPO para la inicialización de la memoria, todavía es difícil administrar la memoria en la unidad SSM, lo que incluye transferir información oculta antes de las capas y lograr una compresión de memoria sin pérdidas.

Con este fin, varios estudios pioneros han propuesto varias soluciones diferentes, incluida la inicialización, compresión y concatenación de la memoria.

Adapte Mamba a datos diversos

La arquitectura Mamba es una extensión del modelo de espacio de estados selectivo. Tiene las características básicas del modelo cíclico y, por lo tanto, es muy adecuada como modelo básico general para procesar datos de secuencia como texto, series de tiempo y voz.

No solo eso, algunas investigaciones pioneras recientes han ampliado los escenarios de aplicación de la arquitectura Mamba, de modo que no solo puede procesar datos de secuencia, sino que también puede usarse en campos como imágenes y mapas, como se muestra en la Figura 7.



El objetivo de estos estudios es aprovechar al máximo la excelente capacidad de Mamba para obtener dependencias de largo alcance y aprovechar su eficiencia en los procesos de aprendizaje y razonamiento. La Tabla 2 resume brevemente los resultados de esta investigación.



datos de secuencia

Los datos de secuencia se refieren a datos recopilados y organizados en un orden específico, donde el orden de los puntos de datos es significativo. Este informe de revisión resume exhaustivamente la aplicación de Mamba en una variedad de datos de secuencia, incluidos lenguaje natural, video, series temporales, voz y datos de movimiento humano. Consulte el artículo original para obtener más detalles.

datos no secuenciales

A diferencia de los datos secuenciales, los datos no secuenciales no siguen un orden específico. Sus puntos de datos se pueden organizar en cualquier orden sin afectar significativamente el significado de los datos. Esta falta de orden inherente puede resultar difícil para los modelos recurrentes (RNN, SSM, etc.) que están diseñados específicamente para capturar dependencias temporales en los datos.

Sorprendentemente, algunas investigaciones recientes han permitido que Mamba (un SSM representativo) procese de manera eficiente datos no secuenciales, incluidas imágenes, mapas y datos de nubes de puntos.

datos multimodales

Para mejorar las capacidades de percepción y comprensión de la escena de la IA, se pueden integrar datos de múltiples modalidades, como el lenguaje (datos secuenciales) y las imágenes (datos no secuenciales). Esta integración puede proporcionar información muy valiosa y complementaria.

En los últimos años, los modelos multimodales de lenguajes grandes (MLLM) han sido el foco de investigación más popular; este tipo de modelo hereda las poderosas capacidades de los modelos de lenguajes grandes (LLM), incluidas poderosas capacidades de expresión del lenguaje y razonamiento lógico. Aunque Transformer se ha convertido en el método dominante en el campo, Mamba también se está convirtiendo en un fuerte contendiente. Su desempeño para alinear datos de fuentes mixtas y lograr un escalamiento de complejidad lineal con la longitud de la secuencia hace que Mamba sea prometedor en el aprendizaje multimodal.

solicitud

A continuación se presentan algunas aplicaciones notables de los modelos basados ​​en Mamba. El equipo dividió estas aplicaciones en las siguientes categorías: procesamiento del lenguaje natural, visión por computadora, análisis del habla, descubrimiento de fármacos, sistemas de recomendación y robótica y sistemas autónomos.

No lo presentaremos demasiado aquí; consulte el artículo original para obtener más detalles.

Desafíos y oportunidades

Aunque Mamba ha logrado un desempeño sobresaliente en algunos campos, en general, la investigación de Mamba aún está en su infancia y aún quedan algunos desafíos por superar. Por supuesto, estos desafíos también son oportunidades.

  • Cómo desarrollar y mejorar modelos básicos basados ​​en Mamba;
  • Cómo realizar plenamente la informática basada en hardware para hacer un uso completo de hardware como GPU y TPU para mejorar la eficiencia del modelo;
  • Cómo mejorar la credibilidad del modelo Mamba, que requiere más investigación sobre seguridad y solidez, equidad, explicabilidad y privacidad;
  • Cómo utilizar nuevas tecnologías en el campo de los transformadores para Mamba, como el ajuste fino eficiente de los parámetros, la mitigación del olvido catastrófico y la generación de recuperación aumentada (RAG).