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: La Adaptación de Bajo Rango Conmutada Puede Aprender Información de Rango Completo

Información Básica

  • ID del Artículo: 2406.06564v3
  • Título: SwitchLoRA: Switched Low-Rank Adaptation Can Learn Full-Rank Information
  • Autores: Kaiye Zhou, Shucheng Wang, Jun Xu (China Mobile (Suzhou) Software Technology Co. Ltd.)
  • Clasificación: cs.LG, cs.AI, cs.CL
  • Fecha de Publicación: 2 de enero de 2025 (preimpresión en arXiv)
  • Enlace del Artículo: https://arxiv.org/abs/2406.06564v3

Resumen

Este artículo propone el método SwitchLoRA para abordar los desafíos del entrenamiento eficiente en parámetros durante la fase de preentrenamiento de modelos de lenguaje grandes. Aunque las técnicas tradicionales de adaptación de bajo rango, como LoRA, funcionan excelentemente en la fase de ajuste fino, su aplicación directa al preentrenamiento resulta en una disminución significativa del rendimiento. Los métodos existentes ReLoRA y GaLore intentan resolver este problema actualizando subespacios de bajo rango, pero aún no alcanzan la precisión del entrenamiento de rango completo. SwitchLoRA reemplaza frecuente y suavemente los parámetros entrenables de los adaptadores LoRA, actualizando incrementalmente el subespacio de bajo rango, dirigiéndose solo a pocas dimensiones en cada paso para minimizar el impacto en los estados del optimizador. Los resultados experimentales muestran que SwitchLoRA reduce la perplejidad en el modelo LLaMA 1.3B de 15.23 a 15.01, superando el entrenamiento de rango completo, mientras reduce el 54% de la sobrecarga de comunicación y el 13% del uso de memoria.

Antecedentes de Investigación y Motivación

Problema Central

Con el auge de la arquitectura Transformer, el tamaño de los modelos de lenguaje grandes ha crecido exponencialmente, y el entrenamiento distribuido de modelos a nivel de billones enfrenta una sobrecarga de comunicación entre nodos masiva. Aunque técnicas eficientes en parámetros como LoRA funcionan excelentemente en la fase de ajuste fino, su aplicación directa a la fase de preentrenamiento resulta en una disminución significativa del rendimiento.

Limitaciones de Métodos Existentes

  1. ReLoRA: Para mantener la consistencia del estado del optimizador, limita la frecuencia de actualización, sin poder aproximarse suficientemente al comportamiento del entrenamiento de rango completo
  2. GaLore: Depende de aproximación SVD del espacio de rango completo, introduciendo pérdida de precisión en el proceso de aproximación

Motivación de la Investigación

Las redes neuronales exhiben características de rango completo en las etapas iniciales del entrenamiento, y el rango interno disminuye gradualmente a medida que avanza el entrenamiento. Por lo tanto, se necesita un método que pueda entrenar una gran cantidad de parámetros durante la fase de preentrenamiento, mientras actualiza selectivamente algunos parámetros para reducir el uso de memoria y la sobrecarga de comunicación.

Contribuciones Principales

  1. Propuesta del Método SwitchLoRA: Mediante el ajuste frecuente y suave de los parámetros entrenables de las matrices LoRA, reduce el uso de memoria y la sobrecarga de comunicación mientras mantiene la precisión del entrenamiento de rango completo
  2. Estrategia de Gestión del Estado del Optimizador: Diseña mecanismos de reinicio del estado del optimizador y congelamiento temporal durante el cambio de parámetros, reduciendo el impacto de la inconsistencia de estados
  3. Reglas de Inicialización Mejoradas: Proporciona nuevas estrategias de inicialización para los parámetros del adaptador LoRA y sus vectores candidatos, mejorando la eficiencia del entrenamiento
  4. Verificación Experimental Integral: Valida la efectividad del método en modelos LLaMA de múltiples escalas y verifica las capacidades de inferencia mediante la prueba de referencia GLUE

Explicación Detallada del Método

Definición de la Tarea

