Толковый словарь по нейросетям и искусственному интеллекту
Стохастический градиентный спуск
Категория термина
Стохастический градиентный спуск (Stochastic Gradient Descent, SGD) — это метод оптимизации, используемый для обучения нейронных сетей. Он является вариацией классического градиентного спуска, но обновление весов выполняется не по всему набору данных сразу, а по одной выборке или небольшому батчу, что ускоряет вычисления и добавляет элемент случайности.
🧠 Механизм работы
SGD работает итеративно:
- Из обучающего набора случайным образом выбирается один объект или небольшой мини-батч.
- Вычисляется функция потерь для этой выборки.
- С помощью метода обратного распространения ошибки рассчитываются градиенты.
- Веса модели обновляются в направлении, уменьшающем ошибку, с учётом заданной скорости обучения (learning rate).
- Процесс повторяется для всех данных, образуя одну или несколько эпох.
Случайность выборки делает траекторию оптимизации «шумной», но это помогает избегать локальных минимумов.
🔑 Особенности
- Использует случайные подвыборки данных.
- Менее требователен к вычислительным ресурсам, чем полный градиентный спуск.
- Может колебаться около оптимума, но обычно сходится быстрее.
- Основа для многих современных модификаций (Adam, RMSProp, Adagrad).
📌 Примеры применения
- Обучение больших языковых моделей (LLM), где полный градиентный спуск невозможен из-за размера датасетов.
- Тренировка CNN для задач распознавания изображений.
- Использование в генеративных моделях, включая Stable Diffusion.
⚖️ Преимущества и недостатки
Преимущества:
- Значительно ускоряет обучение на больших наборах данных.
- Позволяет работать с потоками данных, не загружая весь датасет в память.
- Добавляет случайность, что помогает находить более общие решения.
Недостатки:
- Сходимость может быть неустойчивой и колеблющейся.
- Требует подбора learning rate и размера батча.
- Может останавливаться в «седловых точках» или плато.
🧠 Связанные понятия
- Gradient Descent — классический метод оптимизации с использованием всего набора данных.
- Mini-batch Gradient Descent — компромиссный вариант между полным и стохастическим методом.
- Learning Rate — коэффициент, определяющий шаг обновления весов.
- Adam Optimizer — улучшение SGD с адаптивной скоростью обучения и моментами.
- Momentum — техника, ускоряющая SGD за счёт учёта прошлых направлений обновлений.
💡 Вывод
SGD является фундаментальным методом оптимизации в глубоком обучении. Его стохастическая природа делает обучение более быстрым и гибким, что особенно важно для масштабных нейросетей и огромных датасетов. Он остаётся базовой точкой отсчёта для всех современных оптимизаторов.