Stochastic depth
Зачем это нужно? Очень глубокие сети склонны переобучаться и требуют больших вычислительных ресурсов. Stochastic depth решает обе проблемы: действует как регуляризатор, улучшая обобщение, и ускоряет обучение, поскольку часть слоёв временно не участвует в вычислениях. Это аналог dropout, только выключаются не нейроны, а целые слои.
Интуиция: представьте дом, где каждый день случайно пропадают несколько этажей. Чтобы он не рухнул, несущие конструкции делают прочными, и в конце здание оказывается надёжным. Так и сеть учится выполнять задачу с любой случайной глубиной. На тесте все блоки включаются и дают более точный результат — как ансамбль из множества сетей разной глубины.
Прикладной пример: при обучении ResNet-110 на CIFAR-10 stochastic depth почти вдвое сократил время тренировки и уменьшил ошибку классификации по сравнению со стандартным подходом. Это важно при ограниченных вычислительных мощностях.
Коротко: stochastic depth — простой эффективный приём, позволяющий обучать очень глубокие сети быстрее и с лучшей обобщающей способностью, элегантно дополняя другие методы регуляризации.
Поделиться