глоссарий

Stochastic gradient descent

Stochastic gradient descent

Стохастический градиентный спуск — это метод обучения нейронных сетей, который позволяет им «додумывать» ответы на огромных массивах данных. Он не просматривает все примеры, а двигается к цели мелкими шагами, подстраиваясь под каждый новый случай.

Современный ИИ был бы невозможен без этого алгоритма. Любая большая языковая модель или система распознавания образов использует его, чтобы подогнать свои внутренние параметры под данные. До его появления тренировать сети на миллионах изображений было слишком медленно и дорого, поэтому эта технология стала катализатором всего бума искусственного интеллекта.

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

Представьте, что вы учите ребёнка отличать кошек от собак. Вместо того чтобы показывать ему сто фотографий сразу и потом объяснять ошибки, вы показываете одно фото. Если он ошибся, вы тут же говорите: «Это кот, запомни». Затем берёте следующее фото. Так, шаг за шагом, ребёнок набирается опыта. Именно так действует алгоритм: быстро реагирует на каждый пример, ошибаясь и тут же исправляясь, пока суммарная ошибка не станет минимальной.

Таким образом, стохастический градиентный спуск — это искусство разумного компромисса между точностью вычислений и скоростью. Вы жертвуете «идеальной математикой» ради практической скорости. Именно этот компромисс позволяет современным машинам учиться на объёмах данных, которые ещё десять лет назад казались непреодолимыми, и делает его одним из важнейших понятий современного ИИ.