Сигмоида
Сигмо́ида — это гладкая монотонная возрастающая нелинейная функция, имеющая форму буквы «S», которая часто применяется для «сглаживания» значений некоторой величины.
Часто под сигмоидой понимают логистическую функцию
- [math]\displaystyle{ \sigma(x) = \frac{1}{1 + e^{-x}}. }[/math]
Сигмоида ограничена двумя горизонтальными асимптотами, к которым стремится при стремлении аргумента к [math]\displaystyle{ \plusmn\infty. }[/math] В зависимости от соглашения, этими асимптотами могут быть y = ±1 (в [math]\displaystyle{ \plusmn\infty }[/math]) либо y = 0 в [math]\displaystyle{ -\infty }[/math] и y = +1 в [math]\displaystyle{ +\infty }[/math].
Производная сигмоиды представляет собой колоколообразную кривую с максимумом в нуле, асимптотически стремящуюся к нулю в [math]\displaystyle{ +\infty }[/math].
Семейство функций класса сигмоид
В семейство функций класса сигмоид входят такие функции, как арктангенс, гиперболический тангенс и другие функции подобного вида.
- Функция Ферми — Дирака (экспоненциальная сигмоида):
- [math]\displaystyle{ f(x)= \frac{1}{1+e^{-2 \alpha x}}, \quad \alpha \gt 0. }[/math]
- Рациональная сигмоида:
- [math]\displaystyle{ f(x)= \frac{x}{|x|+ \alpha}, \quad \alpha \gt 0. }[/math]
- [math]\displaystyle{ f(x)= \operatorname{arctg} x. }[/math]
- [math]\displaystyle{ f(x)= \operatorname{th} \frac{x}{\alpha} = \frac{ e^{ \frac{x}{\alpha} } - e^{ - \frac{x}{\alpha}} } {e^{ \frac{x}{\alpha} } + e^{ - \frac{x}{\alpha}}} . }[/math]
- Гладкая ступенька N-го порядка:
- [math]\displaystyle{ f(x) = \begin{cases} \left(\int_{0}^{1} \big(1 - u^2 \big)^N \ du \right)^{-1} \int_{0}^{x} \big(1 - u^2 \big)^N \ du \quad & |x| \le 1 \\ \sgn(x) & |x| \ge 1 \\ \end{cases} \, \quad N \ge 1 }[/math]
- Корневая сигмоида:
- [math]\displaystyle{ f(x) = \frac{x}{\sqrt{1+x^2}}. }[/math]
- [math]\displaystyle{ f(x) = (1+e^{-x})^{-1}. }[/math]
- [math]\displaystyle{ f(x) = (1+e^{-x})^{-\alpha}, \quad \alpha \gt 0. }[/math]
- [math]\displaystyle{ f(x) = \operatorname{erf}(x) = \frac{2}{\sqrt{\pi}}\int_0^x e^{-t^2} \, dt. }[/math]
- [math]\displaystyle{ f(x) = \operatorname{gd} x = \int_{0}^{x} \frac{1}{\cosh t} \, dt = \operatorname{arctg}(\operatorname{sh} x). }[/math]
Применение
Нейронные сети
Сигмоиды применяются в нейронных сетях в качестве функций активации. Они позволяют нейронам как усиливать слабые сигналы, так и не насыщаться от сильных сигналов[1].
В нейронных сетях часто используются сигмоиды, производные которых могут быть выражены через саму функцию. Это позволяет существенно сократить вычислительную сложность метода обратного распространения ошибки, сделав его применимым на практике:
- [math]\displaystyle{ \sigma'(x) = (1 + \sigma(x)) \cdot (1 - \sigma(x)) }[/math] — для гиперболического тангенса;
- [math]\displaystyle{ \sigma'(x) = \sigma(x) \cdot (1 - \sigma(x)) }[/math] — для логистической функции.
Логистическая регрессия
Логистическая функция [math]\displaystyle{ f(x) = \frac{1}{1 + e^{-x}} }[/math] используется в решении задач классификации с использованием логистической регрессии. Пусть решается задача классификации с двумя классами ([math]\displaystyle{ y=0 }[/math] и [math]\displaystyle{ y=1 }[/math], где [math]\displaystyle{ y }[/math] — переменная, указывающая класс объекта). Делается предположение о том, что вероятность принадлежности объекта к одному из классов выражается через значения признаков этого объекта [math]\displaystyle{ x_1, x_2, ..., x_n }[/math] (действительные числа):
- [math]\displaystyle{ \mathbb{P}\{y=1\mid x_1,\ldots,x_n\} = f(a_1 x_1 + \ldots + a_n x_n) = \frac{1}{1 + \exp(-a_1 x_1 - \ldots - a_n x_n)}, }[/math]
где [math]\displaystyle{ a_1, ..., a_n }[/math] — некоторые коэффициенты, требующие подбора, обычно, методом наибольшего правдоподобия.
Именно такая функция [math]\displaystyle{ f(x) }[/math] получается при использовании обобщённой линейной модели и предположения, что зависимая переменная [math]\displaystyle{ y }[/math] распределена по закону Бернулли.
См. также
Литература
- Mitchell, Tom M. Machine Learning. — WCB–McGraw–Hill, 1997. — ISBN 0-07-042807-7.
Примечания
- ↑ Функции активации в нейронных сетях . Дата обращения: 11 сентября 2014. Архивировано 24 июля 2014 года.
Ссылки
- Сравнение быстроты нескольких программных реализаций гиперболического тангенса
- Humphrys, Mark Continuous output, the sigmoid function (англ.).
Необходимо проверить качество перевода и исправить содержательные и стилистические ошибки. |