2025-11-19T14:37:13.961956

SwitchLoRA: Switched Low-Rank Adaptation Can Learn Full-Rank Information

Zhou, Wang, Xu
In the training of large language models, parameter-efficient techniques such as LoRA optimize memory usage and reduce communication overhead and memory usage during the fine-tuning phase. However, applying such techniques directly during the pre-training phase results in poor performance, primarily because the premature implementation of low-rank training significantly reduces model accuracy. Existing methods like ReLoRA and GaLore have attempted to address this challenge by updating the low-rank subspace. However, they still fall short of achieving the accuracy of full-rank training. Specifically, ReLoRA restricts the frequency of updates to preserve optimizer states consistency, hindering its ability to closely approximate full-rank training behavior. Meanwhile, GaLore relies on Singular Value Decomposition (SVD) to approximate the full-rank space, which introduces accuracy loss during the approximation process. In this paper, we introduce SwitchLoRA, a parameter-efficient training technique that frequently and smoothly replaces the trainable parameters of LoRA adapters with alternative parameters. SwitchLoRA updates the low-rank subspace incrementally, targeting only a few dimensions at a time to minimize the impact on optimizer states. This allows a higher update frequency, thereby enhancing accuracy by enabling the updated parameters to more closely mimic full-rank behavior during the pre-training phase. Our results demonstrate that SwitchLoRA actually surpasses full-rank training, reducing perplexity from 15.23 to 15.01 on the LLaMA 1.3B model, while also cutting communication overhead by 54\% and memory usage by 13\%. Furthermore, after full fine-tuning the SwitchLoRA pre-trained model and the full-rank pre-trained model on the GLUE benchmark, the SwitchLoRA pre-trained model showed an average accuracy gain of about 1\% over the full-rank pre-trained model.
academic

SwitchLoRA : L'Adaptation de Faible Rang Commutée Peut Apprendre les Informations de Rang Complet

Informations Fondamentales

  • ID de l'article : 2406.06564v3
  • Titre : SwitchLoRA: Switched Low-Rank Adaptation Can Learn Full-Rank Information
  • Auteurs : Kaiye Zhou, Shucheng Wang, Jun Xu (China Mobile (Suzhou) Software Technology Co. Ltd.)
  • Classification : cs.LG, cs.AI, cs.CL
  • Date de publication : 2 janvier 2025 (prépublication arXiv)
  • Lien de l'article : https://arxiv.org/abs/2406.06564v3

Résumé

Cet article propose la méthode SwitchLoRA pour relever les défis de l'entraînement efficace en paramètres lors de la phase de préentraînement des grands modèles de langage. Bien que les techniques d'adaptation de faible rang traditionnelles comme LoRA excellent lors du réglage fin, leur application directe au préentraînement entraîne une baisse significative des performances. Les méthodes existantes ReLoRA et GaLore tentent de résoudre ce problème en mettant à jour les sous-espaces de faible rang, mais ne peuvent pas atteindre la précision de l'entraînement de rang complet. SwitchLoRA remplace fréquemment et régulièrement les paramètres entraînables des adaptateurs LoRA, mettant à jour progressivement le sous-espace de faible rang, en ciblant à chaque fois seulement quelques dimensions pour minimiser l'impact sur l'état de l'optimiseur. Les résultats expérimentaux montrent que SwitchLoRA réduit la perplexité sur le modèle LLaMA 1.3B de 15,23 à 15,01, surpassant l'entraînement de rang complet, tout en réduisant les frais généraux de communication de 54 % et l'utilisation de la mémoire de 13 %.

Contexte et Motivation de la Recherche

Problème Central

Avec l'émergence de l'architecture Transformer, la taille des grands modèles de langage a augmenté de façon exponentielle, et l'entraînement distribué des modèles de niveau trillion fait face à des frais généraux de communication internode massifs. Bien que les techniques d'efficacité paramétrique comme LoRA excellent lors de la phase de réglage fin, leur application directe à la phase de préentraînement entraîne une baisse significative des performances.

Limitations des Méthodes Existantes

  1. ReLoRA : Pour maintenir la cohérence de l'état de l'optimiseur, limite la fréquence de mise à jour, ne pouvant pas suffisamment approcher le comportement de l'entraînement de rang complet
  2. GaLore : Dépend de l'approximation SVD de l'espace de rang complet, introduisant une perte de précision lors du processus d'approximation

Motivation de la Recherche

Les réseaux de neurones présentent des caractéristiques de rang complet au début de l'entraînement, le rang interne diminuant progressivement au fur et à mesure de l'entraînement. Par conséquent, une méthode est nécessaire pour entraîner un grand nombre de paramètres lors de la phase de préentraînement, tout en mettant à jour sélectivement certains paramètres pour réduire l'utilisation de la mémoire et les frais généraux de communication.

