notizia

Un articolo per capire Mamba, il più forte concorrente di Transformer

2024-08-19

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



Rapporto sul cuore della macchina

Editore: Panda

Mamba è buono, ma il suo sviluppo è ancora presto.

Esistono molte architetture di deep learning, ma quella di maggior successo negli ultimi anni è Transformer, che ha consolidato la sua posizione dominante in molteplici campi applicativi.

Un fattore chiave di questo successo è il meccanismo di attenzione, che consente ai modelli basati su Transformer di concentrarsi su parti rilevanti della sequenza di input, ottenendo una migliore comprensione del contesto. Tuttavia, lo svantaggio del meccanismo di attenzione è che il sovraccarico computazionale è elevato, che aumenta quadraticamente con la dimensione dell’input, rendendo difficile l’elaborazione di testi molto lunghi.

Fortunatamente, qualche tempo fa è nata una nuova architettura dalle grandi potenzialità: il modello strutturato di sequenza dello spazio degli stati (SSM). Questa architettura può catturare in modo efficiente dipendenze complesse nei dati di sequenza, rendendola un potente avversario di Transformer.

Il design di questo tipo di modello si ispira al classico modello dello spazio degli stati: possiamo pensarlo come un modello di fusione di reti neurali ricorrenti e reti neurali convoluzionali. Possono essere calcolati in modo efficiente utilizzando operazioni di loop o di convoluzione, consentendo al sovraccarico computazionale di scalare linearmente o quasi linearmente con la lunghezza della sequenza, riducendo così in modo significativo i costi computazionali.

Più nello specifico, Mamba, una delle varianti di maggior successo di SSM, ha capacità di modellazione paragonabili a quelle di Transformer, pur mantenendo la scalabilità lineare con la lunghezza della sequenza.

Mamba introduce innanzitutto un meccanismo di selezione semplice ma efficace che riparametrizza gli SSM in base agli input, consentendo al modello di conservare i dati necessari e rilevanti a tempo indeterminato filtrando le informazioni irrilevanti. Quindi, Mamba include anche un algoritmo compatibile con l'hardware che utilizza scansioni anziché convoluzioni per calcolare il modello in modo iterativo, il che può aumentare la velocità di calcolo di 3 volte sulla GPU A100.

Come mostrato nella Figura 1, con la sua potente capacità di modellare dati complessi in sequenze lunghe e una scalabilità quasi lineare, Mamba è emerso come modello di base e si prevede che rivoluzionerà molteplici campi di ricerca e sviluppo come la visione artificiale, l'elaborazione del linguaggio naturale e la medicina. aree di applicazione.



Pertanto, la letteratura sulla ricerca e sull'applicazione di Mamba sta crescendo rapidamente e vertiginosamente, e un rapporto di revisione completo sarà di grande beneficio. Recentemente, un gruppo di ricerca dell’Università Politecnica di Hong Kong ha pubblicato i propri contributi su arXiv.



  • Titolo dell'articolo: Un'indagine sui mamba
  • Indirizzo del documento: https://arxiv.org/pdf/2408.01129

Questo rapporto di revisione riassume Mamba da molteplici prospettive, che non solo possono aiutare i principianti ad apprendere il meccanismo di funzionamento di base di Mamba, ma anche aiutare i praticanti esperti a comprendere gli ultimi progressi.

Mamba è una direzione di ricerca popolare, e quindi molti team stanno cercando di scrivere rapporti di revisione Oltre a quello introdotto in questo articolo, ci sono altre revisioni incentrate sui modelli dello spazio degli stati o sul Mamba visivo. Per i dettagli, fare riferimento ai documenti corrispondenti :

  • Mamba-360: Indagine sui modelli dello spazio di stato come alternativa al trasformatore per la modellazione di sequenze lunghe: metodi, applicazioni e sfide. arXiv:2404.16112
  • Modello di spazio di stato per la rete di nuova generazione alternativa ai trasformatori: un'indagine. arXiv:2404.09516
  • Vision Mamba: un'indagine completa e tassonomia. arXiv:2405.04404
  • Un sondaggio su vision mamba: modelli, applicazioni e sfide. arXiv:2404.18861
  • Un'indagine sul mamba visivo. arXiv:2404.15956

Conoscenza preliminare

Mamba combina la struttura ciclica della Rete Neurale Ricorrente (RNN), il meccanismo di calcolo parallelo e di attenzione del Trasformatore e le caratteristiche lineari dello State Space Model (SSM). Pertanto, per comprendere appieno Mamba, è necessario prima comprendere queste tre architetture.

rete neurale ricorrente

