Что такое функция Softsign?
Softsign — это гладкая функция активации, которую применяют в нейронных сетях. Она задаётся формулой \(\phi(x) = \frac{x}{1 + |x|}\) и отображает любое вещественное число в открытый интервал (−1, 1) — почти как гиперболический тангенс, но выходит на насыщение заметно медленнее. Именно благодаря такому мягкому насыщению Softsign помогает ослабить проблему затухающих градиентов при обучении модели. Этот калькулятор выдаёт сразу два результата: значение функции \(\phi(x)\) и, как основной результат, её первую производную \(\phi'(x)\).
Как пользоваться калькулятором
Введите любое вещественное число x — положительное, отрицательное или ноль — и получите \(\phi'(x)\) (наклон кривой Softsign) вместе с \(\phi(x)\) (значение активации). Единиц измерения здесь нет: \(x\) — это просто безразмерное вещественное число. По умолчанию в поле подставлено значение \(x = 0{,}5\).
Разбираем формулу
Производная функции \(\phi(x) = \frac{x}{1 + |x|}\) равна $$\phi'(x) = \frac{1}{\left(1 + |x|\right)^{2}}$$ Поскольку знаменатель \((1 + |x|)\) всегда не меньше 1, производная всегда строго положительна и лежит в диапазоне (0, 1]. Своего максимума, равного 1, она достигает при \(x = 0\) — именно там кривая идёт круче всего. Чем больше \(|x|\), тем ближе \(\phi'(x)\) к нулю, что и отражает насыщение функции.
Пример расчёта
Возьмём \(x = 0{,}5\): тогда \(|x| = 0{,}5\), а значит \(1 + |x| = 1{,}5\). Значение функции составит $$\phi(0{,}5) = \frac{0{,}5}{1{,}5} = 0{,}333333\ldots$$ а производная — $$\phi'(0{,}5) = \frac{1}{1{,}5^{2}} = \frac{1}{2{,}25} = 0{,}444444\ldots$$ Таким образом, в точке \(x = 0{,}5\) кривая Softsign даёт выход около 0,3333 и наклон около 0,4444.
Частые вопросы
Дифференцируема ли Softsign во всех точках? Да. Хотя у \(|x|\) есть излом в точке \(x = 0\), левая и правая производные \(\phi\) в этой точке совпадают и обе равны 1. Поэтому функция дифференцируема и в нуле, и во всех остальных точках.
Может ли производная быть отрицательной? Нет. Выражение \(\phi'(x) = \frac{1}{\left(1 + |x|\right)^{2}}\) всегда положительно, ведь это единица, делённая на квадрат положительного числа.
Чем Softsign отличается от tanh? Обе функции насыщаются в пределах (−1, 1), но у Softsign «хвосты» полиномиальные (\(1/x^2\)), а у tanh — экспоненциальные. Поэтому Softsign выходит на насыщение медленнее и сохраняет чуть большие градиенты вдали от нуля.