Contributions Principales

  1. Proposition de la méthode SwitchLoRA : Ajuste fréquemment et régulièrement les paramètres entraînables des matrices LoRA, réduisant l'utilisation de la mémoire et les frais généraux de communication tout en maintenant la précision de l'entraînement de rang complet
  2. Stratégie de gestion de l'état de l'optimiseur : Conçoit des mécanismes de réinitialisation et de gel temporaire de l'état de l'optimiseur lors de la commutation de paramètres, réduisant l'impact de l'incohérence d'état
  3. Règles d'initialisation améliorées : Fournit de nouvelles stratégies d'initialisation pour les paramètres des adaptateurs LoRA et leurs vecteurs candidats, améliorant l'efficacité de l'entraînement
  4. Vérification expérimentale complète : Valide l'efficacité de la méthode sur des modèles LLaMA de diverses échelles et vérifie les capacités d'inférence via l'indice de référence GLUE

Explication Détaillée de la Méthode

Définition de la Tâche

Étant donné la matrice de poids WRm×nW \in \mathbb{R}^{m \times n} d'un modèle préentraîné, LoRA traditionnel la transforme en W+αrBAW + \frac{\alpha}{r}BA, où BRm×rB \in \mathbb{R}^{m \times r}, ARr×nA \in \mathbb{R}^{r \times n}, rmin(m,n)r \ll \min(m,n). SwitchLoRA commute dynamiquement les vecteurs dans B et A pour augmenter le rang effectif.

Architecture du Modèle

Mécanisme de Commutation Principal

  1. Décomposition Vectorielle : Décompose la matrice B en vecteurs colonnes bkRm×1b_k \in \mathbb{R}^{m \times 1}, la matrice A en vecteurs lignes akTR1×na_k^T \in \mathbb{R}^{1 \times n}
  2. Ensemble de Vecteurs Candidats : Maintient les ensembles de vecteurs candidats C(B)C(B) et C(AT)C(A^T), contenant min(m,n)\min(m,n) vecteurs
  3. Remplacement Dynamique : À chaque étape d'entraînement, remplace bkb_k et aka_k par les vecteurs candidats bkC(B)b_k' \in C(B) et akC(AT)a_k' \in C(A^T)

Stratégie d'Ajustement des Poids

Lors du remplacement d'un vecteur, ajuste en conséquence la matrice de poids : WW+bkakTbkakTW \leftarrow W + b_k a_k^T - b_k' a_k'^T

Conception de la Fréquence de Commutation

Utilise une fonction de décroissance exponentielle : frequency=Ceθstepfrequency = Ce^{-\theta \cdot step}, reflétant l'évolution naturelle du modèle du rang complet au rang faible.

Points d'Innovation Technique

1. Minimisation de l'Impact sur l'État de l'Optimiseur

  • Lorsque aka_k est commuté, réinitialise l'état de l'optimiseur de bkb_k
  • Lorsque bkb_k est commuté, réinitialise l'état de l'optimiseur de aka_k
  • Après réinitialisation, gèle temporairement les paramètres correspondants pendant N étapes (N=5)

2. Stratégie d'Initialisation Améliorée

Basée sur les idées d'initialisation Xavier et Kaiming, conçoit un nouvel écart-type : std[B]=std[b]=(rmn)14gain12std[B] = std[b] = \left(\frac{r}{\sqrt{mn}}\right)^{\frac{1}{4}} gain^{\frac{1}{2}}std[A]=std[a]=(mrnn)14gain12std[A] = std[a] = \left(\frac{\sqrt{mr}}{\sqrt{nn}}\right)^{\frac{1}{4}} gain^{\frac{1}{2}}

3. Optimisation de la Mémoire

Décharge les vecteurs candidats de secours vers le CPU, utilisant des transferts non bloquants pour traiter parallèlement le processus de commutation.

Configuration Expérimentale

Ensembles de Données

  • Préentraînement : Ensemble de données C4, utilisant les 46M premiers échantillons d'entraînement et l'ensemble de validation complet
  • Évaluation : Évaluation de la perte de validation tous les 1000 pas sur 10M tokens
  • Réglage fin : Plusieurs tâches de l'indice de référence GLUE

Configuration du Modèle

Les expériences couvrent diverses échelles de modèles LLaMA :

  • 130M (768 dimensions, 12 têtes, 12 couches)
  • 250M (768 dimensions, 16 têtes, 24 couches)
  • 350M (1024 dimensions, 16 têtes, 24 couches)
  • 1.3B (2048 dimensions, 32 têtes, 24 couches)

