Что считает этот калькулятор
Инструмент вычисляет гиперболический тангенс \(\tanh(x)\) и, что особенно важно, его первую производную \(\tanh'(x)\) при любом действительном значении \(x\). Дополнительно он выдаёт и вторую производную \(\tanh''(x)\). Гиперболический тангенс — это гладкая S-образная (сигмоидальная) функция, значения которой лежат строго в интервале от −1 до 1. Именно поэтому она так часто используется в качестве функции активации в нейронных сетях, а также в моделях из физики и инженерии.
Как пользоваться
Введите любое действительное число \(x\) и нажмите кнопку расчёта. Калькулятор один раз вычисляет \(\tanh(x)\), а затем на основе этого единственного значения выводит и первую, и вторую производную. Никаких единиц измерения переводить не нужно: \(x\) — безразмерное действительное число, и все результаты тоже безразмерны.
Разбор формулы
Гиперболический тангенс задаётся как $$\tanh(x) = \frac{e^{x} - e^{-x}}{e^{x} + e^{-x}}.$$ Его первая производная имеет изящную замкнутую форму: $$f'(x) = 1 - \tanh^{2}(x),$$ что эквивалентно \(\operatorname{sech}^{2}(x) = \frac{1}{\cosh^{2}(x)}\). Поскольку \(\tanh(x)\) лежит в интервале \((-1, 1)\), первая производная всегда находится в \((0, 1]\) и достигает максимума при \(x = 0\), где наклон равен ровно 1. Вторая производная равна $$f''(x) = -2\cdot\tanh(x)\cdot(1 - \tanh^{2}(x))$$ — это нечётная функция, обращающаяся в ноль при \(x = 0\).
Пример расчёта (x = 0,5)
$$\tanh(0{,}5) = \frac{1{,}6487212707 - 0{,}6065306597}{1{,}6487212707 + 0{,}6065306597} = 0{,}4621171573.$$ Тогда $$f'(0{,}5) = 1 - 0{,}4621171573^{2} = 0{,}7864477541,$$ а $$f''(0{,}5) = -2 \times 0{,}4621171573 \times 0{,}7864477541 = -0{,}7269278407.$$
Частые вопросы
Почему при больших x градиент стремится к нулю? По мере роста \(x\) функция \(\tanh\) насыщается, приближаясь к ±1, поэтому выражение \(1 - \tanh^{2}\) стремится к 0. Эта «проблема затухающего градиента» способна замедлять обучение глубоких нейросетей.
Может ли производная быть отрицательной? Нет. \(f'(x) = \operatorname{sech}^{2}(x)\) строго положительна при любом действительном \(x\), поэтому \(\tanh\) всегда монотонно возрастает.
Есть ли риск деления на ноль? Нет. Значение \(\cosh(x)\) не меньше 1 для любого действительного \(x\), так что \(\operatorname{sech}^{2}(x)\) всегда корректно определена.