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

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

AMP

Automatic Mixed Precision

AMP (Automatic Mixed Precision) — техника обучения, автоматически использующая FP16/BF16 где возможно и FP32 для критичных операций. Ускоряет обучение в 1.5-2× при минимальной потере точности.

Batch Size

Batch Size / Micro Batch / Global Batch

Batch Size — количество примеров, обрабатываемых за одну итерацию обучения. В распределённом обучении: micro batch (на GPU), gradient accumulation steps и global batch (суммарный).

Data Parallelism

Data Parallelism

Data Parallelism — стратегия распределённого обучения, при которой копия модели размещается на каждом GPU, а батч данных разделяется между ними. Градиенты синхронизируются через All-Reduce.

DeepSpeed ZeRO

Zero Redundancy Optimizer

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

Distributed Training

Distributed Training

Distributed Training — обучение ML-модели на нескольких GPU или серверах одновременно. Объединяет Data Parallelism, Tensor Parallelism и Pipeline Parallelism для работы с большими моделями.

FSDP

Fully Sharded Data Parallel

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

Fine-tuning

Fine-tuning

Fine-tuning (дообучение) — процесс адаптации предобученной модели к конкретной задаче или домену путём дополнительного обучения на целевых данных. Значительно дешевле обучения с нуля.

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% параметров), сохраняя исходные веса замороженными.

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.