Я пытаюсь понять оптимизацию градиентного спуска в алгоритмах ML (машинного обучения). Я понимаю , что есть стоимость функция, где цель состоит в том, чтобы свести к минимуму ошибки у - у . В случае , когда вес ш 1 , ж 2 оптимизируются , чтобы дать минимальную ошибку, и используются в частных производных, она изменяется как и на каждом шаге или это сочетание (например, в течение нескольких итераций только является изменилось, и когда больше не уменьшает ошибку, производная начинается с)? Приложение может быть моделью линейной регрессии, моделью логистической регрессии или алгоритмами повышения.
w1
, уменьшение вw2
зависимости от направления от частной производной для достижения локальных минимумов, и просто для подтверждения того, что алгоритм не всегда будет давать глобальные минимумы?w1
и /w2
или что достигается за счет скорости / сокращения обучения, в то время как частная производная обеспечивает только направление спуска?На каждой итерации алгоритм будет изменять все веса одновременно на основе вектора градиента. На самом деле градиент - это вектор. Длина градиента равна количеству весов в модели.
С другой стороны, существовало изменение по одному параметру за раз, и он называется алгоритмом с порядковыми координатами , который является типом алгоритма оптимизации без градиента . На практике это может работать не так хорошо, как алгоритм на основе градиента.
Вот интересный ответ по алгоритму без градиента
Можно ли обучить нейронную сеть без обратного распространения?
источник
Целью градиентного спуска является минимизация функции стоимости. Эта минимизация достигается путем корректировки весов для вашего случая w1 и w2. Вообще таких весов могло быть n .
Градиентный спуск выполняется следующим образом:
при обновлении весов, вес которых (W1 или W2) изменяется, полностью определяется градиентом. Все веса обновляются (некоторые веса могут не меняться в зависимости от градиента).
источник
sklearn
) или R, таких какcaret
? Это может быть указано пользователем только в созданной вручную функции градиентного спуска?Градиент приличный применяется к обоим
w1
w2
для каждой итерации, и для нее. Во время каждой итерации параметры обновляются в соответствии с градиентами. Они, вероятно, будут иметь другую частную производную.Проверьте здесь .
источник