Ответ вслух Senior Оптимизаторы и обучение обновлено

Стабильное обучение большой модели

Вопрос

Какие приёмы вы используете, чтобы стабильно и эффективно обучать большую модель на нескольких GPU?

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Базовый рецепт: AdamW с параметрами под масштаб модели, warmup и косинусное затухание, клиппинг градиентов по норме около 1, weight decay только на матрицы.

Что должно прозвучать в ответе

  • AdamW, warmup, косинус, клиппинг, группы weight decay

  • bf16 mixed precision, gradient checkpointing, накопление градиентов

  • Распределённость: DDP, FSDP или ZeRO для шардирования весов и состояния оптимизатора

  • Мониторинг loss, норм градиентов, lr, пропускной способности; частые чекпоинты

  • Реакция на всплески: откат, пропуск батчей, снижение lr

Что могут спросить следом

  • Чем FSDP отличается от DDP по памяти?
  • Сколько памяти занимает состояние Adam для модели на 7 млрд параметров?

Разбор

Базовый рецепт: AdamW с параметрами под масштаб модели, warmup и косинусное затухание, клиппинг градиентов по норме около 1, weight decay только на матрицы. Для памяти и скорости: bf16 mixed precision через autocast, gradient checkpointing для активаций, накопление градиентов до нужного эффективного батча, torch.compile и эффективные ядра attention. Распределение: DDP, если модель влезает в одну GPU (реплика на каждой, градиенты усредняются all-reduce), FSDP или ZeRO, если нет: веса, градиенты и состояние оптимизатора шардируются между GPU. Состояние Adam в fp32 это 8 байт на параметр, для 7 млрд около 56 ГБ, плюс fp32-копия весов, поэтому без шардирования не обойтись. Мониторю loss, нормы градиентов, lr, токены в секунду и утилизацию GPU, сохраняю чекпоинты часто. При всплеске loss откатываюсь к чекпоинту, пропускаю проблемные батчи, снижаю lr.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме