Maison >Périphériques technologiques >IA >Un article pour comprendre Mamba, le plus gros concurrent de Transformer

Un article pour comprendre Mamba, le plus gros concurrent de Transformer

王林
王林original
2024-08-19 16:33:34318parcourir

Mamba c'est bien, mais son développement est encore précoce.


Il existe de nombreuses architectures de deep learning, mais la plus réussie de ces dernières années est Transformer, qui a établi sa position dominante dans de multiples domaines d'application.

L'un des principaux facteurs d'un tel succès est le mécanisme d'attention, qui permet aux modèles basés sur Transformer de se concentrer sur les parties pertinentes pour la séquence d'entrée afin d'obtenir une meilleure compréhension du contexte. Cependant, l’inconvénient du mécanisme d’attention est que la charge de calcul est élevée, qui augmente quadratiquement avec la taille d’entrée, ce qui rend difficile le traitement de textes très longs.

Heureusement, une nouvelle architecture à fort potentiel est née il y a quelques temps : le modèle de séquence spatiale d'états structurés (SSM). Cette architecture peut capturer efficacement des dépendances complexes dans les données de séquence, ce qui en fait un puissant adversaire de Transformer.

La conception de ce type de modèle s'inspire du modèle classique d'espace d'états - nous pouvons le considérer comme un modèle de fusion de réseaux de neurones récurrents et de réseaux de neurones convolutifs. Ils peuvent être calculés efficacement à l’aide d’opérations de boucle ou de convolution, permettant à la charge de calcul d’évoluer de manière linéaire ou presque linéaire avec la longueur de la séquence, réduisant ainsi considérablement les coûts de calcul.

Plus précisément, les capacités de modélisation de Mamba, l'une des variantes les plus réussies de SSM, sont déjà comparables à celles de Transformer, tout en conservant une évolutivité linéaire avec la longueur de la séquence.

Mamba introduit d'abord un mécanisme de sélection simple mais efficace qui reparamétre SSM en fonction de l'entrée, permettant au modèle de conserver indéfiniment les données nécessaires et pertinentes tout en filtrant les informations non pertinentes. Mamba inclut ensuite un algorithme sensible au matériel qui calcule le modèle de manière itérative à l'aide d'analyses au lieu de convolutions, ce qui entraîne une accélération 3x sur le GPU A100.

Comme le montre la figure 1, avec sa puissante capacité à modéliser des données de séquences longues complexes et son évolutivité quasi linéaire, Mamba est devenu un modèle de base et devrait révolutionner la vision par ordinateur, le traitement du langage naturel, les soins médicaux et bien d'autres. d'autres domaines de recherche et d'application.

Un article pour comprendre Mamba, le plus gros concurrent de Transformer

Par conséquent, la littérature sur la recherche et l'application de Mamba se développe rapidement et est vertigineuse. Un rapport d'examen complet serait d'un grand bénéfice. Récemment, une équipe de recherche de l'Université polytechnique de Hong Kong a publié sa contribution sur arXiv.

Un article pour comprendre Mamba, le plus gros concurrent de Transformer

  • Titre de l'article : A Survey of Mamba
  • Adresse de l'article : https://arxiv.org/pdf/2408.01129

Ce rapport d'examen examine Mamba sous plusieurs angles. Ce résumé peut aide non seulement les débutants à apprendre le mécanisme de fonctionnement de base de Mamba, mais aide également les praticiens expérimentés à comprendre les derniers progrès.

Mamba est une direction de recherche populaire, et par conséquent de nombreuses équipes tentent de rédiger des rapports de révision en plus de celui présenté dans cet article, il existe d'autres revues axées sur les modèles spatiaux d'état ou Mamba visuel. reportez-vous à l'article correspondant :
  • Mamba-360 : Enquête sur les modèles d'espace d'état comme alternative de transformateur pour la modélisation de séquences longues : méthodes, applications et défis arXiv : 2404.16112

  • Modèle d'espace d'état pour une alternative de réseau de nouvelle génération à. transformateurs : une enquête. arXiv : 2404.09516

  • Vision Mamba : une enquête complète et une taxonomie. arXiv : 2404.15956

    .
Connaissances préliminaires

Mamba se concentre sur le cadre cyclique du réseau neuronal récurrent (RNN), le mécanisme de calcul et d'attention parallèle du transformateur et les caractéristiques linéaires du modèle spatial d'état (SSM). Par conséquent, afin de bien comprendre Mamba, il est nécessaire de comprendre d’abord ces trois architectures.

Réseau neuronal récurrent

