Толковый словарь по нейросетям и искусственному интеллекту
Разогрев
Категория термина
Разогрев (Warmup) — это метод в машинном обучении и нейросетях, который предполагает постепенное увеличение значения learning rate (скорости обучения) в первые шаги тренировки модели. Идея warmup заключается в том, чтобы избежать нестабильности и резких колебаний градиентов на старте обучения, особенно при работе с глубокими нейросетями, трансформерами и крупными языковыми моделями (LLM).
Warmup часто используется в комбинации с Learning Rate Scheduling, где после фазы разогрева learning rate может уменьшаться по заранее заданной схеме (step decay, cosine annealing и т.д.).
🔍 Принцип работы:
- Начальное малое значение learning rate: на старте обучения модель обновляет веса малыми шагами, что предотвращает скачки и расходимость градиентов.
- Постепенное увеличение: learning rate линейно, экспоненциально или по другой функции повышается до основной величины, заданной для обучения.
- Переход к основной схеме: после завершения warmup начинается стандартное снижение learning rate согласно выбранному scheduler.
🧪 Примеры применения:
- Обучение LLM (GPT, BERT, LLaMA): warmup используется для предотвращения нестабильности при старте обучения больших трансформеров.
- Компьютерное зрение (CNN): уменьшение риска расходимости при работе с большими батчами.
- GAN и генеративные модели: контроль колебаний градиентов на старте тренировки генератора и дискриминатора.
- Fine-tuning: постепенное увеличение learning rate при дообучении предобученной модели на новом датасете.
⚡ Преимущества Warmup:
- Стабильность градиентов: предотвращает резкие изменения весов и расходимость модели на старте.
- Повышение качества обучения: способствует более плавной сходимости функции потерь.
- Гибкость: можно сочетать с различными стратегиями Learning Rate Scheduling.
- Безопасность при больших батчах: уменьшает риск нестабильности при обучении с большими batch size.
📌 Связанные термины:
- Learning Rate Scheduling (Планирование скорости обучения): warmup часто используется как первая фаза scheduler.
- Learning Rate (Скорость обучения): гиперпараметр, который увеличивается во время warmup.
- Optimizer (Оптимизатор): алгоритмы Adam, SGD и др. используют learning rate для обновления весов.
- Gradient Descent: warmup влияет на размер шагов градиентного спуска на старте обучения.
✅ Заключение:
Разогрев (Warmup) — это ключевая техника для обеспечения стабильности и плавной сходимости нейросетей, особенно глубоких моделей и LLM. Она позволяет безопасно стартовать обучение, предотвращает резкие скачки градиентов и улучшает эффективность тренировки, особенно при работе с большими батчами и сложными архитектурами.