Dada una matriz de pesos WRm×nW \in \mathbb{R}^{m \times n} del modelo preentrenado, LoRA tradicional la convierte en W+αrBAW + \frac{\alpha}{r}BA, donde 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 cambia dinámicamente los vectores en B y A para aumentar el rango efectivo.

Arquitectura del Modelo

Mecanismo de Conmutación Principal

  1. Descomposición de Vectores: Descompone la matriz B en vectores columna bkRm×1b_k \in \mathbb{R}^{m \times 1} y la matriz A en vectores fila akTR1×na_k^T \in \mathbb{R}^{1 \times n}
  2. Conjunto de Vectores Candidatos: Mantiene conjuntos de vectores candidatos C(B)C(B) y C(AT)C(A^T), conteniendo min(m,n)\min(m,n) vectores
  3. Reemplazo Dinámico: Durante los pasos de entrenamiento, reemplaza bkb_k y aka_k con vectores candidatos bkC(B)b_k' \in C(B) y akC(AT)a_k' \in C(A^T)

Estrategia de Ajuste de Pesos

Cuando se reemplazan vectores, se ajustan correspondientemente las matrices de pesos: WW+bkakTbkakTW \leftarrow W + b_k a_k^T - b_k' a_k'^T

Diseño de Frecuencia de Conmutación

Utiliza una función de decaimiento exponencial: frequency=Ceθstepfrequency = Ce^{-\theta \cdot step}, reflejando la evolución natural del modelo de rango completo a bajo rango.

Puntos de Innovación Técnica

1. Minimización del Impacto en el Estado del Optimizador

  • Cuando aka_k se conmuta, reinicia el estado del optimizador de bkb_k
  • Cuando bkb_k se conmuta, reinicia el estado del optimizador de aka_k
  • Después del reinicio, congela temporalmente los parámetros correspondientes N pasos (N=5)

2. Estrategia de Inicialización Mejorada

Basada en ideas de inicialización Xavier y Kaiming, diseña nuevas desviaciones estándar: 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. Optimización de Memoria

Descarga vectores candidatos de respaldo a CPU, utilizando transferencia no bloqueante para procesar la conmutación en paralelo.

Configuración Experimental

Conjuntos de Datos

  • Preentrenamiento: Conjunto de datos C4, utilizando los primeros 46M ejemplos de entrenamiento y el conjunto de validación completo
  • Evaluación: Evaluación de pérdida de validación cada 1000 pasos en 10M tokens
  • Ajuste Fino: Múltiples tareas de la prueba de referencia GLUE

Configuración del Modelo

Los experimentos abarcan múltiples escalas de modelos LLaMA:

  • 130M (768 dimensiones, 12 cabezas, 12 capas)
  • 250M (768 dimensiones, 16 cabezas, 24 capas)
  • 350M (1024 dimensiones, 16 cabezas, 24 capas)
  • 1.3B (2048 dimensiones, 32 cabezas, 24 capas)

Métricas de Evaluación

  • Preentrenamiento: Perplejidad
  • Ajuste Fino: Precisión, coeficiente de correlación de Pearson, coeficiente de correlación de Matthews

Métodos de Comparación

  • Entrenamiento de rango completo
  • LoRA estándar
  • ReLoRA
  • GaLore

Detalles de Implementación

  • Optimizador: Adam (β₁=0.9, β₂=0.999)
  • Programación de tasa de aprendizaje: Recocido de coseno, precalentamiento de 100 pasos
  • Pasos totales de entrenamiento: 40,000 pasos
  • Hardware: 8×NVIDIA A800 80GB PCIe GPU

Resultados Experimentales

Resultados Principales

Comparación de Rendimiento de Preentrenamiento

Resultados de perplejidad en el modelo 1.3B:

  • Rango completo: 15.23
  • SwitchLoRA (rango=512): 15.01 (superando el entrenamiento de rango completo)
  • SwitchLoRA (rango=256): 15.89

Comparación de Consumo de Recursos

