Как работает эта деталь в градиентном спуске? # cделать шаг градиента
def step(v,direction, step_size):
"""Двигаться с шаговым размером step_size в направлении от v"""
return [v_i + step_size*direction_i for v_i, direction_i in zip(v, direction)]
Как это работает?direction в нашем случае градиент.Зачем из v_i вычитать произведение частной производной и размера шага?
Вопрос 2: Зачем в стохастическом спуске растасовывают данные?

21 Авг 2019 в 06:15
148 +1
1
Ответы
1

Функция step() работает путем изменения каждого элемента вектора v на значение, пропорциональное соответствующему элементу вектора direction и размеру шага step_size. Это позволяет двигаться в направлении градиента с заданным размером шага.

Отнимая от v_i произведение direction_i на step_size, мы фактически сдвигаемся в направлении, противоположном градиенту, если direction_i положительный (то есть значение функции увеличивается) или в направлении градиента, если direction_i отрицательный (то есть значение функции уменьшается). Это помогает нам минимизировать функцию потерь или максимизировать функцию цели.

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

20 Апр в 13:21
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 548 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир