🎓 Обучение моделей

Оптимизаторы, распределённое обучение, fine-tuning, mixed precision

DeepSpeed ZeRO

Zero Redundancy Optimizer

DeepSpeed ZeRO — техника распределённого обучения от Microsoft, устраняющая дублирование данных между GPU. Позволяет обучать модели в 8-10× больше, чем помещается в VRAM одной GPU.

FSDP

Fully Sharded Data Parallel

FSDP — встроенный в PyTorch механизм распределённого обучения, аналог DeepSpeed ZeRO-3. Шардирует веса, градиенты и состояние оптимизатора между GPU для обучения сверхбольших моделей.

Gradient Accumulation

Gradient Accumulation

Gradient Accumulation — техника, при которой градиенты накапливаются за несколько мини-батчей перед обновлением весов, позволяя эмулировать большой батч на GPU с ограниченной VRAM.

Gradient Checkpointing

Gradient Checkpointing / Activation Recomputation

Gradient Checkpointing — техника экономии VRAM при обучении, при которой промежуточные активации не хранятся, а пересчитываются при backward pass. Уменьшает потребление памяти в 3-5× ценой ~30% замедления.

LoRA

Low-Rank Adaptation

LoRA (Low-Rank Adaptation) — метод эффективной дообучения (fine-tuning) больших моделей, который обновляет только малые матрицы-адаптеры (0.1-1% параметров), сохраняя исходные веса замороженными.

MFU

Model FLOPs Utilization

MFU (Model FLOPs Utilization) — метрика эффективности использования GPU при обучении, показывающая отношение теоретических FLOPS модели к пиковым FLOPS ускорителя. MFU 50%+ считается хорошим результатом.

Mixed Precision

Mixed Precision Training

Mixed Precision — техника обучения нейросетей с использованием нескольких форматов данных (FP32 + FP16/BF16) одновременно, ускоряющая обучение в 2-3× при минимальной потере точности.

PEFT

Parameter-Efficient Fine-Tuning

PEFT (Parameter-Efficient Fine-Tuning) — семейство методов дообучения, обновляющих лишь малую часть параметров модели (0.01-1%), что драматически снижает требования к VRAM и позволяет fine-tuning на consumer GPU.

Pipeline Parallelism

Pipeline Parallelism (PP)

Pipeline Parallelism — метод распределения модели, при котором слои модели распределяются по GPU вертикально. Входные данные разбиваются на микро-батчи, обрабатываемые конвейером для минимизации простоя GPU.

Tensor Parallelism

Tensor Parallelism (TP)

Tensor Parallelism — метод распределения модели, при котором отдельные тензоры (матрицы весов) разрезаются по горизонтали между GPU. Каждая GPU хранит и вычисляет свою часть каждого слоя.

Training Instabilities

Training Instabilities / Loss Spikes

Training Instabilities — нестабильности при обучении LLM: всплески loss, NaN-значения, расходимость. Вызваны проблемами с данными, learning rate, инициализацией весов или ограничениями оптимизатора Adam.