Стохастический градиентный спуск (SGD)

Стохастический градиентный спуск отличается от градиентного спуска тем, что он обновляет параметры или гиперпараметры. В SGD параметры обновляются после каждой выборки, тогда как в случае GD они обновляются после всего набора данных (так же, как одна эпоха).

В градиентном спуске веса и смещения обновляются в конце каждой эпохи, в то время как в SGD веса и смещения обновляются после обработки случайно выбранной выборки в пределах эпохи.

Пример

Возьмем пример прогнозирования цены дома.

Модель ML будет выглядеть так

Шаг 1. При запуске 1-й эпохи выберите случайную выборку и рассчитайтепрогнозируемое значение и ошибка.

Примечание. В GD мы рассчитываем MSE перед обновлением весов и смещений, поскольку GD рассматривает весь набор данных перед обновлением весов и смещений.

Шаг 2. Рассчитайте новые веса и предвзятости.

2.1:Расчет уклона

Наклон — это производная функции стоимости по весу или смещению.

2.2:Вычисление шага

Сообщает GD направление для достижения локального минимума.

2.3: рассчитать новые веса и смещения

Получив Наклон и Шаг, мы рассчитаем новые значения весов и смещения.

Шаг 3.обратное распространение теперь будет обновлять веса и смещения с помощью этих новых значений.

Шаг 4. Теперь выберите другую случайную выборку и рассчитайте ошибку.

Повторите процесс. Как только мы достигнем конца набора данных, это будет конец 1-й эпохи.

Шаг 5. Повторите описанный выше процесс для оставшихся эпох.

В конце всего обучения Функция стоимости или ошибка будет минимальной. Вот как SGD минимизирует ошибку или Функция стоимости.

Мини-пакетный градиентный спуск

Мини-партия аналогична SGD, но в этом случае мы берем партию образцов вместо случайного выбора.

Например, если у нас есть 20 обучающих выборок, мы будем использовать 5 выборок для одного прямого прохода, чтобы вычислить совокупную ошибку, а затем скорректировать веса и смещения.

Я надеюсь, что эта статья даст вам общее представление о стохастическом градиентном спуске.

Если у вас есть какие-либо вопросы или вы обнаружите, что что-то искажено, пожалуйста, дайте мне знать.

Спасибо!