Le reti neurali ricorrenti (RNN) sono efficaci nell'elaborazione dei dati di sequenza grazie alla loro capacità di conservare la memoria interna.

Nello specifico, ad ogni passo temporale discreto k, un RNN standard elabora un vettore insieme allo stato nascosto del passo temporale precedente, quindi emette un altro vettore e aggiorna lo stato nascosto. Questo stato nascosto può essere utilizzato come memoria dell'RNN, che può conservare le informazioni di input viste in passato. Questa memoria dinamica consente a RNN di gestire sequenze di diversa lunghezza.

Cioè, RNN è un modello ricorrente non lineare che cattura efficacemente modelli temporali utilizzando la conoscenza storica archiviata in stati nascosti.

Trasformatore

Il meccanismo di auto-attenzione di Transformer aiuta a catturare le dipendenze globali tra gli input. Questo viene fatto assegnando pesi a ciascuna posizione in base alla loro importanza rispetto ad altre posizioni. Più specificamente, l'input originale viene prima trasformato linearmente per convertire la sequenza x di vettori di input in tre tipi di vettori: query Q, chiave K e valore V.

Quindi viene calcolato il punteggio di attenzione normalizzato S e il peso dell'attenzione.

Oltre a poter svolgere una singola funzione di attenzione, possiamo anche svolgere un’attenzione multi-testa. Ciò consente al modello di acquisire diversi tipi di relazioni e comprendere le sequenze di input da più prospettive. L'attenzione multitesta utilizza più set di moduli di autoattenzione per elaborare sequenze di input in parallelo. Ognuna di queste teste opera in modo indipendente ed esegue gli stessi calcoli dei meccanismi standard di autoattenzione.

Successivamente, i pesi dell'attenzione di ciascuna testa vengono aggregati e combinati per ottenere la somma ponderata dei vettori di valore. Questa fase di aggregazione consente al modello di utilizzare informazioni provenienti da più teste e di acquisire molti modelli e relazioni diversi nella sequenza di input.

spazio statale

Il modello dello spazio degli stati (SSM) è un quadro matematico tradizionale che può essere utilizzato per descrivere il comportamento dinamico di un sistema nel tempo. Negli ultimi anni, l’SSM è stato ampiamente utilizzato in molti campi diversi come la cibernetica, la robotica e l’economia.

Fondamentalmente, l’SSM riflette il comportamento del sistema attraverso una serie di variabili nascoste chiamate “stato”, consentendogli di catturare in modo efficace le dipendenze dei dati temporali. A differenza dell’RNN, l’SSM è un modello lineare con proprietà associative. Nello specifico, il classico modello dello spazio degli stati costruisce due equazioni chiave (equazione di stato ed equazione di osservazione) per modellare la relazione tra input x e output y al tempo corrente t attraverso uno stato nascosto N-dimensionale h (t).

  • discretizzazione

Per soddisfare le esigenze dell’apprendimento automatico, l’SSM deve essere sottoposto a un processo di discretizzazione che converte i parametri continui in parametri discreti. In generale, l'obiettivo dei metodi di discretizzazione è dividere il tempo continuo in K intervalli discreti con un'area integrale quanto più uguale possibile. Per raggiungere questo obiettivo, una delle soluzioni più rappresentative adottate da SSM è Zero-Order Hold (ZOH), che presuppone che il valore della funzione sull'intervallo Δ = [_{−1}, _ ] rimanga costante. L'SSM discreto ha una struttura simile a una rete neurale ricorrente, quindi l'SSM discreto può eseguire il processo di inferenza in modo più efficiente rispetto ai modelli basati su Transformer.

  • Calcolo della convoluzione

L'SSM discreto è un sistema lineare con proprietà associative e quindi può essere perfettamente integrato con calcoli convoluzionali.

Il rapporto tra RNN, Transformer e SSM

La Figura 2 mostra gli algoritmi di calcolo di RNN, Transformer e SSM.



Da un lato, le RNN convenzionali operano sulla base di un quadro ricorrente non lineare, in cui ogni calcolo dipende solo dallo stato nascosto precedente e dall’input corrente.

Sebbene questa forma consenta a RNN di generare rapidamente output durante l'inferenza autoregressiva, rende anche difficile per RNN utilizzare appieno la potenza di calcolo parallela della GPU, con conseguente addestramento del modello più lento.

L'architettura Transformer, d'altro canto, esegue moltiplicazioni di matrici su più coppie di chiavi di query in parallelo e le moltiplicazioni di matrici possono essere allocate in modo efficiente alle risorse hardware, consentendo un addestramento più rapido di modelli basati sull'attenzione. Tuttavia, se si desidera che un modello basato su Transformer generi risposte o previsioni, il processo di inferenza può richiedere molto tempo.

