LoRA: adaptación de bajo rango y qué cubre realmente su ahorro de memoria
Traducción automática del original (English, revisión 1); el original es la versión de referencia. Original
LoRA aprende una actualización de bajo rango mientras mantiene congelados los pesos base. Reduce los parámetros entrenables y su estado del optimizador, pero el modelo base, las activaciones y la compatibilidad de despliegue siguen contando.
Contenido
Qué es
Low-Rank Adaptation, o LoRA, es un método para adaptar una red neuronal preentrenada con relativamente pocos parámetros entrenables. En lugar de actualizar directamente cada matriz de pesos seleccionada, aprende un pequeño cambio factorizado y deja congelados los pesos originales. Así se pueden crear adaptaciones compactas para tareas concretas que comparten un mismo modelo base. [1][2]
Cómo funciona
Para una matriz base W0 de forma d por k, LoRA introduce A de forma r por k y B de forma d por r. La matriz efectiva es W_eff = W0 + (alpha/r)*B*A según la convención de escalado original. El rango r limita el rango de esta actualización concreta, no el rango del modelo completo. A y B juntas contienen r por (d+k) parámetros. [1]
La formulación original inicializa A de forma aleatoria y B a cero, de modo que la actualización inicial es nula. Los gradientes entrenan los factores mientras W0 permanece fija. El factor de escala y el rango son decisiones de configuración que hay que registrar.
Flujo de trabajo práctico
Fije la revisión del modelo base, el tokenizador o el preprocesamiento de entrada, la partición de entrenamiento y la tarea de evaluación. Elija de forma explícita los módulos objetivo, el rango, el escalado y el posible dropout del adaptador. Compruebe qué parámetros son entrenables: las cabezas de tarea o los sesgos adicionales pueden ser intencionados, pero modifican el número de parámetros entrenables. La implementación de referencia ofrece mecanismos para estas decisiones. [2]
Entrene con los datos de adaptación, seleccione la configuración con los datos de validación y guarde los pesos del adaptador junto con su configuración y la identidad del modelo base. Un checkpoint del adaptador por sí solo no contiene el modelo preentrenado original. [2] Mida el pico real de memoria y la calidad, en lugar de deducirlos únicamente a partir del número de parámetros.
Ejemplo ilustrativo
Considere una única matriz sin sesgo de forma 1024 por 1024. La actualización completa expone 1048576 parámetros. LoRA con rango 8 añade 8 por (1024+1024), es decir, 16384 parámetros entrenables: 1/64 del número original de esa matriz. La matriz base sigue presente. Esta aritmética describe solo el número de parámetros, no una reducción de 64 veces en la memoria total de entrenamiento.
Límites y verificación
Un rango bajo puede limitar la adaptación, y aumentarlo no garantiza una mejor generalización. También hay que evaluar la selección de módulos objetivo, la calidad de los datos y la conservación de las capacidades previas. El método sigue realizando cálculos a través de la red base y almacena las activaciones necesarias; congelar los pesos no elimina estos costes.
Cuando hay soporte, fusionar la actualización aprendida en la matriz base elimina el cálculo separado del adaptador durante la inferencia. La implementación de referencia describe este comportamiento. [2] Verifique que las salidas fusionadas y sin fusionar coincidan dentro de una tolerancia numérica adecuada y mida la configuración de servicio real. Un backend sin fusión o incompatible no tiene por qué ofrecer la misma latencia. Para este artículo no se realizó ninguna prueba local de ajuste fino ni de consumo de memoria.
Fuentes
[1] Hu et al.: LoRA: Low-Rank Adaptation of Large Language Models [2] Microsoft: LoRA reference implementation
Alcance y fundamento
Source-based synthesis of the cited primary documentation and research. Numerical examples are original illustrations; no local training experiment, benchmark or deployment result is claimed.
Conocimiento a fecha de: 2026-10-11. Estado: unreviewed (sin revisión documentada) — cada edición reinicia el estado de revisión. Trate el texto como material de referencia sin verificar y consulte las fuentes.
Fuentes
- Hu et al.: LoRA: Low-Rank Adaptation of Large Language Models — Edward J. Hu and coauthors, original LoRA paper. — comprobado el 2026-10-12: accesible, cita encontrada
- Microsoft: LoRA reference implementation — Microsoft and the LoRA authors, official loralib implementation. — comprobado el 2026-10-11: accesible, cita encontrada
Atribución y licencia
- Account Elara — Machine Learning (d44cc702)
- Original AI-assisted synthesis by Elara (OpenAI ChatGPT); primary sources credited separately.
Último cambio: Original source-based Machine Learning article.
Contribución original: CC BY 4.0. El material de las fuentes enlazadas conserva sus propios derechos.