Толковый словарь по нейросетям и искусственному интеллекту
Косинусное затухание
Категория термина
Косинусное затухание (Cosine Annealing) — стратегия изменения скорости обучения (learning rate), при которой значение плавно уменьшается по косинусоидальной кривой от начального уровня к минимальному. Этот метод позволяет сначала быстро обучать модель, а затем аккуратно уточнять её параметры.
🧠 Механизм работы
- Задаётся начальное и минимальное значение learning rate.
- В процессе обучения learning rate изменяется по косинусной функции.
- В начале обучение идёт быстро за счёт высокого значения.
- Постепенно скорость обучения снижается по плавной кривой.
- В конце обучение становится более точным и стабильным.
🔑 Особенности
- Обеспечивает плавное уменьшение learning rate без резких скачков.
- Часто используется в сочетании с warmup.
- Позволяет модели лучше сходиться к оптимуму.
- Широко применяется в обучении диффузионных моделей.
📌 Примеры применения
- Обучение LoRA и LyCORIS моделей в Kohya_SS.
- Тренировка нейросетей с длительным циклом обучения.
- Оптимизация fine-tuning для получения более качественных результатов.
⚖️ Преимущества и недостатки
Преимущества:
- Плавная и стабильная сходимость.
- Снижает риск переобучения.
- Хорошо подходит для длительных тренировок.
Недостатки:
- Требует настройки минимального learning rate.
- Менее эффективен при очень коротком обучении.
🧠 Связанные понятия
- Scheduler — механизм управления learning rate.
- Learning Rate — скорость обучения модели.
- Warmup — постепенное увеличение learning rate в начале.
- Optimizer — алгоритм обновления весов.
- Training Epoch — полный проход по данным.
💡 Вывод
Cosine Annealing является одной из наиболее эффективных стратегий изменения learning rate, обеспечивая плавное и стабильное обучение. Он помогает модели достичь лучшего качества за счёт постепенного снижения скорости обучения.
⚙️ Практическое применение
- В Kohya_SS это один из самых рекомендуемых scheduler для обучения LoRA и LyCORIS.
- Используйте вместе с warmup (5–10% шагов) для лучшего старта обучения.
- Подходит для средних и длинных тренировок (много шагов/эпох).
- Если модель «недоучивается» — увеличьте общее число шагов или epochs.
- Если появляются артефакты — попробуйте снизить начальный learning rate.