Le réseau neuronal récurrent (RNN) a la capacité de conserver la mémoire interne, il est donc très efficace pour traiter les données de séquence.

Plus précisément, à chaque pas de temps discret k, le RNN standard traite un vecteur avec l'état caché du pas de temps précédent, puis génère un autre vecteur et met à jour l'état caché. Cet état caché peut être utilisé comme mémoire du RNN, qui peut conserver des informations sur les entrées vues dans le passé. Cette mémoire dynamique permet aux RNN de gérer des séquences de longueurs variables.

En d'autres termes, RNN est un modèle récurrent non linéaire qui peut capturer efficacement des modèles temporels en utilisant les connaissances historiques stockées dans des états cachés. Le mécanisme d'auto-attention de Transformer aide à capturer les dépendances globales entre les entrées. Cela se fait en attribuant des pondérations à chaque poste en fonction de leur importance par rapport aux autres postes. Plus précisément, une transformation linéaire est d'abord effectuée sur l'entrée d'origine pour convertir la séquence x de vecteurs d'entrée en trois types de vecteurs : requête Q, clé K et valeur V.

Calculez ensuite le score d'attention normalisé S et calculez le poids d'attention.

En plus d'exécuter une fonction d'attention unique, nous pouvons également exécuter une attention multi-têtes. Cela permet au modèle de capturer différents types de relations et de comprendre les séquences d'entrée sous plusieurs perspectives. L'attention multi-têtes utilise plusieurs ensembles de modules d'auto-attention pour traiter les séquences d'entrée en parallèle. Chacune de ces têtes fonctionne indépendamment et effectue les mêmes calculs que les mécanismes standards d’auto-attention.

Après cela, les poids d'attention de chaque tête sont agrégés et combinés pour obtenir la somme pondérée des vecteurs de valeur. Cette étape d'agrégation permet au modèle d'utiliser les informations provenant de plusieurs têtes et de capturer de nombreux modèles et relations différents dans la séquence d'entrée.

Espace d'État

Le modèle d'espace d'état (SSM) est un cadre mathématique traditionnel qui peut être utilisé pour décrire le comportement dynamique d'un système au fil du temps. Ces dernières années, le SSM a été largement utilisé dans des domaines aussi divers que la cybernétique, la robotique et l’économie.

À la base, SSM reflète le comportement du système à travers un ensemble de variables cachées appelées « état », lui permettant de capturer efficacement les dépendances des données temporelles. Contrairement à RNN, SSM est un modèle linéaire doté de propriétés associatives. Plus précisément, le modèle d'espace d'état classique construit deux équations clés (équation d'état et équation d'observation) pour modéliser la relation entre l'entrée x et la sortie y à l'instant actuel t via un état caché h (t) à N dimensions.

Discrétisation

Afin de répondre aux besoins de l'apprentissage automatique, SSM doit passer par un processus de discrétisation - conversion de paramètres continus en paramètres discrets. En général, le but des méthodes de discrétisation est de diviser le temps continu en K intervalles discrets avec une surface intégrale aussi égale que possible. Pour atteindre cet objectif, l'une des solutions les plus représentatives adoptées par SSM est le Zero-Order Hold (ZOH), qui suppose que la valeur de la fonction sur l'intervalle Δ = [?_{?−1}, ?_? Le SSM discret a une structure similaire à celle d'un réseau neuronal récurrent, il peut donc effectuer le processus d'inférence plus efficacement que les modèles basés sur Transformer.
  • Calcul de convolution

Discrete SSM est un système linéaire avec des propriétés associatives, il peut donc être intégré de manière transparente aux calculs de convolution.
  • La relation entre RNN, Transformer et SSM

La figure 2 montre l'algorithme de calcul de RNN, Transformer et SSM.
D'une part, le RNN conventionnel fonctionne sur la base d'un cadre récurrent non linéaire, où chaque calcul dépend uniquement de l'état caché précédent et de l'entrée actuelle.

Bien que cette forme permette à RNN de générer rapidement une sortie lors de l'inférence autorégressive, elle rend également difficile pour RNN d'utiliser pleinement la puissance de calcul parallèle du GPU, ce qui ralentit la formation du modèle.

D'autre part, l'architecture Transformer effectue une multiplication matricielle en parallèle sur plusieurs paires « requête-clé », et la multiplication matricielle peut être efficacement allouée aux ressources matérielles, permettant une formation plus rapide des modèles basés sur l'attention. Toutefois, si vous souhaitez qu'un modèle basé sur Transformer génère des réponses ou des prédictions, le processus d'inférence peut prendre beaucoup de temps.