Tomando el modelo 1.3B como ejemplo:

  • Uso de Memoria: Reducción del 13% comparado con entrenamiento de rango completo (36.1GB → 31.9GB)
  • Sobrecarga de Comunicación: Reducción del 54% (parámetros entrenables de 1339M a 610M)
  • Tiempo de Entrenamiento: Esencialmente equivalente (21.6s vs 22.5s)

Comparación con Métodos Existentes

vs ReLoRA

En el modelo 250M, cuando ReLoRA utiliza 5000 pasos de preentrenamiento de rango completo mientras SwitchLoRA utiliza solo 200 pasos, SwitchLoRA aún funciona mejor. Bajo condiciones de 1000 pasos de preentrenamiento de rango completo idénticos, SwitchLoRA supera significativamente a ReLoRA.

vs GaLore

En el modelo 350M:

  • GaLore: perplejidad de 20.29
  • SwitchLoRA: perplejidad de 19.58

En configuraciones de rango más bajo, la ventaja de SwitchLoRA es aún más evidente, demostrando la importancia de cubrir todas las direcciones de actualización.

Experimentos de Ablación

Impacto de la Frecuencia de Conmutación

Los experimentos muestran que tanto la frecuencia inicial como la tasa de decaimiento necesitan establecerse en valores moderados; valores demasiado altos o demasiado bajos reducen el rendimiento.

Impacto del Número de Pasos de Congelamiento

La elección del número de pasos de congelamiento N afecta el efecto del entrenamiento, siendo N=5 la configuración óptima.

Verificación de la Estrategia de Inicialización

El nuevo método de inicialización mejora significativamente la velocidad de convergencia en comparación con la inicialización LoRA tradicional.

Verificación de Capacidad de Inferencia

Resultados de la Prueba de Referencia GLUE

En el modelo 350M:

  • El modelo preentrenado con SwitchLoRA es en promedio 3.0 puntos más alto que el preentrenado con GaLore
  • Es en promedio 0.3 puntos más alto que el preentrenado de rango completo

En el modelo 1.3B:

  • El modelo preentrenado con SwitchLoRA es aproximadamente 1.0 punto más alto en promedio que el preentrenado de rango completo

Hallazgos Experimentales

  1. Análisis de Distribución de Rango: La distribución de valores singulares de SwitchLoRA es más cercana al entrenamiento de rango completo, mientras que LoRA estándar muestra una distribución patológica
  2. Efecto de Escala: A medida que aumenta la escala del modelo, la ventaja de SwitchLoRA sobre LoRA estándar es más pronunciada
  3. Capacidad de Generalización: El modelo preentrenado con SwitchLoRA exhibe capacidades de inferencia y generalización más fuertes en tareas posteriores

Trabajo Relacionado

Métodos de Descomposición de Bajo Rango

Los trabajos anteriores logran aproximación de bajo rango de matrices de pesos mediante métodos como SVD, aplicados principalmente a CNN y modelos de lenguaje de pequeña escala.

Variantes de LoRA

  • Clase de Fusión de Parámetros: Chain of LoRA, ReLoRA aumentan el rango efectivo mediante fusión periódica de parámetros
  • Clase de Mejora de Inicialización: Mejoran la estrategia de inicialización de matrices B y A y configuración de tasa de aprendizaje
  • Clase de Modificación Estructural: Modifican el proceso de entrenamiento de LoRA y mecanismo de actualización de parámetros

Otros Métodos de Compresión

Incluyen técnicas de cuantización, poda, compresión de gradientes, entre las cuales GaLore logra entrenamiento eficiente en memoria mediante proyección de gradientes.

Conclusiones y Discusión

Conclusiones Principales

  1. Avance en Rendimiento: SwitchLoRA logra por primera vez superar el rendimiento del entrenamiento de rango completo en la fase de preentrenamiento
  2. Eficiencia de Recursos: Reduce significativamente el uso de memoria y la sobrecarga de comunicación, manteniendo tiempo de entrenamiento comparable
  3. Mejora de Generalización: El modelo preentrenado exhibe capacidades de inferencia más fuertes en tareas posteriores

