LoRA (Low-Rank Adaptation) — это метод параметрически эффективного дообучения нейронных сетей, предложенный исследователями из Microsoft в 2021 году. LoRA позволяет адаптировать большую предобученную модель к новым задачам, обучая лишь малую долю параметров, что радикально снижает требования к вычислительным ресурсам и памяти.
Принцип работы LoRA основан на математическом наблюдении: при дообучении большой модели изменения весов имеют низкий ранг — то есть их можно аппроксимировать произведением двух компактных матриц. Вместо обновления всех миллиардов параметров модели LoRA «замораживает» оригинальные веса и добавляет к ним небольшие обучаемые матрицы-адаптеры. Например, для модели с 7 миллиардами параметров LoRA-адаптер может содержать всего несколько миллионов обучаемых параметров — менее 1% от общего числа.
Результат обучения — компактный файл (обычно от 10 до 200 МБ), который «накладывается» поверх базовой модели. Это даёт несколько практических преимуществ: можно хранить одну базовую модель и множество LoRA-адаптеров для разных задач, быстро переключаясь между ними. Также можно комбинировать несколько LoRA одновременно.
В области генерации изображений LoRA стала стандартным методом для обучения моделей на новых стилях, персонажах или объектах. В текстовых моделях LoRA используется для адаптации под конкретные предметные области, языки или форматы ответов.
LoRA имеет огромное значение для демократизации ИИ. Если полное дообучение большой модели требует кластера дорогих GPU, то LoRA-обучение возможно на одной потребительской видеокарте. Это открыло файн-тюнинг для индивидуальных разработчиков и небольших команд.