A differenza di RNN e Transformer, che supportano solo un tipo di calcolo, l'SSM discreto è molto flessibile grazie alla sua natura lineare, può supportare sia il calcolo del loop che il calcolo della convoluzione; Questa funzionalità consente a SSM non solo di ottenere un'inferenza efficiente ma anche un addestramento parallelo. Tuttavia, va sottolineato che l’SSM più convenzionale è invariante nel tempo, ovvero i suoi A, B, C e Δ sono indipendenti dall’input del modello x. Ciò limiterà le sue capacità di modellazione sensibile al contesto, causando scarse prestazioni di SSM in alcune attività specifiche come la copia selettiva.

Mamba

Per risolvere le suddette carenze dell'SSM tradizionale e ottenere una modellazione sensibile al contesto, Albert Gu e Tri Dao hanno proposto Mamba, che può essere utilizzato come rete portante di un modello base di sequenza universale Vedere il rapporto Machine Heart "Five times throughput,. prestazioni circondano in modo completo Transformer: la nuova architettura Mamba fa esplodere il cerchio dell'intelligenza artificiale".

Successivamente, i due hanno proposto ulteriormente Mamba-2, in cui la Dualità Spazio-Stato Strutturato (SSD/Dualità Spazio-Stato Strutturato) ha costruito un robusto quadro teorico che collega l’SSM strutturato con varie forme di attenzione. Ciò ci consente di migrare gli algoritmi e le tecnologie di ottimizzazione del sistema originariamente sviluppati per Transformer in SSM. Puoi anche fare riferimento al rapporto Heart of the Machine "Fighting Transformer Again!". Mamba 2, guidato dall'autore originale, è qui e l'efficienza dell'addestramento della nuova architettura è stata notevolmente migliorata."

Mamba-1: modello di spazio degli stati selettivo che utilizza algoritmi compatibili con l'hardware

Mamba-1 introduce tre principali tecnologie innovative basate sul modello dello spazio degli stati strutturato, vale a dire l'inizializzazione della memoria, il meccanismo di selezione e il calcolo basato sull'hardware basato sull'operatore di proiezione polinomiale di ordine elevato (HiPPO). Come mostrato nella Figura 3. L’obiettivo di queste tecniche è migliorare le capacità di modellazione di serie temporali lineari a lungo termine di SSM.



Nello specifico, la strategia di inizializzazione costruisce una matrice di stati nascosti coerente per promuovere efficacemente la memoria a lungo raggio.

I meccanismi di selezione consentono quindi al SSM di acquisire rappresentazioni di contenuti percepibili.

Infine, per migliorare l’efficienza dell’addestramento, Mamba include anche due algoritmi di calcolo compatibili con l’hardware: Parallel Associative Scan e Memory Recomputation.

Mamba-2: dualità dello spazio degli stati

Transformer ha ispirato lo sviluppo di molte tecnologie diverse, come la messa a punto efficiente dei parametri, la mitigazione dell'oblio catastrofico e la quantizzazione del modello. Affinché anche i modelli dello spazio degli stati possano beneficiare di queste tecnologie originariamente sviluppate per Transformer, Mamba-2 introduce un nuovo framework: Structured State Space Duality (SSD). Questo quadro collega teoricamente il SSM e diverse forme di attenzione.

Essenzialmente, SSD mostra che sia il meccanismo di attenzione utilizzato da Transformer che il sistema lineare tempo-invariante utilizzato in SSM possono essere visti come trasformazioni di matrici semi-separabili.

Inoltre, Albert Gu e Tri Dao hanno anche dimostrato che l'SSM selettivo è equivalente a un meccanismo di attenzione lineare strutturato implementato utilizzando una matrice di maschera semi-separabile.

Mamba-2 progetta un metodo di calcolo basato su SSD che utilizza l'hardware in modo più efficiente, utilizzando un algoritmo di moltiplicazione della matrice di decomposizione dei blocchi.

Nello specifico, trattando il modello dello spazio degli stati come una matrice semi-separabile attraverso questa trasformazione della matrice, Mamba-2 è in grado di scomporre questo calcolo in blocchi di matrice, dove i blocchi diagonali rappresentano calcoli intra-blocco. Mentre i blocchi fuori diagonale rappresentano il calcolo tra blocchi tramite la decomposizione dello stato nascosto di SSM. Questo metodo consente alla velocità di allenamento di Mamba-2 di essere 2-8 volte più veloce della scansione di correlazione parallela di Mamba-1, mentre le prestazioni sono paragonabili a Transformer.

Blocco Mamba