Limitaciones

  1. Sensibilidad a Hiperparámetros: Hiperparámetros como la frecuencia de conmutación requieren ajuste cuidadoso
  2. Selección de Rango: Aún requiere rango LoRA relativamente grande para alcanzar la precisión del entrenamiento de rango completo
  3. Selección de Vectores Candidatos: Actualmente utiliza selección aleatoria o secuencial, con posible espacio para optimización

Direcciones Futuras

  1. Frecuencia Adaptativa: Desarrollar estrategias más inteligentes de ajuste de frecuencia de conmutación
  2. Optimización por Capas: Diseñar estrategias de conmutación diferenciadas para diferentes tipos de capas (matrices Q, K, V)
  3. Optimización de Vectores Candidatos: Investigar estrategias más efectivas de selección y actualización de vectores candidatos

Evaluación Profunda

Fortalezas

  1. Innovación Teórica: Propone una nueva idea de actualización incremental de subespacios de bajo rango, resolviendo efectivamente el problema del entrenamiento de bajo rango en la fase de preentrenamiento
  2. Implementación de Ingeniería: Considera detalladamente problemas prácticos como gestión del estado del optimizador y optimización de memoria, con fuerte practicidad
  3. Experimentos Exhaustivos: Verifica la efectividad del método desde múltiples ángulos, incluyendo rendimiento de preentrenamiento, consumo de recursos y capacidad de inferencia
  4. Análisis Teórico: Proporciona explicaciones teóricas como independencia de actualización de vectores y racionalidad del reinicio del estado del optimizador

Deficiencias

  1. Aumento de Complejidad: Aumenta la complejidad de implementación comparado con LoRA estándar, requiriendo gestión adicional de vectores candidatos
  2. Ajuste de Hiperparámetros: Múltiples hiperparámetros (frecuencia de conmutación, tasa de decaimiento, pasos de congelamiento) requieren ajuste cuidadoso
  3. Verificación de Escala: Aunque se prueban múltiples escalas de modelo, la máxima es solo 7B, con aplicabilidad a modelos más grandes aún por verificar
  4. Completitud Teórica: Aunque proporciona análisis teórico, carece de explicación teórica profunda sobre por qué puede superar el entrenamiento de rango completo

Impacto

  1. Valor Académico: Proporciona nuevas ideas de solución para entrenamiento eficiente en parámetros en la fase de preentrenamiento, potencialmente inspirando más investigación relacionada
  2. Valor Práctico: Reduce significativamente el consumo de recursos mientras mantiene rendimiento, con importancia significativa para entrenamiento de modelos grandes en la práctica
  3. Reproducibilidad: El artículo proporciona detalles de implementación detallados y configuración de hiperparámetros, facilitando reproducción y aplicación

Escenarios Aplicables

  1. Preentrenamiento de Modelos Grandes: Particularmente adecuado para escenarios con recursos limitados pero que requieren preentrenamiento de alta calidad
  2. Entrenamiento Distribuido: Puede reducir significativamente la sobrecarga de comunicación en entrenamiento multinodo
  3. Entrenamiento Incremental: Adecuado para escenarios que requieren entrenamiento continuo basado en preentrenamiento

Referencias

El artículo cita numerosos trabajos relacionados, incluyendo principalmente:

  • Hu et al. 2022: Artículo original de LoRA
  • Lialin et al. 2023: Método ReLoRA
  • Zhao et al. 2024: Método GaLore
  • Vaswani et al. 2017: Arquitectura Transformer
  • Rajbhandari et al. 2020: Optimizador ZeRO

Evaluación General: Este es un artículo de investigación de alta calidad que demuestra excelencia en innovación teórica, verificación experimental y valor práctico. El método SwitchLoRA resuelve ingeniosamente el problema del entrenamiento de bajo rango en la fase de preentrenamiento, no solo manteniendo la efectividad del entrenamiento sino también logrando ahorros significativos de recursos. Aunque presenta algunas limitaciones, sus contribuciones son suficientes para impulsar el desarrollo de este campo.