Indicateurs d'Évaluation

  • Préentraînement : Perplexité
  • Réglage fin : Précision, coefficient de corrélation de Pearson, coefficient de corrélation de Matthews

Méthodes de Comparaison

  • Entraînement de rang complet
  • LoRA standard
  • ReLoRA
  • GaLore

Détails d'Implémentation

  • Optimiseur : Adam (β₁=0,9, β₂=0,999)
  • Calendrier d'apprentissage : Recuit cosinus, préchauffage de 100 étapes
  • Nombre total d'étapes d'entraînement : 40 000 étapes
  • Matériel : 8×GPU NVIDIA A800 80GB PCIe

Résultats Expérimentaux

Résultats Principaux

Comparaison des Performances de Préentraînement

Résultats de perplexité sur le modèle 1.3B :

  • Rang complet : 15,23
  • SwitchLoRA (rang=512) : 15,01 (surpassant l'entraînement de rang complet)
  • SwitchLoRA (rang=256) : 15,89

Comparaison de la Consommation de Ressources

Exemple avec le modèle 1.3B :

  • Utilisation de la mémoire : Réduction de 13 % par rapport à l'entraînement de rang complet (36,1 Go → 31,9 Go)
  • Frais généraux de communication : Réduction de 54 % (paramètres entraînables de 1339M à 610M)
  • Temps d'entraînement : Essentiellement équivalent (21,6s vs 22,5s)

Comparaison avec les Méthodes Existantes

vs ReLoRA

Sur le modèle 250M, lorsque ReLoRA utilise 5000 étapes de préentraînement de rang complet tandis que SwitchLoRA n'en utilise que 200, SwitchLoRA fonctionne toujours mieux. Dans les mêmes conditions de 1000 étapes de préentraînement de rang complet, SwitchLoRA surpasse significativement ReLoRA.

vs GaLore

Sur le modèle 350M :

  • GaLore : perplexité de 20,29
  • SwitchLoRA : perplexité de 19,58

Dans les paramètres de rang plus faible, l'avantage de SwitchLoRA est encore plus prononcé, prouvant l'importance de couvrir toutes les directions de mise à jour.

Études d'Ablation

Impact de la Fréquence de Commutation

Les expériences montrent que la fréquence initiale et le taux de décroissance doivent tous deux être définis à des valeurs modérées, les valeurs trop élevées ou trop basses réduisant les performances.

Impact du Nombre d'Étapes de Gel

Le choix du nombre d'étapes de gel N affecte l'effet d'entraînement, N=5 étant le paramètre optimal.

Vérification de la Stratégie d'Initialisation

La nouvelle méthode d'initialisation améliore significativement la vitesse de convergence par rapport à l'initialisation LoRA traditionnelle.

Vérification des Capacités d'Inférence

Résultats de l'Indice de Référence GLUE

Sur le modèle 350M :

  • Le modèle préentraîné SwitchLoRA dépasse en moyenne de 3,0 points le modèle préentraîné GaLore
  • Dépasse en moyenne de 0,3 points le modèle préentraîné de rang complet

Sur le modèle 1.3B :

  • Le modèle préentraîné SwitchLoRA dépasse en moyenne d'environ 1,0 point le modèle préentraîné de rang complet

Découvertes Expérimentales

  1. Analyse de la Distribution des Rangs : La distribution des valeurs singulières de SwitchLoRA est plus proche de celle de l'entraînement de rang complet, tandis que LoRA standard affiche une distribution pathologique
  2. Effet d'Échelle : À mesure que la taille du modèle augmente, l'avantage de SwitchLoRA par rapport à LoRA standard devient plus prononcé
  3. Capacité de Généralisation : Le modèle préentraîné par SwitchLoRA démontre des capacités d'inférence et de généralisation plus fortes sur les tâches en aval

Travaux Connexes

Méthodes de Décomposition de Faible Rang

Les travaux antérieurs réalisent l'approximation de faible rang des matrices de poids via des méthodes telles que SVD, principalement appliquées aux CNN et aux petits modèles de langage.

Variantes de LoRA

  • Classe de Fusion de Paramètres : Chain of LoRA, ReLoRA augmentent le rang effectif en fusionnant régulièrement les paramètres
  • Classe d'Amélioration d'Initialisation : Améliorent les stratégies d'initialisation des matrices B et A et les paramètres de taux d'apprentissage
  • Classe de Modification Structurelle : Modifient le processus d'entraînement et le mécanisme de mise à jour des paramètres de LoRA

Autres Méthodes de Compression

Incluent la quantification, l'élagage, la compression de gradient et autres techniques, où GaLore réalise un entraînement efficace en mémoire via la projection de gradient.

Conclusion et Discussion

Conclusions Principales

  1. Percée de Performance : SwitchLoRA est le premier à réaliser des performances surpassant l'entraînement de rang complet lors de la phase de préentraînement
  2. Efficacité des Ressources : Réduit significativement l'utilisation de la mémoire et les frais généraux de communication, tout en maintenant un temps d'entraînement comparable
  3. Amélioration de la Généralisation : Le modèle préentraîné démontre des capacités d'inférence plus fortes sur les tâches en aval

Limitations

  1. Sensibilité aux Hyperparamètres : Les hyperparamètres tels que la fréquence de commutation nécessitent un réglage minutieux
  2. Sélection du Rang : Nécessite toujours un rang LoRA relativement grand pour atteindre la précision de l'entraînement de rang complet
  3. Sélection des Vecteurs Candidats : Actuellement utilise une sélection aléatoire ou séquentielle, avec un potentiel d'optimisation

Directions Futures

  1. Fréquence Adaptative : Développer des stratégies d'ajustement de fréquence de commutation plus intelligentes
  2. Optimisation au Niveau des Couches : Concevoir des stratégies de commutation différenciées pour différents types de couches (matrices Q, K, V)
  3. Optimisation des Vecteurs Candidats : Rechercher des stratégies de sélection et de mise à jour des vecteurs candidats plus efficaces

Évaluation Approfondie

Points Forts

  1. Innovation Théorique : Propose une nouvelle approche pour la mise à jour progressive des sous-espaces de faible rang, résolvant efficacement le problème de l'entraînement de faible rang lors de la phase de préentraînement
  2. Implémentation Technique : Considère en détail la gestion de l'état de l'optimiseur, l'optimisation de la mémoire et autres problèmes pratiques, avec une forte applicabilité
  3. Expériences Complètes : Valide l'efficacité de la méthode sous plusieurs angles, incluant les performances de préentraînement, la consommation de ressources et les capacités d'inférence
  4. Analyse Théorique : Fournit des explications théoriques telles que l'indépendance de la mise à jour vectorielle et la rationalité de la réinitialisation de l'état de l'optimiseur

Insuffisances

  1. Augmentation de la Complexité : Augmente la complexité d'implémentation par rapport à LoRA standard, nécessitant une gestion supplémentaire des vecteurs candidats
  2. Réglage des Hyperparamètres : Plusieurs hyperparamètres (fréquence de commutation, taux de décroissance, nombre d'étapes de gel) nécessitent un réglage minutieux
  3. Vérification d'Échelle : Bien que testée sur plusieurs échelles de modèles, la plus grande n'atteint que 7B, l'applicabilité aux modèles plus grands reste à vérifier
  4. Complétude Théorique : Bien que fournissant certaines analyses théoriques, manque d'explication théorique approfondie sur pourquoi la méthode peut surpasser l'entraînement de rang complet

Impact

  1. Valeur Académique : Fournit une nouvelle approche pour l'entraînement efficace en paramètres lors de la phase de préentraînement, pouvant inspirer davantage de recherches connexes
  2. Valeur Pratique : Réduit significativement la consommation de ressources tout en maintenant les performances, avec une importance significative pour l'entraînement pratique des grands modèles
  3. Reproductibilité : L'article fournit des détails d'implémentation détaillés et des paramètres, facilitant la reproduction et l'application

Scénarios d'Application

  1. Préentraînement de Grands Modèles : Particulièrement adapté aux scénarios où les ressources sont limitées mais un préentraînement de haute qualité est nécessaire
  2. Entraînement Distribué : Peut réduire significativement les frais généraux de communication dans l'entraînement multi-nœuds
  3. Entraînement Incrémental : Adapté aux scénarios nécessitant un entraînement continu basé sur le préentraînement

Références

L'article cite de nombreux travaux connexes, incluant principalement :

  • Hu et al. 2022 : Article original de LoRA
  • Lialin et al. 2023 : Méthode ReLoRA
  • Zhao et al. 2024 : Méthode GaLore
  • Vaswani et al. 2017 : Architecture Transformer
  • Rajbhandari et al. 2020 : Optimiseur ZeRO

Évaluation Globale : Ceci est un article de recherche de haute qualité, excellent en termes d'innovation théorique, de vérification expérimentale et de valeur pratique. La méthode SwitchLoRA résout ingénieusement le problème de l'entraînement de faible rang lors de la phase de préentraînement, non seulement en maintenant l'effet d'entraînement, mais aussi en réalisant des économies de ressources significatives. Bien qu'il existe certaines limitations, ses contributions sont suffisantes pour faire progresser le développement du domaine.