Шихар Мурти об обучении LLM: от FP16 до LoRA

Stanford Online 11,3 тыс. 1 ч 2 мин 3 мин 04.03.2025
Главное

Эффективное обучение LLM: от управления памятью до LoRA 0:05

Лекция Шихара Мурти (Shikhar Murty) в рамках курса Stanford CS224N посвящена практическим аспектам обучения больших языковых моделей (LLM) на графических процессорах (GPU). Автор подробно разбирает стратегии снижения потребления видеопамяти и оптимизации процесса дообучения, когда вычислительных ресурсов становится недостаточно для стандартных методов.

💾 Представление чисел и смешанная точность (Mixed Precision) 2:01

Эффективное обучение начинается с понимания того, как компьютер оперирует числами и весами нейросетей. По словам Мурти, переход от классического формата FP32 (32 бита) к форматам с пониженной точностью является критически важным.

Для борьбы с потерей точности при использовании FP16 применяется смешанная точность (mixed precision training): создание копии весов в FP32 (master weights), вычисления в FP16 и последующее обновление master weights с использованием более точных градиентов.

🌐 Распределенное обучение на нескольких GPU 14:09

При использовании нескольких GPU задача усложняется необходимостью синхронизации градиентов.

Мурти отмечает, что all reduce эквивалентен комбинации reduce scatter и all gather, поэтому ZeRO Stage 1 и 2 позволяют экономить память практически без накладных расходов на коммуникацию. FSDP же требует более сложной стратегии, связанной с операциями all gather и reduce scatter в процессе прямого и обратного проходов.

💡 Параметрически эффективное дообучение (PEFT) и LoRA 38:04

Когда даже использование ZeRO Stage 3 и активационного чекпоинтинга не позволяет уместить модель в память, Мурти предлагает переходить к методам эффективного дообучения.

В завершение лекции Мурти приводит алгоритм действий для финальных проектов студентов: всегда использовать mixed precision (желательно BFloat16), начинать с batch size 1, использовать ZeRO Stage 2 для масштабирования, и только при нехватке памяти — подключать FSDP или LoRA.

💬 Цитаты

«Всегда используйте обучение со смешанной точностью.»

Шихар Мурти 36:24

«Обновления весов при дообучении зачастую имеют низкий внутренний ранг.»

Шихар Мурти 45:25
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
FSDP
Метод распараллеливания данных, при котором параметры модели шардируются (разделяются) между всеми доступными GPU.
LoRA
Метод дообучения, при котором обучаются лишь небольшие низкоранговые матрицы-адаптеры, а не все параметры модели.
Mixed Precision
Использование комбинации FP16/BF16 и FP32 для ускорения вычислений и снижения потребления памяти.
All Reduce
Операция в распределенных вычислениях, собирающая данные со всех узлов, суммирующая их и отправляющая результат обратно каждому узлу.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект Shikhar Murty DeepSpeed FSDP LoRA BFloat16