Contrairement à RNN et Transformer, qui ne prennent en charge qu'un seul type de calcul, le SSM discret est très flexible grâce à sa nature linéaire, il peut prendre en charge à la fois le calcul de boucle et le calcul de convolution. Cette fonctionnalité permet à SSM non seulement de réaliser une inférence efficace, mais également de réaliser une formation parallèle. Cependant, il convient de noter que le SSM le plus conventionnel est invariant dans le temps, c'est-à-dire que ses A, B, C et Δ sont indépendants de l'entrée x du modèle. Cela limitera ses capacités de modélisation contextuelle, ce qui entraînera de mauvaises performances de SSM sur certaines tâches spécifiques telles que la copie sélective.

Mamba

Afin de résoudre les lacunes ci-dessus du SSM traditionnel et de réaliser une modélisation contextuelle, Albert Gu et Tri Dao ont proposé Mamba qui peut être utilisé comme réseau fédérateur d'une base de séquence générale. Veuillez vous référer au rapport de ce site "Un débit cinq fois supérieur, des performances complètes entourent Transformer : la nouvelle architecture Mamba fait exploser le cercle de l'IA".

Après cela, les deux ont proposé Mamba-2, dans lequel la dualité espace-état structuré (SSD/dualité espace-état structuré) a construit une structure qui relie le SSM structuré à de multiples formes d'attention. Le cadre théorique nous permet de transférer les algorithmes et les technologies d'optimisation de système initialement développés pour Transformer vers SSM. Vous pouvez également vous référer au rapport sur ce site "Fighting Transformer Again!". Mamba 2, dirigé par l'auteur original, est là, et l'efficacité de la formation de la nouvelle architecture a été grandement améliorée》.

Mamba-1 : Modèle d'espace d'état sélectif utilisant des algorithmes sensibles au matériel

Mamba-1 introduit trois technologies innovantes basées sur le modèle d'espace d'état structuré, notamment basé sur le calcul de projection polynomiale d'ordre élevé Mémoire initialisation, mécanisme de sélection et calcul sensible au matériel de HiPPO. Comme le montre la figure 3. L’objectif de ces techniques est d’améliorer les capacités de modélisation de séries temporelles linéaires à longue portée du SSM.

Un article pour comprendre Mamba, le plus gros concurrent de Transformer

Plus précisément, la stratégie d'initialisation peut construire une matrice d'états cachés cohérente pour promouvoir efficacement la mémoire à longue portée.

Ensuite, le mécanisme de sélection donne à SSM la possibilité d'obtenir des représentations de contenus perceptibles.

Enfin, afin d'améliorer l'efficacité de la formation, Mamba comprend également deux algorithmes informatiques sensibles au matériel : l'analyse associative parallèle et le recalcul de la mémoire.

Mamba-2 : State Space Dual

Transformer a inspiré le développement de nombreuses technologies différentes, telles que le réglage fin efficace des paramètres, l'atténuation des oublis catastrophiques et la quantification des modèles. Afin que les modèles d'espace d'état bénéficient également de ces techniques développées à l'origine pour Transformer, Mamba-2 introduit un nouveau cadre : la dualité spatiale d'états structurés (SSD). Ce cadre relie théoriquement le SSM et différentes formes d'attention.

Essentiellement, SSD montre que le mécanisme d'attention utilisé par Transformer et le système linéaire invariant dans le temps utilisé dans SSM peuvent être considérés comme des transformations matricielles semi-séparables.

De plus, Albert Gu et Tri Dao ont également prouvé que le SSM sélectif équivaut à un mécanisme d'attention linéaire structuré mis en œuvre à l'aide d'une matrice de masques semi-séparables.

Mamba-2 conçoit une méthode de calcul basée sur SSD qui peut utiliser le matériel plus efficacement, qui utilise un algorithme de multiplication matricielle de décomposition de blocs.

Plus précisément, en traitant le modèle d'espace d'état comme une matrice semi-séparable grâce à cette transformation matricielle, Mamba-2 est capable de décomposer ce calcul en blocs matriciels, où les blocs diagonaux représentent les calculs intra-blocs. Alors que les blocs hors diagonale représentent le calcul inter-blocs via la décomposition d'état caché de SSM. Cette méthode permet à Mamba-2 de s'entraîner 2 à 8 fois plus rapidement que l'analyse de corrélation parallèle de Mamba-1, tout en atteignant des performances comparables à celles de Transformer.

Blocs Mamba

Jetons un coup d'œil aux conceptions de blocs de Mamba-1 et Mamba-2. La figure 4 compare les deux architectures.

Un article pour comprendre Mamba, le plus gros concurrent de Transformer

