глоссарий

Cosine annealing

Cosine annealing

Cosine annealing — это способ управления скоростью обучения нейросети, при котором на каждом цикле обучения коэффициент плавно снижается от максимального значения до почти нуля, следуя форме косинусоиды.

Правильный выбор скорости обучения критичен: слишком большая приводит к расходимости, слишком маленькая — к медленному прогрессу. Cosine annealing позволяет автоматически адаптировать темп, улучшая сходимость и качество модели. Это важно, потому что на поздних этапах обучения большие шаги мешают попасть в точный минимум функции потерь, а слишком раннее занижение темпа замедляет процесс.

Интуитивно это работает так. Представьте, что вы спускаетесь с горы. Сначала вы делаете широкие шаги, чтобы быстро сойти с плато, а затем шаги становятся всё короче, чтобы аккуратно найти долину минимума. Косинус как раз даёт плавное замедление: от единицы до нуля за один цикл. Если повторить цикл несколько раз, модель как бы «отряхивается» и снова пробует искать минимум с большим шагом, что помогает выходить из неглубоких локальных ловушек.

Прикладной пример — обучение остаточной сети на датасете CIFAR-10. Вместо того чтобы вручную уменьшать скорость обучения на определённых эпохах, инженер задаёт cosine annealing. На первых эпохах сеть быстро изучает грубые признаки, а к концу цикла бережно уточняет веса. В сочетании с импульсом такой приём часто даёт прирост точности на 0,5–1 процент и требует минимум ручной настройки.

Вывод простой: cosine annealing — эффективный и простой приём, который помогает модели лучше сходиться, не требуя составления сложных расписаний. Он стал стандартом во многих современных библиотеках глубокого обучения.