Comprender cómo funcionan SSM y Mamba, además de cómo comenzar a implementarlos en Keras y TensorFlow.
Presentado el 1 de diciembre de 2023 en arXiv, el artículo titulado “Mamba: modelado de secuencias de tiempo lineal con espacios de estados selectivos” propuso un enfoque interesante para el modelado de secuencias. Los autores – Alberto Gu, Tri Dao – introdujo ‘Mamba’ que utilizaba ‘selectivo’ modelos de espacio de estados (SSM) para lograr resultados que compitan con el rendimiento del, ahora omnipresente, modelo Transformer.
Los transformadores han ganado popularidad recientemente con el surgimiento de modelos de lenguaje grande (LLM) como LLaMa-2, GPT-4, Claude, Gemini, etc., pero adolece del problema de la ventana de contexto. El problema con los transformadores radica en su núcleo, el mecanismo de atención de múltiples cabezas.
El principal problema con la atención de múltiples cabezas surge del hecho de que para una longitud de secuencia de entrada n, la complejidad del tiempo y la complejidad del espacio aumentan en O (n²). Esto limita la duración de la ventana de contexto de un LLM. Porque, para aumentarlo 10 veces, necesitamos escalar los requisitos de hardware (sobre todo GPU VRAM) 100 veces.
Mamba, por otro lado, escala por O(n)!, es decir, linealmente.
Esta escala lineal es lo que ha llevado a los investigadores a especular que Mamba podría ser el futuro del modelado de secuencias.
El núcleo del modelo Mamba proviene del concepto de Modelos de Espacio de Estados. Los modelos de espacio de estados, como Transformers y RNN, procesan secuencias de información, como texto, señales de audio, cuadros de video, secuencias de ADN, etc.
Los modelos de espacio de estados surgen de la idea de describir un sistema físico como un conjunto de entradas, salidas y variables. Estas variables son: A B C D. El proceso de SSM implica el cálculo de una vector de estado interno h