Diamo un'occhiata ai design dei blocchi di Mamba-1 e Mamba-2. La Figura 4 mette a confronto le due architetture.



Il design di Mamba-1 è incentrato sull'SSM, in cui il compito dello strato SSM selettivo è eseguire la mappatura dalla sequenza di input da X a Y. In questo progetto, dopo aver creato inizialmente una proiezione lineare di X, viene utilizzata una proiezione lineare di (A, B, C). Quindi, il token di input e la matrice di stato vengono scansionati attraverso l'unità SSM selettiva utilizzando la correlazione parallela per ottenere l'output Y. Successivamente, Mamba-1 adotta una connessione skip per incoraggiare il riutilizzo delle funzionalità e alleviare il problema di degrado delle prestazioni che spesso si verifica durante l'addestramento del modello. Infine, il modello Mamba è costruito impilando questo modulo in modo alternato con normalizzazione standard e connessioni residue.

Come per Mamba-2, viene introdotto il layer SSD per creare una mappatura da [X, A, B, C] a Y. Ciò si ottiene utilizzando una singola proiezione all'inizio del blocco per elaborare [X, A, B, C] simultaneamente, in modo simile a come le architetture di attenzione standard generano proiezioni Q, K, V in parallelo.

Cioè, il blocco Mamba-2 è semplificato in base al blocco Mamba-1 rimuovendo la proiezione lineare della sequenza. Ciò consente all'architettura SSD di eseguire calcoli più velocemente della scansione selettiva parallela di Mamba-1. Inoltre, per migliorare la stabilità dell'allenamento, Mamba-2 aggiunge anche uno strato di normalizzazione dopo la connessione saltata.

Il modello Mamba si sta evolvendo

Il modello statale spaziale e Mamba si sono sviluppati rapidamente di recente e sono diventati una scelta di rete dorsale modello di base con un grande potenziale. Sebbene Mamba funzioni bene nelle attività di elaborazione del linguaggio naturale, presenta ancora alcuni problemi, come perdita di memoria, difficoltà nel generalizzare a compiti diversi e scarse prestazioni in modelli complessi rispetto ai modelli linguistici basati su Transformer. Per risolvere questi problemi, la comunità di ricerca ha proposto numerosi miglioramenti all'architettura di Mamba. La ricerca esistente si concentra principalmente sulla progettazione dei blocchi di modifica, sui modelli di scansione e sulla gestione della memoria. La tabella 1 riassume gli studi rilevanti per categoria.



progettazione a blocchi

Il design e la struttura del blocco Mamba hanno un grande impatto sulle prestazioni complessive del modello Mamba, e quindi questo è diventato uno dei principali obiettivi di ricerca.



Come mostrato nella Figura 5, la ricerca esistente può essere divisa in tre categorie basate su diversi metodi di costruzione di nuovi moduli Mamba:

  • Metodo di integrazione: integra i blocchi Mamba con altri modelli per raggiungere un equilibrio tra effetto ed efficienza;
  • Metodo di sostituzione: utilizzare i blocchi Mamba per sostituire gli strati principali in altre strutture del modello;
  • Metodo di modifica: modifica i componenti all'interno del classico blocco Mamba.

Modalità di scansione

La scansione della correlazione parallela è una componente chiave del modello Mamba. Il suo obiettivo è risolvere i problemi computazionali causati dal meccanismo di selezione, migliorare la velocità del processo di addestramento e ridurre i requisiti di memoria. Ciò si ottiene sfruttando la natura lineare degli SSM variabili nel tempo per progettare la fusione dei core e il ricalcolo a livello hardware. Tuttavia, il paradigma di modellazione di sequenze unidirezionali di Mamba non favorisce l'apprendimento completo di dati diversi, come immagini e video.



Per alleviare questo problema, alcuni ricercatori hanno esplorato nuovi metodi di scansione efficienti per migliorare le prestazioni del modello Mamba e facilitarne il processo di formazione. Come mostrato nella Figura 6, in termini di sviluppo delle modalità di scansione, i risultati della ricerca esistente possono essere suddivisi in due categorie:

  • Metodo di scansione appiattito: visualizza la sequenza dei token da una prospettiva appiattita ed elabora l'input del modello in base a questo;
  • Metodo di scansione stereoscopica: scansione dell'input del modello attraverso dimensioni, canali o scale, che possono essere ulteriormente suddivisi in tre categorie: scansione gerarchica, scansione spaziotemporale e scansione ibrida.

gestione della memoria

