предисловие
Сигмовидная функция (логистическая функция) — очень часто используемая функция активации в нейронных сетях.Давайте сегодня более подробно рассмотрим сигмовидную функцию.
функциональная форма
Изображение функции
Код
Код работает:Colab
import matplotlib.pyplot as plt
import numpy as np
import math
x = np.linspace(-10, 10, 100)
z = 1 / (1 + np.exp(-x))
plt.title("Sigmoid")
plt.plot(x, z)
plt.xlabel("x")
plt.ylabel("Sigmoid(X)")
plt.savefig("sigmoid.png")
plt.show()
plt.close()
природа и проблемы
Диапазон значений функции S(x) составляет (0, 1), что часто используется в задачах бинарной классификации.Функция гладкая и легко выводимая. Однако, как функция активации, объем вычислений велик.При обратном распространении, чтобы найти градиент ошибки, есть разделение в выводе, и градиент легко исчезает.Когда вход близок к положительной бесконечности или отрицательной бесконечности, градиент приближается к 0, и возникает дисперсия градиента (по мере увеличения количества слоев сети при использовании алгоритма обратного распространения для вычисления градиента от выходного слоя к первым нескольким слоям градиент совершенно очевидно исчезает, вызывая производную общих потерь функция веса первых нескольких слоев очень мала.Алгоритм градиентного спуска, первые несколько слоев веса изменяются очень медленно и не могут даже изучить полезные функции). Поскольку значение сигмовидной функции больше 0, обновление веса может быть обновлено только в одном направлении, что может повлиять на скорость сходимости.
Суммировать
Сигмовидная функция — очень часто используемая функция активации в нейронных сетях, она широко используется в логистической регрессии и имеет широкий спектр приложений в области статистики и машинного обучения.
- Первоначально опубликовано с:RAIS