Давайте сделаем еще один шаг и изучим глубокую математику алгоритма градиентного спуска. Эта статья является второй частью моей предыдущей статьи, поэтому, если вы еще не читали ее, прочтите ее перед этой. Если вы знакомы с алгоритмом градиентного спуска, вы можете пропустить часть 1. вот ссылка части-1 (https://medium.com/mathematics-and-ai/mathematics-and-ai-optimisation-algorithms-gradient-descent-algorithm-781e350027e1)

В предыдущей статье мы видели, как он вычисляет значения, чтобы наша функция давала наименьшую ошибку. Теперь давайте рассмотрим алгоритм градиентного спуска более подробно.

Почему этот алгоритм имеет смысл?

Это наш последний пример, который мы видели. Итак, первый вопрос: почему он идет от А к Б? Что произойдет, если А будет в противоположной части (увеличение излечения), будет ли оно по-прежнему уменьшаться до В?

A := A— alpha * dAмы используем эту формулу в алгоритме градиентного спуска.

dA = df/dA = наклон функции

если мы начнем с точки A, то наклон в этой точке будет отрицательным, поэтому dA будет отрицательным, а A := A+alpha * (dA), поэтому A будет двигаться в прямом направлении, если мы начнем с точки B, его наклон будет положительным B:= B-alpha*dB уменьшится и снова сдвинется к точке минимума.

Когда он перестанет двигаться?

Если dA или dB будут равны нулю или, другими словами, когда мы достигнем любой оптимальной точки, A или B перестанут двигаться, и это будет нашим оптимальным решением.

Как альфа-канал может повлиять на алгоритм?

Что делать, если альфа очень большая? как альфа = 80

Если альфа очень большая, то поведение будет очень необычным. Нашим функциям придет время поговорить некоторое время разнообразно. Оно может не соответствовать оптимальному значению.

Что делать, если альфа слишком мала? альфа = 0,00001

Если альфа очень маленькая, она будет общаться очень медленно. Разговор в оптимальной точке может занять пару минут.

Таким образом, производительность алгоритма градиентного спуска в основном зависит от значения альфа. Наиболее распространенное значение альфа — 0,1, 1, 0,01, 0,05. Вы можете установить эти значения.

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

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

Вы можете поместить значения w и b в уравнение линии, чтобы получить более точный прогноз. Y = ш * х + б

J — наша функция ошибок, которую часто называют функцией стоимости.

Надеюсь, вы понимаете эти основные концепции, которые мы будем реализовывать в алгоритмах машинного обучения дальше. Я буду продолжать писать новые статьи каждый день. Вы можете подписаться на мои новые статьи. Математика и искусственный интеллект – это моя коллекция, куда я загружаю статьи. Так что следите за этой страницей также. Если эта статья поможет вам понять алгоритм градиентного спуска, дайте хлопки. Спасибо…..