Linformer est une architecture de transformateur conçue pour résoudre le coût computationnel et mémoire quadratique des mécanismes d'attention standard. Dans un transformateur conventionnel, la couche d'attention calcule un score de similarité entre chaque paire de jetons d'une séquence, ce qui entraîne une complexité de O(n²) pour une séquence de longueur n. Cette mise à l'échelle devient prohibitive pour les séquences longues, comme celles rencontrées dans le traitement de documents, les données génomiques ou l'analyse d'images à haute résolution. Linformer introduit un mécanisme d'attention à complexité linéaire en projetant les matrices de clés et de valeurs dans un espace de dimension inférieure, réduisant le coût à O(n) tout en maintenant des performances compétitives sur les tâches en aval.
L'architecture a été introduite dans un article de 2020 par Sinong Wang, Belinda Z. Li, Madian Khabsa, Han Fang et Hao Ma, chercheurs chez Facebook AI Research (désormais partie de Meta AI). L'article, intitulé « Linformer: Self-Attention with Linear Complexity », a démontré que la matrice d'attention est souvent de rang faible, ce qui signifie qu'elle peut être approximée par une matrice beaucoup plus petite sans perte significative d'informations. Cette observation constitue le fondement théorique de la méthode.
Mécanisme et projection de rang faible
L'innovation centrale de Linformer réside dans son traitement des matrices de clés et de valeurs. Dans l'attention multi-têtes standard, les scores d'attention sont calculés comme le softmax du produit des requêtes et des clés, ce qui nécessite une matrice n×n. Linformer projette plutôt les clés et les valeurs dans une dimension fixe k, où k est beaucoup plus petit que la longueur de séquence n, en utilisant des projections linéaires apprises. Cette projection réduit la matrice d'attention de n×n à n×k, ce qui entraîne une complexité linéaire par rapport à la longueur de séquence.
Le choix de k est un hyperparamètre qui équilibre efficacité et précision. Les auteurs ont montré que pour de nombreuses tâches pratiques, une valeur de k autour de 128 ou 256 est suffisante, même pour des séquences de milliers de jetons. Les matrices de projection sont partagées entre les têtes d'attention dans certaines variantes, réduisant encore le nombre de paramètres et l'utilisation mémoire.
Comparaison avec d'autres transformateurs efficaces
Linformer fait partie d'une famille plus large d'architectures de transformateurs efficaces développées autour de 2020-2021. Il est souvent comparé au reformer (qui utilise un hachage de sensibilité locale) et au longformer (qui utilise une attention par fenêtre glissante). Contrairement à Reformer, qui approxime l'attention via le hachage, Linformer utilise une projection de rang faible fixe, plus simple et plus adaptée au matériel. Contrairement à Longformer, qui restreint l'attention à des fenêtres locales, Linformer conserve une information d'attention globale, bien que sous une forme compressée.
Les évaluations empiriques sur des tâches de référence telles que l'analyse de sentiment IMDb et la classification de textes ont montré que Linformer atteint une précision comparable au transformateur original tout en utilisant significativement moins de mémoire et de temps pour les séquences longues. Par exemple, sur une séquence de longueur 4096, Linformer peut réduire l'utilisation mémoire jusqu'à 90 % par rapport au transformateur standard.
Applications et impact
La motivation principale de Linformer était de permettre aux transformateurs de gérer des contextes plus longs, ce qui est crucial pour des tâches comme le résumé de documents, la réponse à des questions sur de longs passages et le traitement de dossiers médicaux ou juridiques. Sa mise à l'échelle linéaire le rend également attrayant pour le déploiement sur des appareils à ressources limitées, tels que les téléphones mobiles ou le matériel de périphérie, où la mémoire et le calcul sont restreints.
L'idée de l'approximation de rang faible dans l'attention a influencé des travaux ultérieurs, notamment le performer (qui utilise des cartes de caractéristiques aléatoires) et l'attention flash (qui se concentre sur l'optimisation des entrées-sorties). Bien que Linformer lui-même ne soit pas largement utilisé dans les modèles de production à grande échelle en 2025, ses principes ont été intégrés dans des architectures hybrides et ont informé la recherche sur les mécanismes d'attention efficaces.
Limites et critiques
Une limite de Linformer est que l'hypothèse de rang faible peut ne pas tenir pour tous les types de données. Pour les tâches où les motifs d'attention sont très épars ou ont une structure complexe, la projection fixe peut perdre des informations importantes. De plus, les matrices de projection sont apprises pendant l'entraînement, ce qui signifie que le modèle doit être entraîné de zéro ou affiné pour s'adapter à de nouvelles tâches ; il ne peut pas être directement appliqué à un transformateur pré-entraîné sans modification.
Une autre critique est que la complexité linéaire est obtenue au prix d'une dimension de goulot d'étranglement fixe k, qui peut devoir être augmentée pour des séquences très longues, réduisant potentiellement les gains d'efficacité. Certaines études ont également noté que les performances de Linformer se dégradent sur des tâches nécessitant un raisonnement fin au niveau des jetons, comme certains benchmarks d'inférence en langage naturel.
Héritage et orientations futures
L'article sur Linformer a été l'un des premiers travaux à populariser l'idée de l'attention efficace, contribuant à une vague de recherche sur la mise à l'échelle des transformateurs. Son accent sur la structure de rang faible a été étendu de diverses manières, notamment par la sélection adaptative du rang et les projections hiérarchiques. En 2025, les grands modèles de langage dominants, tels que ceux de OpenAI et Google DeepMind, utilisent encore une attention quadratique standard pour leurs architectures principales, mais des variantes efficaces comme Linformer restent pertinentes pour des applications spécialisées et pour la recherche sur le traitement de contextes longs.
L'architecture est également un exemple pédagogique utile pour comprendre les compromis entre l'expressivité du modèle et l'efficacité computationnelle dans le apprentissage profond. Sa simplicité et sa motivation théorique claire en font un sujet courant dans les cours avancés sur la conception de réseaux de neurones et les systèmes d'intelligence artificielle.