Similmente alla RNN, all’interno del modello dello spazio degli stati, la memoria degli stati nascosti memorizza efficacemente le informazioni dei passaggi precedenti e quindi ha un impatto cruciale sulle prestazioni complessive dell’SSM. Sebbene Mamba introduca un metodo basato su HiPPO per l'inizializzazione della memoria, è ancora difficile gestire la memoria nell'unità SSM, che include il trasferimento di informazioni nascoste prima dei livelli e il raggiungimento di una compressione della memoria senza perdite.

A tal fine, diversi studi pionieristici hanno proposto una serie di soluzioni diverse, tra cui l'inizializzazione, la compressione e la concatenazione della memoria.

Adatta Mamba a dati diversi

L'architettura Mamba è un'estensione del modello dello spazio degli stati selettivo. Ha le caratteristiche di base del modello ciclico ed è quindi molto adatta come modello di base generale per l'elaborazione di dati di sequenza come testo, serie temporali e parlato.

Non solo, alcune recenti ricerche pionieristiche hanno ampliato gli scenari applicativi dell'architettura Mamba, in modo che possa non solo elaborare dati di sequenza, ma anche essere utilizzata in campi come immagini e mappe, come mostrato nella Figura 7.



L'obiettivo di questi studi è sfruttare appieno l'eccellente capacità di Mamba di ottenere dipendenze a lungo raggio e sfruttare la sua efficienza nei processi di apprendimento e ragionamento. La tabella 2 riassume brevemente i risultati della ricerca.



dati di sequenza

I dati di sequenza si riferiscono ai dati raccolti e organizzati in un ordine specifico, dove l'ordine dei punti dati è significativo. Questo rapporto di revisione riassume in modo esauriente l'applicazione di Mamba su una varietà di dati di sequenza, inclusi linguaggio naturale, video, serie temporali, parlato e dati sul movimento umano. Vedi il documento originale per i dettagli.

dati non sequenziali

A differenza dei dati sequenziali, i dati non sequenziali non seguono un ordine specifico. I suoi punti dati possono essere organizzati in qualsiasi ordine senza influenzare in modo significativo il significato dei dati. Questa mancanza di ordine intrinseco può essere difficile da gestire per i modelli ricorrenti (RNN, SSM, ecc.) progettati specificamente per catturare le dipendenze temporali nei dati.

Sorprendentemente, alcune ricerche recenti hanno consentito con successo a Mamba (un SSM rappresentativo) di elaborare in modo efficiente dati non sequenziali, tra cui immagini, mappe e dati di nuvole di punti.

dati multimodali

Al fine di migliorare la percezione dell'IA e le capacità di comprensione della scena, è possibile integrare dati provenienti da più modalità, come linguaggio (dati sequenziali) e immagini (dati non sequenziali). Tale integrazione può fornire informazioni molto preziose e complementari.

Negli ultimi anni, i modelli multimodali di linguaggio di grandi dimensioni (MLLM) sono stati il ​​focus di ricerca più popolare, questo tipo di modello eredita le potenti capacità dei modelli di linguaggio di grandi dimensioni (LLM), comprese potenti capacità di espressione linguistica e di ragionamento logico; Sebbene Transformer sia diventato il metodo dominante nel campo, Mamba sta emergendo anche come un forte contendente. Le sue prestazioni nell'allineamento di dati di origine mista e nel raggiungimento di un ridimensionamento lineare della complessità con la lunghezza della sequenza rendono Mamba promettente nell'apprendimento multimodale.

applicazione

Di seguito vengono introdotte alcune applicazioni degne di nota dei modelli basati su Mamba. Il team ha suddiviso queste applicazioni nelle seguenti categorie: elaborazione del linguaggio naturale, visione artificiale, analisi del parlato, scoperta di farmaci, sistemi di raccomandazione, robotica e sistemi autonomi.

Non lo presenteremo troppo qui, vedere il documento originale per i dettagli.

Sfide e opportunità

Sebbene Mamba abbia ottenuto risultati eccezionali in alcuni campi, nel complesso la ricerca su Mamba è ancora agli inizi e ci sono ancora alcune sfide da superare. Naturalmente, queste sfide sono anche opportunità.

  • Come sviluppare e migliorare i modelli base basati su Mamba;
  • Come realizzare pienamente l'elaborazione hardware-aware per sfruttare appieno hardware come GPU e TPU per migliorare l'efficienza del modello;
  • Come migliorare la credibilità del modello Mamba, che richiede ulteriori ricerche su sicurezza e robustezza, equità, spiegabilità e privacy;
  • Come utilizzare le nuove tecnologie nel campo Transformer per Mamba, come la messa a punto efficiente dei parametri, la mitigazione dell'oblio catastrofico e la generazione aumentata con recupero (RAG).