TGViewer
КПД КПД @quant_prune_distill · 3.51K subscribers
Post #216 966
GaLore: Memory-Efficient LLM Training by Gradient Low-Rank Projection
[Статья][Код]

Введение

В связи со стремительным ростом размера моделей, все более острой становится проблема memory-efficient обучения LLM. По существу, рядовому пользователю доступны лишь parameter-efficient файнтьюны предобученных моделей. В разобранной ранее статье ReLoRA было предложено обучать несколько низкоранговых добавок и вливать их в веса. Однако, для достижения качества, не сильно уступающему обучению всей модели целиком, этап обучения всей модели целиком был необходим, то есть multi-GPU обучения все равно не избежать.

В этой статье был предложен подход, который позволил достичь с Llama-7b-подобной моделью качества близкого к полному обучению, доступный владельцам 1️⃣ GPU с 24Гб VRAM.

Метод

Суть метода довольно проста и не нова, по существу 👨‍🦳 .

Низкоранговые LoRA добавки неплохо работают на стадии дообучения, но эффективный pretrain требует заметать в процессе обучения пространство большой размерности. Однако, сами изменения весов могут (и авторы даже дают некоторое обоснование данному явлению) лежать в пространстве низкой размерности.

Отсюда мысль - проектировать градиенты и состояния оптимизатора в пространство низкой размерности. А именно делают следующее:
1️⃣ Считают градиент по весу на n-шаге
2️⃣ Считают его SVD разложение, откуда достают первые r векторов, отвечающих главным сингулярным значениям.
3️⃣ Проектируют на полученные подпространства состояния оптимизатора

В основе работы метода - предположение о том, что градиенты слабо меняются между соседними итерациями. Прикрутить его можно более-менее к любому стандартному градиентному алгоритму оптимизации - SGD, Adam (хоть исходный, хоть Adam8bit).

GaLore требует даже меньше памяти на линейный слой c n входными и m выходными нейронами, чем LoRA (с Adam).
🔴 LoRA : (mn + mr + nr) параметров, (2mr + 2nr) состояний оптимизатора
🟢GaLore : mn параметров, (mr + 2nr) состояний оптимизатора
  • 👍 12
  • 🔥 6
More from @quant_prune_distill
  1. Oct 16, 2026LUT3 в NVIDIA Rubin Блогпост от какого-то челика Описание хранения в PTX ISA Последнее пок…
  2. Oct 16, 2026Post #870
  3. Oct 15, 2026⚙️ Метод При низкоранговом сжатии можно пытаться приближать ошибку аппроксимации весов (SV…
  4. Oct 15, 2026🧠 Learning Functional Subspaces for Neural Network Compression 📄 Статья Вообще говоря, п…
  5. Oct 15, 2026I have a Universal Transformer I have a Universal Attention I have a Universal Transformer…
  6. Oct 15, 2026Считаю что статьи без кода, если это только не теор DL или position paper, надо деск редже…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →