Over more than a decade there has been an extensive research effort on how to effectively utilize recurrent models and attention. While recurrent models aim to compress the data into a fixed-size memory (called hidden state), attention allows attending to the entire context window, capturing the direct dependencies of all tokens. This more accurate modeling of dependencies, however, comes with a quadratic cost, limiting the model to a fixed-length context. We present a new neural long-term memory module that learns to memorize historical context and helps attention to attend to the current context while utilizing long past information. We show that this neural memory has the advantage of fast parallelizable training while maintaining a fast inference. From a memory perspective, we argue that attention due to its limited context but accurate dependency modeling performs as a short-term memory, while neural memory due to its ability to memorize the data, acts as a long-term, more persistent, memory. Based on these two modules, we introduce a new family of architectures, called Titans, and present three variants to address how one can effectively incorporate memory into this architecture. Our experimental results on language modeling, common-sense reasoning, genomics, and time series tasks show that Titans are more effective than Transformers and recent modern linear recurrent models. They further can effectively scale to larger than 2M context window size with higher accuracy in needle-in-haystack tasks compared to baselines.
Cet article propose un nouveau module de mémoire à long terme neuronal capable d'apprendre à mémoriser le contexte historique et d'aider le mécanisme d'attention à se concentrer sur le contexte actuel tout en exploitant les informations du passé lointain. Les auteurs argumentent d'un point de vue mémoriel que les mécanismes d'attention, en raison d'un contexte limité mais d'une modélisation précise des dépendances, fonctionnent comme une mémoire à court terme, tandis que la mémoire neuronale, en raison de sa capacité à mémoriser les données, agit comme une mémoire à long terme plus durable. Sur la base de ces deux modules, les auteurs introduisent une nouvelle famille d'architectures appelée Titans et proposent trois variantes pour intégrer efficacement la mémoire dans l'architecture. Les résultats expérimentaux montrent que Titans est plus efficace que les Transformers et les modèles linéaires récurrents modernes sur les tâches de modélisation du langage, de raisonnement de sens commun, de génomique et de séries temporelles, et peut s'étendre efficacement à des fenêtres de contexte dépassant 2M tokens.
Les architectures de modélisation de séquences existantes font face à un compromis entre efficacité et performance :
Transformers : Bien qu'ils modélisent précisément les dépendances, leur complexité de calcul est O(n²), ce qui limite la longueur du contexte
Transformers linéaires/RNNs : Bien qu'efficaces, ils compressent les informations dans un état de taille fixe, ce qui entraîne une dégradation des performances sur les longues séquences
Absence de systèmes de mémoire : Les architectures existantes manquent d'un système de mémoire multicouche similaire au cerveau humain (mémoire à court terme, mémoire à long terme, métamémoire, etc.)
Module de mémoire à long terme neuronal : Propose un réseau de neurones profond comme métamodèle qui apprend comment mémoriser/stocker les données dans ses paramètres au moment du test
Mécanisme de gestion de la mémoire : Conçoit un mécanisme de mise à jour de la mémoire basé sur la « surprise » et un mécanisme d'oubli adaptatif
Famille d'architectures Titans : Propose trois façons d'intégrer la mémoire dans les architectures d'apprentissage profond : Memory as Context (MAC), Memory as Gate (MAG), Memory as Layer (MAL)
Algorithme d'entraînement parallélisé : Fournit un algorithme d'entraînement parallélisé rapide rendant l'entraînement des modules de mémoire profonde efficace
Validation expérimentale étendue : Valide l'efficacité de Titans sur plusieurs tâches, notamment la modélisation du langage, le raisonnement de sens commun, la génomique et la prédiction de séries temporelles
Cet article étudie les tâches de modélisation de séquences, où l'entrée est une séquence x∈RN×din, et l'objectif est d'apprendre un modèle capable de traiter efficacement les longues séquences, qui doit :
Permettre un apprentissage et une mémorisation continus au moment du test
Équilibrer l'utilisation de la mémoire à court terme et à long terme
Avoir une complexité linéaire tout en maintenant une grande expressivité
Inspiré par la mémoire à long terme humaine, les événements qui violent les attentes (surprenants) sont plus faciles à retenir. Les auteurs utilisent le gradient du réseau de neurones par rapport à l'entrée pour mesurer le degré de « surprise ».
Réalise un entraînement parallélisé efficace en reformulant le processus d'entraînement pour utiliser des opérations de multiplication matricielle et de sommation :
Divise la séquence en blocs de taille b
Utilise un balayage associatif parallèle pour calculer les termes de dynamique
Réalise un entraînement rapide via la descente de gradient en mini-lots tensorisée
Le module de mémoire neuronale surpasse les méthodes de base sur tous les ensembles de données, y compris les méthodes basées sur Mamba, Transformer et les modèles linéaires.
Importance des systèmes de mémoire : Un système de mémoire multicouche (mémoire à court terme + mémoire à long terme + mémoire persistante) est crucial pour la modélisation de séquences
Efficacité de l'apprentissage au moment du test : L'apprentissage et la mémorisation continus au moment du test peuvent améliorer significativement la capacité de traitement des longues séquences
Impact de la conception d'architecture : Les architectures MAC et MAG surpassent la conception traditionnelle de couche MAL
Vérification de l'extensibilité : Titans peut s'étendre efficacement à des fenêtres de contexte de 2M+ tokens
Forte innovativité conceptuelle : Repense la modélisation de séquences du point de vue du système de mémoire humain, proposant une architecture de mémoire multicouche novatrice
Contributions techniques complètes : Non seulement propose le module de mémoire neuronale, mais conçoit également trois façons de l'intégrer dans l'architecture et un algorithme de parallélisation efficace
Validation expérimentale suffisante : Conduit des expériences complètes sur plusieurs domaines (NLP, séries temporelles, génomique) avec des résultats convaincants
Fondation théorique solide : Relie la mise à jour de mémoire à la descente de gradient, à la dynamique et à la décroissance des poids, fournissant une explication théorique
Analyse de complexité de calcul insuffisante : Bien que prétendant à une complexité linéaire, l'analyse des surcharges de calcul réelles du module de mémoire profonde manque de détails
Sensibilité aux hyperparamètres : Plusieurs paramètres dépendant des données (α_t, θ_t, η_t) peuvent être complexes à configurer
Analogie avec la mémoire humaine limitée : Bien qu'inspirée par la mémoire humaine, la définition de la « surprise » est relativement simple
Validation insuffisante sur grands modèles : Le plus grand modèle n'a que 760M paramètres, manquant de validation sur des modèles de milliards de paramètres
Traitement de documents longs : Applicable aux tâches NLP nécessitant le traitement de documents longs
Analyse de séries temporelles : Particulièrement adaptée aux tâches de prédiction nécessitant des informations historiques à long terme
Scénarios d'apprentissage en ligne : Applicable aux applications nécessitant une adaptation continue au moment du test
Tâches intensives en mémoire : Comme les systèmes de questions-réponses, les systèmes de dialogue et autres tâches nécessitant de mémoriser de grandes quantités d'informations
L'article cite 138 références connexes, couvrant plusieurs domaines pertinents tels que Transformer, réseaux de neurones récurrents, mécanismes d'attention, réseaux de mémoire et entraînement au moment du test, fournissant une base théorique solide pour cette recherche.