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
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 %.
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.
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
GaLore : Dépend de l'approximation SVD de l'espace de rang complet, introduisant une perte de précision lors du processus d'approximation
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.
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
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
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
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
Étant donné la matrice de poids W∈Rm×n d'un modèle préentraîné, LoRA traditionnel la transforme en W+rαBA, où B∈Rm×r, A∈Rr×n, r≪min(m,n). SwitchLoRA commute dynamiquement les vecteurs dans B et A pour augmenter le rang effectif.
Basée sur les idées d'initialisation Xavier et Kaiming, conçoit un nouvel écart-type :
std[B]=std[b]=(mnr)41gain21std[A]=std[a]=(nnmr)41gain21
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.
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.
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.
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
Effet d'Échelle : À mesure que la taille du modèle augmente, l'avantage de SwitchLoRA par rapport à LoRA standard devient plus prononcé
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
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.
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.
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
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
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
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
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é
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
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
Augmentation de la Complexité : Augmente la complexité d'implémentation par rapport à LoRA standard, nécessitant une gestion supplémentaire des vecteurs candidats
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
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
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
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
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
Reproductibilité : L'article fournit des détails d'implémentation détaillés et des paramètres, facilitant la reproduction et l'application
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
Entraînement Distribué : Peut réduire significativement les frais généraux de communication dans l'entraînement multi-nœuds
Entraînement Incrémental : Adapté aux scénarios nécessitant un entraînement continu basé sur le préentraînement
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.