Mamba-1 est conçu autour de SSM, où la couche SSM sélective est chargée d'effectuer le mappage de la séquence d'entrée X à Y. Dans cette conception, après avoir initialement créé une projection linéaire de X, une projection linéaire de (A, B, C) est utilisée. Ensuite, le jeton d'entrée et la matrice d'état sont analysés via l'unité SSM sélective en utilisant une corrélation parallèle pour obtenir la sortie Y. Ensuite, Mamba-1 adopte une connexion sautée pour encourager la réutilisation des fonctionnalités et atténuer la dégradation des performances qui se produit souvent lors de la formation du modèle. Enfin, le modèle Mamba est construit en empilant ce module de manière alternée avec une normalisation standard et des connexions résiduelles.

Comme pour Mamba-2, la couche SSD est introduite pour créer un mappage de [X, A, B, C] vers Y. Ceci est réalisé en utilisant une seule projection au début du bloc pour traiter simultanément [X, A, B, C], de la même manière que les architectures d'attention standard génèrent des projections Q, K, V en parallèle.

C'est-à-dire que le bloc Mamba-2 est simplifié sur la base du bloc Mamba-1 en supprimant la projection linéaire de la séquence. Cela permet à la structure SSD d'être calculée plus rapidement que l'analyse sélective parallèle de Mamba-1. De plus, afin d'améliorer la stabilité de l'entraînement, Mamba-2 ajoute également une couche de normalisation après la connexion sautée.

Le modèle Mamba se développe et progresse

Le modèle spatial d'État et Mamba se sont développés rapidement récemment et sont devenus un choix de réseau fédérateur de modèle de base avec un grand potentiel. Bien que Mamba fonctionne bien sur les tâches de traitement du langage naturel, il présente encore quelques problèmes, tels que la perte de mémoire, la difficulté de généralisation à différentes tâches, et ses performances dans des modèles complexes ne sont pas aussi bonnes que les modèles de langage basés sur Transformer. Afin de résoudre ces problèmes, la communauté des chercheurs a proposé de nombreuses améliorations à l'architecture Mamba. Les recherches existantes se concentrent principalement sur la conception des blocs de modification, les modèles d'analyse et la gestion de la mémoire. Le tableau 1 résume les études pertinentes par catégorie.

Un article pour comprendre Mamba, le plus gros concurrent de Transformer

Conception du bloc

La conception et la structure du bloc Mamba ont un grand impact sur les performances globales du modèle Mamba, et c'est donc devenu un point chaud de recherche majeur.

Un article pour comprendre Mamba, le plus gros concurrent de Transformer

Comme le montre la figure 5, sur la base de différentes méthodes de construction de nouveaux modules Mamba, les recherches existantes peuvent être divisées en trois catégories :

  • Méthode d'intégration : intégrer des blocs Mamba avec d'autres modèles pour obtenir un équilibre efficace et efficace ;
  • Méthode de remplacement : remplacez les couches principales dans d'autres cadres de modèles par des blocs Mamba ;
  • Méthode de modification : modifiez les composants dans le bloc Mamba classique.

Mode d'analyse

L'analyse de corrélation parallèle est un élément clé du modèle Mamba. Son objectif est de résoudre les problèmes de calcul causés par le mécanisme de sélection, d'améliorer la vitesse du processus de formation, et réduire les besoins en mémoire. Ceci est réalisé en exploitant la nature linéaire des SSM variables dans le temps pour concevoir la fusion de base et le recalcul au niveau matériel. Cependant, le paradigme de modélisation de séquences unidirectionnelles de Mamba n'est pas propice à un apprentissage complet de diverses données, telles que des images et des vidéos.

Un article pour comprendre Mamba, le plus gros concurrent de Transformer

Pour atténuer ce problème, certains chercheurs ont exploré de nouvelles méthodes d'analyse efficaces pour améliorer les performances du modèle Mamba et faciliter son processus de formation. Comme le montre la figure 6, en termes de développement de modes de numérisation, les résultats des recherches existantes peuvent être divisés en deux catégories :

  • Méthode de numérisation à plat : examinez la séquence de jetons dans une perspective aplatie et traitez le modèle en fonction de cela. Entrée ;
  • Méthode de numérisation stéréoscopique : numérisation de l'entrée du modèle sur des dimensions, des canaux ou des échelles, qui peuvent être divisées en trois catégories : numérisation en couches, numérisation spatio-temporelle et numérisation hybride.

Gestion de la mémoire

