LoRA (низкоранговая адаптация)
LoRA (Low-Rank Adaptation) — метод эффективного дообучения больших моделей, при котором к замороженным весам добавляются компактные матрицы низкого ранга; число обучаемых параметров сокращается более чем в сто раз по сравнению с полной настройкой.
LoRA — метод parameter-efficient fine-tuning (PEFT), предложенный командой Microsoft Research в 2021 году (Hu et al.). Вместо обновления всей матрицы весов W вводятся две малые матрицы A и B, где ранг r значительно меньше размерностей пространства: обновление представляется как W + ΔW = W + BA. Исходные веса модели заморожены и не изменяются; обучаются только матрицы A и B, которые инициализируются случайно и нулями соответственно.
При ранге r=8 для матрицы 4096×4096 вместо 16,7 млн параметров обучается лишь 65 536 — в 256 раз меньше. После обучения адаптеры можно слить с исходными весами (операция merge), что полностью устраняет дополнительную задержку при инференсе. Адаптеры традиционно применяются к проекциям слоёв внимания (Q, K, V, O), однако современные реализации охватывают и MLP-слои. Ключевые гиперпараметры: ранг r (обычно 4–64), масштабирующий коэффициент alpha и набор целевых модулей.
LoRA позволяет дообучать модели с 7–70 млрд параметров на потребительских GPU с 24 ГБ VRAM. Адаптеры занимают десятки мегабайт против десятков гигабайт для полных весов, что упрощает хранение, распространение и оперативное переключение между специализациями одной базовой модели. Это открыло рынок пользовательских дообученных моделей: сотни тысяч LoRA-адаптеров опубликованы на Hugging Face Hub.
К 2026 году LoRA стала де-факто стандартом дообучения LLM. Библиотека Hugging Face PEFT насчитывает десятки миллионов загрузок; платформы Replicate, Modal и Together AI поддерживают обучение LoRA-адаптеров через API. Развились специализированные варианты: DoRA (Weight-Decomposed LoRA), LoftQ (инициализация с учётом квантизации), rsLoRA (нормировка для стабильности при больших рангах).