Стохастический градиентный спуск (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 выборок для одного прямого прохода, чтобы вычислить совокупную ошибку, а затем скорректировать веса и смещения.
Я надеюсь, что эта статья даст вам общее представление о стохастическом градиентном спуске.
Если у вас есть какие-либо вопросы или вы обнаружите, что что-то искажено, пожалуйста, дайте мне знать.
Спасибо!