Semblable au RNN, dans le modèle d'espace d'état, la mémoire des états cachés stocke efficacement les informations des étapes précédentes, elle est donc cruciale pour la performance globale de SSM Influence. . Bien que Mamba introduit des méthodes basées sur HiPPO pour l'initialisation de la mémoire, la gestion de la mémoire dans les unités SSM reste difficile, notamment le transfert d'informations cachées avant les couches et la compression de la mémoire sans perte.

À cette fin, certaines recherches pionnières ont proposé un certain nombre de solutions différentes, notamment l'initialisation de la mémoire, la compression et la concaténation.

Laissez Mamba s'adapter à diverses données

L'architecture Mamba est une extension du modèle d'espace d'état sélectif. Elle possède les caractéristiques de base du modèle cyclique, elle est donc très adaptée au traitement du texte et du temps. series, Un modèle de base général pour les données de séquence telles que la parole.

De plus, certaines recherches pionnières récentes ont élargi les scénarios d'application de l'architecture Mamba, de sorte qu'elle puisse non seulement traiter les données de séquence, mais également être utilisée dans des domaines tels que les images et les cartes, comme le montre la figure 7. .

Un article pour comprendre Mamba, le plus gros concurrent de Transformer

Le but de ces études est d'utiliser pleinement l'excellente capacité de Mamba à obtenir des dépendances à longue portée, et également de lui permettre de profiter de son efficacité dans le processus d'apprentissage et de raisonnement. Le tableau 2 résume brièvement ces résultats.

Un article pour comprendre Mamba, le plus gros concurrent de Transformer

Données de séquence

Les données de séquence font référence aux données collectées et organisées dans un ordre spécifique, où l'ordre des points de données est significatif. Ce rapport d'examen résume de manière exhaustive l'application de Mamba sur une variété de données de séquence, notamment le langage naturel, la vidéo, les séries chronologiques, la parole et les mouvements humains. Voir l'article original pour plus de détails.

Données non séquentielles

Contrairement aux données séquentielles, les données non séquentielles ne suivent pas un ordre spécifique. Ses points de données peuvent être organisés dans n'importe quel ordre sans affecter de manière significative la signification des données. Ce manque d'ordre inhérent peut être difficile pour les modèles récurrents (RNN, SSM, etc.) spécifiquement conçus pour capturer les dépendances temporelles des données.

Étonnamment, certaines recherches récentes ont permis à Mamba (un SSM représentatif) de traiter efficacement des données non séquentielles, notamment des images, des cartes et des données de nuages ​​de points.

Données multimodales

Afin d'améliorer les capacités de perception et de compréhension de la scène de l'IA, plusieurs données modales peuvent être intégrées, telles que le langage (données séquentielles) et les images (données non séquentielles). Une telle intégration peut fournir des informations très précieuses et complémentaires.

Ces derniers temps, les grands modèles de langage multimodaux (MLLM) ont été l'objet de recherche le plus populaire ; ce type de modèle hérite des puissantes capacités des grands modèles de langage (LLM), notamment une expression linguistique puissante et une capacité de raisonnement logique. Bien que Transformer soit devenu la méthode dominante dans le domaine, Mamba apparaît également comme un concurrent sérieux. Ses performances en matière d'alignement de données sources mixtes et de mise à l'échelle linéaire de la complexité avec la longueur de la séquence rendent Mamba prometteur dans l'apprentissage multimodal.

Applications

Voici quelques applications remarquables des modèles basés sur Mamba. L’équipe a divisé ces applications dans les catégories suivantes : traitement du langage naturel, vision par ordinateur, analyse de la parole, découverte de médicaments, systèmes de recommandation, robotique et systèmes autonomes.

Nous ne le présenterons pas trop ici, veuillez consulter l'article original pour plus de détails.

Défis et opportunités

Mamba Bien qu'elle ait réalisé des performances exceptionnelles dans certains domaines, dans l'ensemble, la recherche sur Mamba en est encore à ses balbutiements et il reste encore quelques défis à relever. Bien entendu, ces défis sont aussi des opportunités.

  • Comment développer et améliorer des modèles de base basés sur Mamba ;
  • Comment implémenter pleinement l'informatique sensible au matériel pour maximiser l'utilisation du matériel tel que le GPU et le TPU pour améliorer l'efficacité du modèle ; Comment améliorer Mamba La crédibilité du modèle, qui nécessite des recherches plus approfondies sur la sécurité et la robustesse, l'équité, l'explicabilité et la confidentialité
  • Comment utiliser les nouvelles technologies dans le domaine des transformateurs pour Mamba, telles que le réglage fin des paramètres ; et l'atténuation de l'oubli catastrophique, la génération augmentée de récupération (RAG).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn