🔴 Сложный ⏱️ 60 минут

Производные элементарных функций

📋 Содержание урока

Производные элементарных функций 📐

Открой исходники любого фреймворка для глубокого обучения и найди файл, где определены операции автодифференцирования. Там будет длинный список: у sin градиент cos, у exp градиент exp, у log градиент 1/x, у tanh градиент 1 - tanh^2. Сотни тысяч строк вокруг — это графы вычислений, планировщики, ядра для видеокарт, а вот эти двадцать строк — фундамент. Всё остальное библиотека умеет выводить из них: сумму, произведение, частное и композицию она разбирает по правилам из уроков 136 и 137. Но эти двадцать базовых формул выводить не из чего — они должны быть посчитаны вручную, через предел, один раз и навсегда.

Именно этим мы сегодня и займёмся. В уроке 133 мы определили производную как предел отношения приращений, в 136 научились дифференцировать суммы, произведения и частные, в 137 — композиции. Все эти правила — конструктор: они говорят, как собрать производную сложного выражения из производных кусочков. А кусочки-то откуда? Пока у нас есть только степень $x^n$ — и на ней далеко не уедешь. Ни один сигнал, ни одна вероятность, ни одна функция активации не выражается через многочлены.

Давай разберёмся, откуда берутся оставшиеся кирпичи. Мы честно, через предел, выведем производные синуса и косинуса — и увидим, что весь вывод держится на первом замечательном пределе из урока 131 и формуле преобразования разности синусов в произведение из урока 100. Потом разберёмся с экспонентой: почему из всего семейства $a^x$ природа выделяет именно $e^x$, и почему эта функция равна своей производной. Потом — логарифм, обратные тригонометрические функции, сводная таблица. И, наконец, приём под названием логарифмическое дифференцирование, который берёт производные там, где обычные правила бессильны, — например у функции $x^x$.

Финал урока — целиком про машинное обучение. Мы выведем производную сигмоиды и увидим, откуда берётся её знаменитый максимум $0{,}25$ и почему из-за него глубокие сети до 2011 года не обучались. Разберём, почему у ReLU производная — просто ступенька, и почему это оказалось спасением. И посчитаем самый красивый градиент во всём ML: производную связки softmax + кросс-энтропия, которая после всех сокращений превращается в лаконичное $\hat y - y$.

🎯 Ты узнаешь:

  • Как вывести $(\sin x)' = \cos x$ и $(\cos x)' = -\sin x$ из первого замечательного предела — без единого «поверь на слово»
  • Почему $(e^x)' = e^x$, и что именно этим свойством определяется число $e$
  • Как из производной экспоненты за одну строчку получить $(\ln x)' = \frac1x$, $(a^x)' = a^x\ln a$ и $(\log_a x)' = \frac{1}{x\ln a}$
  • Как дифференцировать обратные функции — арксинус, арккосинус, арктангенс
  • Что такое логарифмическое дифференцирование и как оно берёт производную от $x^x$
  • Почему $\sigma' = \sigma(1-\sigma)$, откуда взялось число $0{,}25$ и как оно убивало градиенты в глубоких сетях
  • Почему производная связки softmax + кросс-энтропия равна просто $\hat y - y$, и почему logsumexp не переполняется

История: откуда это взялось?

Первые производные тригонометрических функций появились не в трудах Ньютона и Лейбница, а на пятьсот лет раньше — в Индии. Астрономы школы Кералы, и прежде всего Мадхава из Сангамаграмы (около 1350–1425 годов), считали таблицы синусов для навигации и предсказания затмений. Чтобы уточнять значения между узлами таблицы, они вывели ряды, которые сегодня мы называем рядами Тейлора для синуса и косинуса, и знали соотношение, эквивалентное $\Delta \sin \theta \approx \cos\theta \cdot \Delta\theta$. У них не было понятия предела и не было символа производной — но численно они работали ровно с той формулой, которую мы сегодня выведем.

В Европе эти формулы собрал воедино Исаак Барроу — учитель Ньютона, занимавший в Кембридже Лукасовскую кафедру до того, как уступил её ученику. В «Геометрических лекциях» 1670 года Барроу геометрически находит касательные к синусоиде и к логарифмической кривой. Через несколько лет Лейбниц вводит удобные обозначения $dy/dx$, и в его руках вычисление производных превращается из геометрического искусства в алгебраическую рутину: он публикует в 1684 году статью с правилами дифференцирования, а чуть позже — с формулами для синуса, косинуса и логарифма. Именно лейбницев формализм победил: мы до сих пор пишем $\frac{d}{dx}$, а не ньютоновские точки над буквами.

Отдельная линия — число $e$. Якоб Бернулли наткнулся на предел $\left(1+\frac1n\right)^n$ в 1683 году, разбирая задачу про непрерывное начисление процентов, но не понял, что за число получил, — знал только, что оно между 2 и 3. Имя и роль числу дал Эйлер в 1730-х: он обозначил его буквой $e$, посчитал 18 знаков после запятой и, главное, сформулировал то свойство, ради которого мы им пользуемся, — экспонента $e^x$ совпадает со своей производной. Мы разбирали само число $e$ в уроке 112, а предел, задающий его, — в уроке 129. Сегодня оба этих сюжета сойдутся в одну формулу.

Мостик в сегодня: когда в 1986 году Румельхарт, Хинтон и Уильямс популяризировали обратное распространение ошибки, они использовали в качестве активации сигмоиду. Причина была прагматична — у сигмоиды производная выражается через саму сигмоиду, а значит, при обратном проходе не надо ничего пересчитывать заново, достаточно взять сохранённое значение с прямого прохода. Это соображение производительности продержалось четверть века и стоило области нескольких лет пробуксовки: как раз из-за числа $0{,}25$, которое мы сегодня выведем.


Синус и косинус: вывод через первый замечательный предел

Интуиция: колесо обозрения

Представь, что ты сидишь в кабинке колеса обозрения радиуса 1, которое крутится с постоянной угловой скоростью. Твоя высота над центром — это $\sin t$, а горизонтальное отклонение от центра — $\cos t$. Теперь вопрос: с какой скоростью меняется твоя высота?

В нижней точке колеса ($t = -\frac{\pi}{2}$) кабинка идёт почти вертикально вверх — высота меняется максимально быстро. На уровне центра справа ($t = 0$) кабинка тоже движется вверх с полной скоростью. А в самой верхней точке ($t = \frac{\pi}{2}$) кабинка на мгновение движется чисто горизонтально — высота не меняется вовсе, скорость её изменения равна нулю. Сравни это с графиком косинуса: $\cos 0 = 1$ — максимум, $\cos\frac{\pi}{2} = 0$ — ноль. Совпадение? Нет: скорость изменения высоты и есть косинус. И такое же рассуждение для горизонтальной координаты даст $-\sin t$ — со знаком минус, потому что в правой половине круга горизонтальное отклонение убывает.

Это красивая картинка, но картинка — не доказательство. Давай посчитаем строго.

Вывод формулы $(\sin x)' = \cos x$

Берём определение производной из урока 133:

$$(\sin x)' = \lim_{h \to 0} \frac{\sin(x+h) - \sin x}{h}.$$

Числитель — разность синусов. В уроке 100 мы получили формулу преобразования разности в произведение:

$$\sin A - \sin B = 2 \cos\frac{A+B}{2}\,\sin\frac{A-B}{2}.$$

Подставляем $A = x+h$, $B = x$. Тогда $\frac{A+B}{2} = x + \frac{h}{2}$, а $\frac{A-B}{2} = \frac{h}{2}$:

$$\sin(x+h) - \sin x = 2\cos\!\left(x + \frac{h}{2}\right)\sin\frac{h}{2}.$$

Делим на $h$ и хитро группируем — двойку в знаменателе отдаём внутрь:

$$\frac{\sin(x+h) - \sin x}{h} = \cos\!\left(x + \frac{h}{2}\right) \cdot \frac{\sin\frac{h}{2}}{\frac{h}{2}}.$$

Смотри, что получилось. Второй множитель — это в точности $\frac{\sin u}{u}$ при $u = \frac{h}{2}$. Когда $h \to 0$, то и $u \to 0$, и по первому замечательному пределу из урока 131 этот множитель стремится к единице. Первый множитель — косинус, а косинус непрерывен (урок 132), поэтому $\cos\left(x+\frac{h}{2}\right) \to \cos x$. Произведение пределов равно пределу произведения:

$$(\sin x)' = \cos x \cdot 1 = \cos x.$$

Готово. Вся конструкция держится ровно на двух вещах: формуле разности из урока 100 и замечательном пределе из урока 131.

Вывод формулы $(\cos x)' = -\sin x$

Механика та же, только формула другая:

$$\cos A - \cos B = -2\sin\frac{A+B}{2}\,\sin\frac{A-B}{2}.$$

Подставляем те же $A = x+h$, $B = x$:

$$\frac{\cos(x+h)-\cos x}{h} = \frac{-2\sin\left(x+\frac h2\right)\sin\frac h2}{h} = -\sin\!\left(x+\frac{h}{2}\right)\cdot\frac{\sin\frac h2}{\frac h2}.$$

Переходим к пределу при $h \to 0$: второй множитель снова даёт единицу, первый стремится к $-\sin x$. Итого:

$$(\cos x)' = -\sin x.$$

Обрати внимание на минус — он появился не «из ниоткуда», а из формулы преобразования разности косинусов, где стоит знак минус перед двойкой. Это самое частое место, где теряют знак.

Определение (базовые тригонометрические производные): Для любого действительного $x$ справедливо

$$(\sin x)' = \cos x, \qquad (\cos x)' = -\sin x.$$

Здесь $x$ — угол в радианах. В градусах формулы выглядят иначе.

Три примера

Пример 1 (простой). Найди производную $f(x) = 3\sin x - 2\cos x$.

По правилам из урока 136 производная линейной комбинации — линейная комбинация производных:

$$f'(x) = 3(\sin x)' - 2(\cos x)' = 3\cos x - 2(-\sin x) = 3\cos x + 2\sin x.$$

Проверим в точке $x = 0$: $f'(0) = 3\cdot 1 + 2 \cdot 0 = 3$. Сама функция около нуля: $f(0) = -2$, $f(0{,}01) \approx 3\cdot 0{,}01 - 2\cdot 0{,}99995 = 0{,}03 - 1{,}9999 = -1{,}9699$. Приращение $0{,}0301$ на шаге $0{,}01$ — скорость примерно $3{,}01$. Сходится ✅

Пример 2 (средний). Найди производную $g(x) = x^2 \cos x$.

Тут работает правило произведения из урока 136: $(uv)' = u'v + uv'$. Берём $u = x^2$, $v = \cos x$:

$$g'(x) = 2x\cos x + x^2 \cdot (-\sin x) = 2x\cos x - x^2\sin x.$$

Посчитаем в точке $x = \pi$: $g'(\pi) = 2\pi\cdot(-1) - \pi^2 \cdot 0 = -2\pi \approx -6{,}283$.

Пример 3 (сложный). Найди производную $h(x) = \sin(\cos x)$.

Композиция — работает цепное правило из урока 137. Внешняя функция $\sin(\cdot)$, внутренняя $\cos x$:

$$h'(x) = \cos(\cos x)\cdot(\cos x)' = -\sin x \cdot \cos(\cos x).$$

Обрати внимание на порядок: производная внешней функции берётся в точке, равной значению внутренней, то есть $\cos(\cos x)$, а не $\cos x$. Это ошибка номер один при работе с цепным правилом.

Почему это важно

Синус и косинус — это математический язык всего периодического. Сезонность в продажах, суточные ритмы нагрузки на сервер, звуковая волна, электрический ток, вращение робота-манипулятора. Как только ты хочешь подогнать параметры периодической модели под данные — например, подобрать амплитуду и фазу сезонной компоненты во временном ряду, — тебе нужен градиент функции потерь по этим параметрам, а значит, производные синуса и косинуса. В современных нейросетях они всплывают в самом неожиданном месте: позиционные кодировки трансформеров построены на $\sin(\omega_k t)$ и $\cos(\omega_k t)$, а модный класс сетей SIREN использует синус прямо как функцию активации — как раз потому, что производная синуса это снова синус со сдвигом, и она не затухает с глубиной.


Тангенс и котангенс: работа правила частного

Интуиция

Тангенс — это отношение синуса к косинусу, то есть «насколько вертикальная составляющая обгоняет горизонтальную». У колеса обозрения около верхней точки горизонтальная составляющая обнуляется — и отношение улетает в бесконечность. Логично ожидать, что и скорость роста тангенса около $\frac{\pi}{2}$ будет бешеной. Проверим формулой.

Вывод

Пишем $\tan x = \frac{\sin x}{\cos x}$ и применяем правило частного из урока 136: $\left(\frac{u}{v}\right)' = \frac{u'v - uv'}{v^2}$.

$$(\tan x)' = \frac{(\sin x)'\cos x - \sin x(\cos x)'}{\cos^2 x} = \frac{\cos x \cdot \cos x - \sin x\cdot(-\sin x)}{\cos^2 x} = \frac{\cos^2 x + \sin^2 x}{\cos^2 x}.$$

В числителе — основное тригонометрическое тождество (урок 95), то есть просто единица:

$$(\tan x)' = \frac{1}{\cos^2 x} = 1 + \tan^2 x.$$

Вторая форма получается делением числителя и знаменателя на $\cos^2 x$ — обе записи одинаково законны, и вторая часто удобнее, если значение тангенса уже известно.

Для котангенса $\cot x = \frac{\cos x}{\sin x}$ считаем так же:

$$(\cot x)' = \frac{-\sin x \cdot \sin x - \cos x\cdot\cos x}{\sin^2 x} = \frac{-(\sin^2 x + \cos^2 x)}{\sin^2 x} = -\frac{1}{\sin^2 x}.$$

Определение: При $\cos x \neq 0$ выполняется $(\tan x)' = \dfrac{1}{\cos^2 x} = 1 + \tan^2 x$; при $\sin x \neq 0$ выполняется $(\cot x)' = -\dfrac{1}{\sin^2 x}$.

Заметь: производная тангенса всегда строго положительна, а котангенса — всегда строго отрицательна. Это не случайность, а следствие того, как ведут себя эти функции на своих промежутках.

Три примера

Пример 1 (простой). Найди $f'\left(\frac{\pi}{4}\right)$ для $f(x) = \tan x$.

$$f'\!\left(\frac{\pi}{4}\right) = \frac{1}{\cos^2\frac{\pi}{4}} = \frac{1}{\left(\frac{\sqrt2}{2}\right)^2} = \frac{1}{\frac12} = 2.$$

То есть в точке $\frac{\pi}{4}$ тангенс растёт вдвое быстрее, чем аргумент.

Пример 2 (средний). Найди производную $g(x) = x\tan x$.

Правило произведения: $g'(x) = 1\cdot\tan x + x\cdot\frac{1}{\cos^2 x} = \tan x + \frac{x}{\cos^2 x}$.

Пример 3 (сложный). Найди производную $h(x) = \tan(x^2 + 1)$ и вычисли её при $x = 0$.

Цепное правило: $h'(x) = \frac{1}{\cos^2(x^2+1)}\cdot 2x = \frac{2x}{\cos^2(x^2+1)}$.

При $x = 0$ числитель равен нулю, значит $h'(0) = 0$ — и это несмотря на то, что $\frac{1}{\cos^2 1} \approx 3{,}426$ вполне велико. Внутренняя производная обнулила всё выражение.

Почему это важно

Формула $(\tan x)' = 1 + \tan^2 x$ — образец того, что мы будем встречать снова и снова: производная функции выражается через саму функцию. Такие формулы обожают вычислители, потому что при обратном проходе не нужно ничего считать заново — значение уже лежит в памяти с прямого прохода. Ровно по этой причине в нейросетях прижились сигмоида и tanh: у них производные тоже выражаются через них самих. Кстати, гиперболический тангенс $\tanh$, с которым мы встретимся ниже, — близкий родственник обычного тангенса и обладает точно таким же свойством: $\tanh' = 1 - \tanh^2$.


Экспонента: функция, равная своей производной

Интуиция: проценты, начисляемые непрерывно

Представь вклад, на котором каждый момент времени начисляется процент, пропорциональный текущей сумме. Чем больше на счету — тем быстрее растёт. Формально: скорость роста равна самой величине, $f' = f$. Какая функция обладает этим свойством?

Точно не многочлен: у $x^5$ производная $5x^4$ — другая функция. Не синус. Похоже, что нужно что-то показательное: у $a^x$ при увеличении $x$ на единицу значение умножается на $a$, и «прирост» тоже умножается на $a$ — то есть прирост пропорционален значению. Осталось подобрать основание $a$ так, чтобы коэффициент пропорциональности стал ровно единицей. Вот это подобранное основание и есть число $e$.

Вывод: где прячется число $e$

Считаем производную $a^x$ по определению:

$$(a^x)' = \lim_{h\to 0}\frac{a^{x+h}-a^x}{h} = \lim_{h\to 0}\frac{a^x\left(a^h - 1\right)}{h} = a^x \cdot \lim_{h\to 0}\frac{a^h-1}{h}.$$

Множитель $a^x$ вынесся из-под предела, потому что от $h$ не зависит. Осталось разобраться с числом

$$M(a) = \lim_{h\to 0}\frac{a^h - 1}{h}.$$

Это просто какое-то число, зависящее только от основания $a$. Заметь, что $M(a) = (a^x)'$ при $x = 0$ — то есть это наклон касательной к графику $a^x$ в точке пересечения с осью $y$.

Посчитаем $M(a)$ честно. Сделаем замену $t = a^h - 1$, тогда $a^h = 1 + t$, откуда $h = \log_a(1+t)$; при $h\to 0$ и $t \to 0$. Получаем:

$$M(a) = \lim_{t\to 0}\frac{t}{\log_a(1+t)} = \lim_{t\to 0}\frac{1}{\frac1t\log_a(1+t)} = \lim_{t\to 0}\frac{1}{\log_a(1+t)^{1/t}}.$$

А выражение $(1+t)^{1/t}$ при $t\to 0$ — это ровно тот самый предел, задающий число $e$ (уроки 112 и 129, где мы разбирали $\left(1+\frac1n\right)^n$; здесь $t = \frac1n$). Значит, $(1+t)^{1/t} \to e$, и

$$M(a) = \frac{1}{\log_a e} = \ln a,$$

где последний переход — по формуле перехода к новому основанию из урока 117: $\log_a e = \frac{1}{\ln a}$.

Итого:

$$(a^x)' = a^x \ln a.$$

А теперь главное. Подставим $a = e$: тогда $\ln e = 1$, и

$$(e^x)' = e^x.$$

Вот оно. Экспонента — единственная (с точностью до множителя) функция, равная своей производной. И заметь, что число $e$ здесь возникло не как «красивая константа из справочника», а как решение задачи: найти основание, при котором $M(a) = 1$.

Определение: Для любого $a > 0$, $a \neq 1$ и любого $x$ выполняется $(a^x)' = a^x\ln a$. В частности, при $a = e$ получаем $(e^x)' = e^x$: экспонента совпадает со своей производной.

Три примера

Пример 1 (простой). Найди производную $f(x) = 5e^x$ и её значение при $x = 0$.

$f'(x) = 5e^x$, значит $f'(0) = 5e^0 = 5$. Функция в нуле равна $5$, и скорость её роста тоже $5$ — так и должно быть у экспоненты.

Пример 2 (средний). Найди производную $g(x) = 2^x + 3^x$ и её значение при $x = 1$.

$$g'(x) = 2^x\ln 2 + 3^x\ln 3.$$

При $x = 1$: $g'(1) = 2\ln 2 + 3\ln 3 \approx 2\cdot0{,}6931 + 3\cdot 1{,}0986 = 1{,}3863 + 3{,}2958 = 4{,}6821$.

Пример 3 (сложный). Найди производную $h(x) = e^{-x^2/2}$ — это ядро нормального распределения.

Цепное правило: внешняя $e^{u}$, внутренняя $u = -\frac{x^2}{2}$, $u' = -x$.

$$h'(x) = e^{-x^2/2}\cdot(-x) = -x\,e^{-x^2/2}.$$

Проверим смысл: при $x = 0$ производная равна нулю — это вершина «колокола». При $x > 0$ производная отрицательна — кривая падает. При $x<0$ положительна — кривая растёт. Всё как на картинке гауссианы ✅

Почему это важно

Экспонента — это функция, описывающая любой процесс, где скорость изменения пропорциональна текущему количеству: рост популяции, радиоактивный распад, зарядка конденсатора, распространение инфекции на ранней стадии, экспоненциальное затухание learning rate. В ML экспонента вездесуща: она внутри softmax, внутри гауссовых ядер, внутри экспоненциальных скользящих средних Adam. И каждый раз, когда фреймворк считает градиент через exp, он использует то, что мы только что вывели: производная — это значение самой функции, уже посчитанное на прямом проходе. Дешевле не бывает.


Логарифм: $(\ln x)' = \dfrac{1}{x}$

Интуиция: обратная функция «переворачивает» наклон

Логарифм — обратная функция к экспоненте (урок 116). Графики обратных функций симметричны относительно прямой $y=x$, а при такой симметрии касательная с наклоном $k$ переходит в касательную с наклоном $\frac{1}{k}$. Экспонента в точке, где её значение равно $x$, имеет наклон $x$ (потому что $(e^t)' = e^t$). Значит, логарифм в точке $x$ имеет наклон $\frac1x$. Красиво — и это же рассуждение легко сделать строгим.

Вывод через цепное правило

Пусть $y = \ln x$. По определению логарифма $e^{y} = x$. Продифференцируем обе части этого равенства по $x$. Слева стоит композиция: внешняя функция $e^{(\cdot)}$, внутренняя $y(x)$ — работает цепное правило из урока 137:

$$\left(e^{y}\right)' = e^{y}\cdot y', \qquad (x)' = 1.$$

Приравниваем: $e^{y}\cdot y' = 1$. Но $e^y = x$, поэтому

$$x \cdot y' = 1 \quad\Longrightarrow\quad y' = \frac{1}{x}, \qquad x > 0.$$

Этот приём — «продифференцировать тождество, связывающее функцию с обратной» — универсален. Мы им же возьмём производные арксинуса и арктангенса.

Тот же результат напрямую через предел

Для полноты — вывод из определения, без ссылок на экспоненту:

$$(\ln x)' = \lim_{h\to0}\frac{\ln(x+h)-\ln x}{h} = \lim_{h\to0}\frac1h\ln\frac{x+h}{x} = \lim_{h\to0}\frac1h\ln\left(1+\frac hx\right).$$

Внесём $\frac1h$ под знак логарифма как показатель степени (свойство логарифмов, урок 117) и сделаем замену $t = \frac hx$, то есть $h = tx$:

$$= \lim_{t\to0}\ln\left(1+t\right)^{\frac{1}{tx}} = \lim_{t\to0}\frac1x\ln\left(1+t\right)^{\frac1t} = \frac1x\ln e = \frac1x.$$

Снова тот же предел $(1+t)^{1/t}\to e$. Он у нас сегодня главный рабочий инструмент.

Логарифм по произвольному основанию

Тут вообще ничего выводить не надо: по формуле перехода к новому основанию $\log_a x = \frac{\ln x}{\ln a}$, а $\ln a$ — константа. Выносим её:

$$(\log_a x)' = \frac{1}{\ln a}\cdot(\ln x)' = \frac{1}{x\ln a}.$$

Определение: При $x > 0$ выполняется $(\ln x)' = \dfrac1x$ и $(\log_a x)' = \dfrac{1}{x\ln a}$ (для $a>0$, $a\neq1$).

Иногда встречается более общая форма $(\ln|x|)' = \frac1x$, справедливая при всех $x\neq0$: при отрицательных $x$ внутри модуля стоит $-x$, цепное правило даёт $\frac{1}{-x}\cdot(-1) = \frac1x$ — тот же ответ.

Три примера

Пример 1 (простой). Найди производную $f(x) = 3\ln x - \log_2 x$.

$$f'(x) = \frac{3}{x} - \frac{1}{x\ln 2} = \frac1x\left(3 - \frac{1}{\ln 2}\right) \approx \frac{1}{x}\left(3 - 1{,}4427\right) = \frac{1{,}5573}{x}.$$

Пример 2 (средний). Найди производную $g(x) = x\ln x - x$.

Правило произведения для первого слагаемого:

$$g'(x) = \left(1\cdot\ln x + x\cdot\frac1x\right) - 1 = \ln x + 1 - 1 = \ln x.$$

Изящно: производная от $x\ln x - x$ равна просто $\ln x$. Эту функцию мы ещё встретим — она стоит в формуле Стирлинга и в определении энтропии.

Пример 3 (сложный). Найди производную $h(x) = \ln\left(\frac{x}{1-x}\right)$ при $0

Проще всего сначала расписать логарифм частного (урок 117): $h(x) = \ln x - \ln(1-x)$. Тогда

$$h'(x) = \frac1x - \frac{1}{1-x}\cdot(-1) = \frac1x + \frac{1}{1-x} = \frac{(1-x) + x}{x(1-x)} = \frac{1}{x(1-x)}.$$

Запомни этот ответ: $\frac{1}{x(1-x)}$. Ниже мы получим, что производная сигмоиды равна $\sigma(1-\sigma)$ — и это ровно обратная величина. Так и должно быть у взаимно обратных функций.

Почему это важно

Логарифм — главный «выпрямитель» в анализе данных: он превращает произведения в суммы, экспоненциальный рост — в линейный, а произведение вероятностей — в сумму логарифмов. Именно поэтому все функции потерь в вероятностном ML написаны через логарифм: перемножать десять тысяч чисел вида $0{,}001$ нельзя (получится машинный ноль), а складывать их логарифмы — можно. И как только ты пишешь log-loss, тебе нужен его градиент — то есть $\frac1x$, помноженное на цепочку внутренних производных. Так что формула $(\ln x)' = \frac1x$ — фактически самая часто вычисляемая производная в машинном обучении.


Обратные тригонометрические функции

Интуиция

Арксинус отвечает на вопрос: «какой угол даёт такой синус?» Когда синус близок к нулю, небольшое изменение синуса требует небольшого изменения угла — арксинус меняется плавно. Но когда синус подбирается к единице (угол близок к $\frac{\pi}{2}$), синус почти перестаёт меняться при изменении угла — а значит, обратной функции нужно менять угол очень резко, чтобы синус хоть чуть-чуть сдвинулся. Поэтому производная арксинуса должна взрываться на краях отрезка $[-1;1]$. Посмотрим, подтвердит ли это формула.

Вывод для арксинуса

Пусть $y = \arcsin x$, где $x\in(-1;1)$ и $y \in \left(-\frac\pi2;\frac\pi2\right)$ (урок 102). Тогда $\sin y = x$. Дифференцируем обе части по $x$ с цепным правилом:

$$\cos y\cdot y' = 1 \quad\Longrightarrow\quad y' = \frac{1}{\cos y}.$$

Осталось выразить $\cos y$ через $x$. Из основного тождества $\cos^2 y = 1 - \sin^2 y = 1 - x^2$, значит $\cos y = \pm\sqrt{1-x^2}$. Какой знак? На промежутке $\left(-\frac\pi2;\frac\pi2\right)$ косинус строго положителен — берём плюс:

$$(\arcsin x)' = \frac{1}{\sqrt{1-x^2}}, \qquad |x| < 1.$$

Интуиция подтвердилась: при $x\to\pm1$ знаменатель стремится к нулю, производная растёт неограниченно.

Арккосинус — почти бесплатно

Можно повторить всю выкладку, а можно вспомнить тождество $\arcsin x + \arccos x = \frac\pi2$ (урок 102). Отсюда $\arccos x = \frac\pi2 - \arcsin x$, и производная константы равна нулю:

$$(\arccos x)' = -\frac{1}{\sqrt{1-x^2}}, \qquad |x| < 1.$$

Ровно та же формула с минусом — потому что арккосинус убывает там, где арксинус растёт.

Арктангенс

Пусть $y = \arctan x$, $y\in\left(-\frac\pi2;\frac\pi2\right)$. Тогда $\tan y = x$, дифференцируем:

$$\frac{1}{\cos^2 y}\cdot y' = 1 \quad\Longrightarrow\quad y' = \cos^2 y.$$

Выразим через $x$. Мы получили выше, что $\frac{1}{\cos^2 y} = 1 + \tan^2 y = 1 + x^2$, откуда $\cos^2 y = \frac{1}{1+x^2}$:

$$(\arctan x)' = \frac{1}{1+x^2}, \qquad x \in \mathbb{R}.$$

Аналогично $(\operatorname{arcctg} x)' = -\frac{1}{1+x^2}$.

Определение: $(\arcsin x)' = \dfrac{1}{\sqrt{1-x^2}}$ и $(\arccos x)' = -\dfrac{1}{\sqrt{1-x^2}}$ при $|x|<1$; $(\arctan x)' = \dfrac{1}{1+x^2}$ и $(\operatorname{arcctg} x)' = -\dfrac{1}{1+x^2}$ при всех $x$.

Отдельно отметим красоту формулы арктангенса: производная трансцендентной функции оказалась рациональной. Ни корней, ни логарифмов — просто $\frac{1}{1+x^2}$. Эта неожиданность будет иметь далеко идущие последствия, но об этом — в разделе интересных фактов.

Три примера

Пример 1 (простой). Найди $(\arcsin x)'$ при $x = \frac12$.

$$\frac{1}{\sqrt{1 - \frac14}} = \frac{1}{\sqrt{\frac34}} = \frac{2}{\sqrt3} = \frac{2\sqrt3}{3}\approx 1{,}1547.$$

Пример 2 (средний). Найди производную $g(x) = \arctan(3x)$.

Цепное правило: $g'(x) = \frac{1}{1+(3x)^2}\cdot 3 = \frac{3}{1+9x^2}$.

Пример 3 (сложный). Найди производную $h(x) = x\arcsin x + \sqrt{1-x^2}$.

Первое слагаемое — произведение: $\arcsin x + \frac{x}{\sqrt{1-x^2}}$.

Второе — композиция: $\left(\left(1-x^2\right)^{1/2}\right)' = \frac12(1-x^2)^{-1/2}\cdot(-2x) = -\frac{x}{\sqrt{1-x^2}}$.

Складываем — второе слагаемое полностью съедает дробь из первого:

$$h'(x) = \arcsin x + \frac{x}{\sqrt{1-x^2}} - \frac{x}{\sqrt{1-x^2}} = \arcsin x.$$

Почему это важно

Арктангенс — это функция, которая аккуратно сжимает всю числовую прямую в отрезок $\left(-\frac\pi2;\frac\pi2\right)$. Он используется как «мягкий ограничитель» в робототехнике и управлении, как активация в некоторых архитектурах и как способ восстановить угол по координатам (atan2). Арксинус и арккосинус живут внутри метрики косинусного расстояния между эмбеддингами: когда ты считаешь угол между двумя векторами как $\arccos\frac{\langle u,v\rangle}{\|u\|\|v\|}$ и хочешь оптимизировать этот угол напрямую (как в лоссах семейства ArcFace для распознавания лиц), градиент тянет за собой ровно формулу $-\frac{1}{\sqrt{1-x^2}}$. И там же вылезает её слабое место: при почти сонаправленных векторах производная взрывается, поэтому в реальном коде аргумент арккосинуса принудительно зажимают в $[-1+\varepsilon;\,1-\varepsilon]$.


Логарифмическое дифференцирование

Интуиция: сначала упростить, потом дифференцировать

Есть два типа выражений, на которых обычные правила буксуют.

Первый — когда переменная стоит и в основании, и в показателе: $y = x^x$. Это не степенная функция (у степенной основание переменное, а показатель — константа: $x^5$) и не показательная (у показательной наоборот: $2^x$). Формула $(x^n)' = nx^{n-1}$ здесь незаконна, потому что $n$ не константа. Формула $(a^x)' = a^x\ln a$ тоже незаконна, потому что $a$ не константа. Правила кончились.

Второй — когда выражение представляет собой этажерку из произведений, дробей и корней:

$$y = \frac{(x+1)^3\sqrt{x-2}}{(x+5)^4}.$$

Формально сюда применимо правило частного плюс правило произведения плюс цепное правило. Практически — это полстраницы выкладок и почти гарантированная ошибка в знаке.

Спасение в обоих случаях одно и то же: логарифм. Он превращает степень в множитель, произведение — в сумму, дробь — в разность. То есть переводит выражение из мира, где дифференцировать тяжело, в мир, где дифференцировать легко.

Метод в три шага

Определение (логарифмическое дифференцирование): чтобы найти производную функции $y = y(x)$, принимающей положительные значения, логарифмируют обе части равенства, дифференцируют полученное тождество по $x$ с учётом того, что слева стоит композиция $\ln y(x)$, и выражают $y'$, домножив результат на $y$.

Разложим на шаги.

Шаг 1. Логарифмируем. Пишем $\ln y = \ln(\text{правая часть})$ и раскладываем правую часть по свойствам логарифмов из урока 117: логарифм произведения — сумма, логарифм частного — разность, логарифм степени — показатель наружу.

Шаг 2. Дифференцируем обе части по $x$. Справа — сумма простых слагаемых. Слева стоит $\ln y(x)$, то есть композиция: внешняя функция $\ln$, внутренняя $y(x)$. По цепному правилу из урока 137

$$\big(\ln y(x)\big)' = \frac{y'(x)}{y(x)}.$$

Это выражение $\frac{y'}{y}$ называют логарифмической производной. У неё есть самостоятельный смысл: это относительная скорость роста, «сколько процентов от текущего значения прибавляется в единицу времени».

Шаг 3. Домножаем на $y$. Из $\frac{y'}{y} = S(x)$ получаем $y' = y\cdot S(x)$, и вместо $y$ подставляем исходное выражение.

Про область определения: логарифм требует положительности. Если функция где-то отрицательна, логарифмируют модуль — $\ln|y|$, — и ничего не меняется, потому что $(\ln|y|)' = \frac{y'}{y}$ на обеих полуосях (мы это проверили в разделе про логарифм). Так что метод работает всюду, где $y \neq 0$.

Разбор: $y = x^x$

Функция определена при $x > 0$ и там положительна, так что модуль не нужен.

Шаг 1. Логарифмируем: $\ln y = \ln x^x = x\ln x$. Показатель ушёл вниз множителем — и вместо чудовища получилось произведение двух простейших функций.

Шаг 2. Дифференцируем обе части. Слева $\frac{y'}{y}$. Справа — правило произведения из урока 136:

$$(x\ln x)' = 1\cdot\ln x + x\cdot\frac1x = \ln x + 1.$$

Получаем тождество

$$\frac{y'}{y} = \ln x + 1.$$

Шаг 3. Домножаем на $y = x^x$:

$$\boxed{\;(x^x)' = x^x(\ln x + 1).\;}$$

Проверим правдоподобие численно в точке $x = 2$. Формула даёт $2^2(\ln 2 + 1) = 4\cdot 1{,}6931 = 6{,}7726$. Считаем численно: $2{,}001^{2{,}001} = e^{2{,}001\ln 2{,}001} = e^{2{,}001\cdot 0{,}693647} = e^{1{,}388036} = 4{,}00697$, а $1{,}999^{1{,}999} = e^{1{,}999\cdot 0{,}692647} = e^{1{,}384601} = 3{,}99323$. Центральная разность: $\frac{4{,}00697 - 3{,}99323}{0{,}002} = \frac{0{,}01374}{0{,}002} = 6{,}87$. С учётом грубости округления в промежуточных экспонентах — сходится ✅

Заодно отметим красивый факт: производная обращается в ноль при $\ln x = -1$, то есть при $x = \frac1e \approx 0{,}368$. Это точка минимума функции $x^x$, и её значение $\left(\frac1e\right)^{1/e} \approx 0{,}6922$. Кривая $x^x$ сначала падает, потом растёт — не самое очевидное поведение для функции, которую многие представляют себе просто «очень быстро растущей».

Общая формула для $y = u(x)^{v(x)}$

Проделаем то же самое в общем виде — и получим формулу, которую не надо будет выводить каждый раз. Пусть $u(x) > 0$.

$$\ln y = v\ln u \quad\Longrightarrow\quad \frac{y'}{y} = v'\ln u + v\cdot\frac{u'}{u}.$$

Домножаем:

$$\big(u^v\big)' = u^v\left(v'\ln u + \frac{v\,u'}{u}\right).$$

Полезно посмотреть, что она даёт в частных случаях. Если $v = n$ — константа, то $v' = 0$, и остаётся $u^n\cdot\frac{n u'}{u} = nu^{n-1}u'$ — обобщённое степенное правило из урока 137. Если $u = a$ — константа, то $u' = 0$, и остаётся $a^v\cdot v'\ln a$ — производная показательной функции в связке с цепным правилом. То есть общая формула включает в себя обе как крайние случаи, а в задачах с переменными и основанием, и показателем работают оба слагаемых сразу.

Второй способ на тот же случай — переписать степень через экспоненту: $u^v = e^{v\ln u}$, и дальше обычное цепное правило. Для $x^x$ это выглядит так: $x^x = e^{x\ln x}$, производная $e^{x\ln x}\cdot(\ln x + 1) = x^x(\ln x+1)$ — тот же ответ. Какой способ выбрать, дело вкуса; логарифмирование чуть короче, экспоненциальная запись чуть привычнее.

Разбор: громоздкая дробь

$$y = \frac{(x+1)^3\sqrt{x-2}}{(x+5)^4}.$$

Область определения задаёт корень: $x > 2$. Там все три скобки положительны, и функция положительна — снова без модулей.

Шаг 1. Логарифмируем и разносим по свойствам логарифма:

$$\ln y = 3\ln(x+1) + \frac12\ln(x-2) - 4\ln(x+5).$$

Обрати внимание, что произошло: этажерка из произведения, корня и дроби превратилась в сумму трёх логарифмов от линейных функций. Дифференцировать такое — работа на десять секунд.

Шаг 2. Дифференцируем. Каждое слагаемое — это $(\ln u)' = \frac{u'}{u}$, и у всех внутренних функций производная равна единице:

$$\frac{y'}{y} = \frac{3}{x+1} + \frac{1}{2(x-2)} - \frac{4}{x+5}.$$

Шаг 3. Домножаем на $y$:

$$y' = \frac{(x+1)^3\sqrt{x-2}}{(x+5)^4}\left(\frac{3}{x+1} + \frac{1}{2(x-2)} - \frac{4}{x+5}\right).$$

Ответ обычно так и оставляют — раскрывать скобки бессмысленно, читать станет только хуже. А если нужно значение в точке, подставляй числа прямо сюда.

Посчитаем при $x = 3$. Сама функция: $\frac{4^3\cdot\sqrt1}{8^4} = \frac{64}{4096} = 0{,}015625$. Скобка: $\frac34 + \frac12 - \frac48 = 0{,}75 + 0{,}5 - 0{,}5 = 0{,}75$. Итого $y'(3) = 0{,}015625\cdot 0{,}75 = 0{,}01171875$.

А теперь оцени, сколько сил сэкономлено. Прямой путь — правило частного, где в числителе стоит производная произведения $(x+1)^3\sqrt{x-2}$, то есть ещё одно правило произведения плюс цепное правило для корня, а потом всё это делится на $(x+5)^8$ и сокращается. Полстраницы против трёх строк.

Три примера

Пример 1 (простой). Найди производную $y = (\ln x)^x$ при $x>1$.

Логарифмируем: $\ln y = x\ln(\ln x)$. Дифференцируем правую часть по правилу произведения, второй множитель — композиция:

$$\big(x\ln(\ln x)\big)' = \ln(\ln x) + x\cdot\frac{1}{\ln x}\cdot\frac1x = \ln(\ln x) + \frac{1}{\ln x}.$$

Значит,

$$y' = (\ln x)^x\left(\ln(\ln x) + \frac{1}{\ln x}\right).$$

Пример 2 (средний). Найди производную $y = \sqrt[3]{\dfrac{x(x^2+1)}{x-4}}$ при $x>4$.

Кубический корень — это степень $\frac13$, и логарифм выносит её множителем перед всей скобкой:

$$\ln y = \frac13\Big(\ln x + \ln(x^2+1) - \ln(x-4)\Big).$$

Дифференцируем:

$$\frac{y'}{y} = \frac13\left(\frac1x + \frac{2x}{x^2+1} - \frac{1}{x-4}\right),$$$$y' = \frac{1}{3}\sqrt[3]{\frac{x(x^2+1)}{x-4}}\left(\frac1x + \frac{2x}{x^2+1} - \frac{1}{x-4}\right).$$

Пример 3 (сложный). Найди производную $y = x^{\sin x}$ при $x>0$ и вычисли $y'\!\left(\frac{\pi}{2}\right)$.

Здесь переменные и в основании, и в показателе — работает общая формула, но выведем напрямую. $\ln y = \sin x\cdot\ln x$, дифференцируем правую часть как произведение:

$$\frac{y'}{y} = \cos x\ln x + \frac{\sin x}{x} \quad\Longrightarrow\quad y' = x^{\sin x}\left(\cos x\ln x + \frac{\sin x}{x}\right).$$

При $x = \frac\pi2$: $\sin\frac\pi2 = 1$, $\cos\frac\pi2 = 0$, поэтому $y = \left(\frac\pi2\right)^1 = \frac\pi2$, а скобка равна $0\cdot\ln\frac\pi2 + \frac{1}{\pi/2} = \frac{2}{\pi}$. Итого

$$y'\!\left(\frac\pi2\right) = \frac{\pi}{2}\cdot\frac{2}{\pi} = 1.$$

Красивый ответ — ровно единица.

Почему это важно

Логарифмическая производная $\frac{y'}{y}$ — это не побочный продукт метода, а самостоятельная величина, которой пользуются повсюду, где важен относительный рост, а не абсолютный. Экономисту неинтересно, что выручка выросла на 3 миллиона; ему интересно, что она выросла на 4 %. Формально «темп прироста» — это и есть $\frac{y'}{y}$, то есть производная логарифма. Отсюда привычка аналитиков строить графики в логарифмическом масштабе: там постоянный процентный рост выглядит прямой линией, и наклон этой прямой читается напрямую.

В машинном обучении логарифмическая производная — сердце метода максимального правдоподобия. Правдоподобие выборки — это произведение вероятностей всех наблюдений, десятки тысяч множителей. Дифференцировать такое произведение по правилу произведения невозможно даже в теории, а перемножать его численно нельзя — получится машинный ноль. Оба препятствия снимаются одним движением: берут логарифм, произведение становится суммой, и градиент лог-правдоподобия считается послагаемо. Тот самый приём, который мы только что применили к дроби с корнем, лежит в основе обучения почти любой вероятностной модели. А в обучении с подкреплением есть даже отдельный трюк с именем — «log-derivative trick», $\nabla p = p\,\nabla\ln p$, — это ровно шаг 3 нашего метода, прочитанный в обратную сторону.


Сводная таблица производных

Всё, что мы вывели за урок, плюс формулы из уроков 133 и 137 — в одном месте. Левая колонка — «в чистом виде», когда аргумент это просто $x$. Правая — в связке с цепным правилом, где $u = u(x)$ произвольная дифференцируемая функция. Правая колонка получается из левой домножением на $u'$ и подстановкой $u$ вместо $x$ — именно так работает урок 137.

Функция Производная В связке с цепным правилом
$C$ (константа) $0$ $0$
$x$ $1$ $u' $
$x^n$ $nx^{n-1}$ $\big(u^n\big)' = nu^{n-1}u'$
$\sqrt{x}$ $\dfrac{1}{2\sqrt x}$ $\big(\sqrt u\big)' = \dfrac{u'}{2\sqrt u}$
$\dfrac1x$ $-\dfrac{1}{x^2}$ $\left(\dfrac1u\right)' = -\dfrac{u'}{u^2}$
$\sin x$ $\cos x$ $\big(\sin u\big)' = u'\cos u$
$\cos x$ $-\sin x$ $\big(\cos u\big)' = -u'\sin u$
$\tan x$ $\dfrac{1}{\cos^2 x}$ $\big(\tan u\big)' = \dfrac{u'}{\cos^2 u}$
$\cot x$ $-\dfrac{1}{\sin^2 x}$ $\big(\cot u\big)' = -\dfrac{u'}{\sin^2 u}$
$e^x$ $e^x$ $\big(e^u\big)' = u'e^u$
$a^x$ $a^x\ln a$ $\big(a^u\big)' = u'a^u\ln a$
$\ln x$ $\dfrac1x$ $\big(\ln u\big)' = \dfrac{u'}{u}$
$\log_a x$ $\dfrac{1}{x\ln a}$ $\big(\log_a u\big)' = \dfrac{u'}{u\ln a}$
$\arcsin x$ $\dfrac{1}{\sqrt{1-x^2}}$ $\big(\arcsin u\big)' = \dfrac{u'}{\sqrt{1-u^2}}$
$\arccos x$ $-\dfrac{1}{\sqrt{1-x^2}}$ $\big(\arccos u\big)' = -\dfrac{u'}{\sqrt{1-u^2}}$
$\arctan x$ $\dfrac{1}{1+x^2}$ $\big(\arctan u\big)' = \dfrac{u'}{1+u^2}$
$\operatorname{arcctg} x$ $-\dfrac{1}{1+x^2}$ $\big(\operatorname{arcctg} u\big)' = -\dfrac{u'}{1+u^2}$

Эту таблицу надо знать наизусть. Не «уметь найти в справочнике», не «примерно помнить» — знать так же, как таблицу умножения. Причина простая: дальше по курсу таблица перестаёт быть целью и становится инструментом. В уроках 139–144 ты будешь исследовать функции, и производная там — только первый шаг из пяти; если каждый раз спотыкаться на «а какая производная у арктангенса», задача разваливается. В уроках 145–150 эта же таблица читается справа налево, и там незнание строчки означает, что интеграл просто не берётся.

Несколько мнемоник, которые снимают половину ошибок.

Минус приходит с «ко-». Все функции с приставкой «ко-» — косинус, котангенс, арккосинус, арккотангенс — дают производную со знаком минус. Все их пары без приставки — синус, тангенс, арксинус, арктангенс — со знаком плюс. Одно правило на четыре формулы.

Обратные тригонометрические — попарные близнецы. $(\arccos x)'$ отличается от $(\arcsin x)'$ только знаком, $(\operatorname{arcctg} x)'$ от $(\arctan x)'$ — тоже только знаком. Это не совпадение, а следствие тождеств $\arcsin x + \arccos x = \frac\pi2$ и $\arctan x + \operatorname{arcctg} x = \frac\pi2$: сумма постоянна, значит сумма производных равна нулю. Учи по паре, а не по четыре штуки.

Корень — у «арк-синуса-косинуса», квадрат — у «арк-тангенса-котангенса». Где в исходной функции был синус (ограниченный отрезком $[-1;1]$), там в производной вылезает $\sqrt{1-x^2}$ и область определения $|x|<1$. Где был тангенс (пробегающий всю прямую), там $1+x^2$ и производная определена везде.

Логарифм и показательная — зеркальные. У показательной $\ln a$ стоит множителем ($a^x\ln a$), у логарифмической — в знаменателе ($\frac{1}{x\ln a}$). Логично: функции взаимно обратны, и коэффициенты у них взаимно обратны.

Проверка на натуральность. Если в формуле фигурирует $e$ или $\ln$, подставь $a = e$ и посмотри, схлопывается ли всё к простому виду. $(a^x)' = a^x\ln a$ при $a=e$ даёт $e^x$ ✅ $(\log_a x)' = \frac{1}{x\ln a}$ при $a=e$ даёт $\frac1x$ ✅ Если не схлопывается — формула вспомнилась неверно.


ML-контекст: производные активаций и лоссов

Интуиция: почему нейросети вообще нужны производные табличных функций

Нейросеть — это композиция. Слой берёт вход, умножает на матрицу весов, прибавляет смещение и пропускает результат через нелинейную функцию — активацию. Потом следующий слой делает то же самое. В конце всё сравнивается с правильным ответом функцией потерь. Получается одна длинная композиция, и её производная по каждому весу — произведение производных всех звеньев, как в уроке 137.

Линейные звенья дифференцируются тривиально. А вот активации и лоссы — это ровно те элементарные функции, чью таблицу мы сегодня выводили: экспонента, логарифм, дроби. Так что весь раздел ниже — не «применение математики к ML», а буквально продолжение урока: берём формулы из таблицы и считаем.

Сигмоида: $\sigma' = \sigma(1-\sigma)$

Сигмоида — это функция

$$\sigma(x) = \frac{1}{1+e^{-x}},$$

которая любое действительное число сжимает в интервал $(0;1)$. Из-за этого её удобно читать как вероятность: «модель считает, что это письмо спам с уверенностью $0{,}87$».

Найдём производную. Перепишем как степень: $\sigma(x) = \left(1+e^{-x}\right)^{-1}$ и применим цепное правило из урока 137. Внешняя функция $u^{-1}$, внутренняя $u = 1+e^{-x}$, у которой $u' = -e^{-x}$ (производная экспоненты из таблицы плюс внутренний множитель $-1$):

$$\sigma'(x) = -\left(1+e^{-x}\right)^{-2}\cdot\left(-e^{-x}\right) = \frac{e^{-x}}{\left(1+e^{-x}\right)^2}.$$

Формально всё, но в таком виде производная бесполезна: чтобы её посчитать, надо заново возводить в степень. Сделаем красиво. Разобьём дробь на два множителя:

$$\frac{e^{-x}}{\left(1+e^{-x}\right)^2} = \frac{1}{1+e^{-x}}\cdot\frac{e^{-x}}{1+e^{-x}}.$$

Первый множитель — это ровно $\sigma(x)$. Второй тоже узнаваем: прибавим и вычтем единицу в числителе,

$$\frac{e^{-x}}{1+e^{-x}} = \frac{\left(1+e^{-x}\right) - 1}{1+e^{-x}} = 1 - \frac{1}{1+e^{-x}} = 1 - \sigma(x).$$

Итого

$$\boxed{\;\sigma'(x) = \sigma(x)\big(1-\sigma(x)\big).\;}$$

Вот почему сигмоида полюбилась инженерам 1980-х: производная выражается через уже посчитанное значение. Прямой проход сохранил $\sigma$ — обратный проход берёт его из памяти и делает одно умножение и одно вычитание. Ни одной экспоненты.

Откуда берётся $0{,}25$. Посмотрим, насколько большой может быть эта производная. Обозначим $s = \sigma(x) \in (0;1)$, тогда $\sigma' = s(1-s)$ — это парабола ветвями вниз с нулями в $s=0$ и $s=1$. Её вершина посередине, при $s = \frac12$, и значение там

$$\frac12\cdot\frac12 = \frac14 = 0{,}25.$$

Значение $s = \frac12$ достигается при $x=0$. Значит, производная сигмоиды нигде не превышает $0{,}25$, а при уходе аргумента в любую сторону стремительно падает: при $x = 5$ имеем $s \approx 0{,}9933$ и $\sigma' \approx 0{,}0066$, при $x = 10$ уже $\sigma' \approx 4{,}5\cdot10^{-5}$.

Теперь вспомни урок 137: вдоль цепочки производные перемножаются. Сеть из десяти сигмоидных слоёв даёт множитель не больше $0{,}25^{10} \approx 9{,}5\cdot10^{-7}$, из двадцати — не больше $9\cdot10^{-13}$. Это и есть затухающие градиенты: первые слои получают сигнал, неотличимый от нуля, и просто не обучаются. Причём $0{,}25$ — это оптимистичная оценка сверху; реально нейроны уходят в насыщение, где множитель на порядки меньше. Именно поэтому до 2011 года глубокие сети «не заводились», и дело было не в данных и не в железе, а вот в этом числе.

Гиперболический тангенс: $\tanh' = 1-\tanh^2$

$$\tanh x = \frac{e^x - e^{-x}}{e^x+e^{-x}}.$$

Это тоже сжимающая функция, но сжимает она в интервал $(-1;1)$ и, в отличие от сигмоиды, симметрична относительно нуля. Дифференцируем по правилу частного из урока 136. Производная числителя: $\left(e^x-e^{-x}\right)' = e^x + e^{-x}$ (минус на минус). Производная знаменателя: $\left(e^x+e^{-x}\right)' = e^x - e^{-x}$. Числитель и знаменатель как бы меняются производными местами — забавное свойство этой пары:

$$\tanh' x = \frac{\left(e^x+e^{-x}\right)^2 - \left(e^x-e^{-x}\right)^2}{\left(e^x+e^{-x}\right)^2}.$$

Разделим почленно:

$$\tanh' x = 1 - \left(\frac{e^x-e^{-x}}{e^x+e^{-x}}\right)^2 = 1 - \tanh^2 x.$$

Снова производная через саму функцию. А теперь сравним максимумы. При $x=0$ получаем $\tanh 0 = 0$, значит $\tanh'(0) = 1 - 0 = 1$. Максимум производной — единица, вчетверо больше, чем у сигмоиды.

Вот и весь ответ на вопрос, почему $\tanh$ считался лучшей активацией, чем сигмоида: множитель в цепочке около нуля равен единице, а единица цепочку не портит. Плюс центрированность: у сигмоиды выход всегда положителен, и градиенты по весам одного нейрона получают одинаковый знак, из-за чего оптимизация идёт зигзагом. У $\tanh$ выход симметричен, зигзага нет.

Кстати, эти две функции — родственники. Проверь сам: $\tanh x = 2\sigma(2x) - 1$. То есть $\tanh$ — это сигмоида, растянутая вдвое по горизонтали и вдвое по вертикали и сдвинутая вниз. Отсюда и множитель 4 в максимуме производной: сжатие по $x$ вдвое умножает производную на 2, растяжение по $y$ вдвое — ещё на 2.

Но и $\tanh$ насыщается: при $|x| > 3$ производная уже меньше $0{,}01$. Проблему затухания это ослабляет, но не убирает.

ReLU: производная-ступенька

$$\mathrm{ReLU}(x) = \max(0, x) = \begin{cases} x, & x > 0,\\ 0, & x \leqslant 0.\end{cases}$$

Никаких экспонент, никаких дробей — кусочно-линейная функция. Её производная считается на каждом куске отдельно:

$$\mathrm{ReLU}'(x) = \begin{cases} 1, & x > 0,\\ 0, & x < 0.\end{cases}$$

Это ступенька Хевисайда. И вот теперь главное: на положительной полуоси множитель в цепочке равен ровно единице. Не $0{,}25$, не $0{,}9$ — единица. Сколько бы слоёв ни было, $1^{100} = 1$, градиент проходит насквозь без затухания. Отсюда и революция 2011–2012 годов: замена сигмоиды на ReLU позволила обучать сети такой глубины, которая раньше была недостижима.

Что происходит в нуле. В точке $x=0$ производной не существует: слева односторонняя производная равна нулю, справа — единице, они не совпадают, у графика излом (мы разбирали такую ситуацию в уроке 133 на примере модуля). Строго говоря, ReLU в нуле недифференцируема, и цепное правило там неприменимо.

Фреймворки решают это волевым порядком: договариваются считать $\mathrm{ReLU}'(0)$ равной какому-нибудь числу из отрезка $[0;1]$ и живут дальше. PyTorch и TensorFlow возвращают $0$; некоторые библиотеки возвращают $1$; в теории оптимизации любое значение из $[0;1]$ называется субградиентом и одинаково законно. Почему это никого не смущает? Потому что попасть предактивацией ровно в $0{,}000000$ при вещественных весах — событие вероятности ноль. За всё обучение это случается либо никогда, либо в паре нейронов из миллиона, и на результат не влияет. Ровно так же поступают с производной модуля в MAE-лоссе.

Плата. На отрицательной полуоси множитель равен нулю, и он обнуляет всю цепочку — нейрон перестаёт получать градиент навсегда. Это «мёртвые нейроны». Против них придумали Leaky ReLU (вместо нуля множитель $0{,}01$), ELU, GELU, Swish — все они правят поведение именно слева от нуля, а справа сохраняют единичный наклон.

Softmax + кросс-энтропия: почему градиент равен $\hat p - y$

Это самый важный градиент в прикладном ML, и самый красивый.

Постановка. Сеть на последнем слое выдаёт $K$ чисел $z_1,\dots,z_K$ — их называют логитами. Это произвольные вещественные числа, они не образуют распределение вероятностей. Чтобы их в него превратить, применяют softmax:

$$\hat p_i = \frac{e^{z_i}}{\sum\limits_{k=1}^{K} e^{z_k}}.$$

Экспонента делает все числа положительными и сохраняет порядок, деление на сумму нормирует: все $\hat p_i > 0$ и $\sum_i \hat p_i = 1$. Правильный ответ кодируют вектором $y$ из нулей с единицей на нужной позиции (one-hot). Функция потерь — кросс-энтропия:

$$L = -\sum_{i=1}^{K} y_i\ln \hat p_i.$$

Для one-hot вектора это просто $-\ln \hat p_c$, где $c$ — номер верного класса: «штрафуем логарифмом за неуверенность в правильном ответе».

Шаг 1: производная softmax. Найдём $\dfrac{\partial \hat p_i}{\partial z_j}$. Обозначим $S = \sum_k e^{z_k}$, тогда $\hat p_i = \frac{e^{z_i}}{S}$, а $\frac{\partial S}{\partial z_j} = e^{z_j}$ — потому что в сумме от $z_j$ зависит ровно одно слагаемое.

Случай $i = j$. Правило частного:

$$\frac{\partial \hat p_i}{\partial z_i} = \frac{e^{z_i}S - e^{z_i}e^{z_i}}{S^2} = \frac{e^{z_i}}{S}\cdot\frac{S - e^{z_i}}{S} = \hat p_i\left(1 - \hat p_i\right).$$

Знакомо? Это ровно формула производной сигмоиды — и не случайно: при $K=2$ softmax превращается в сигмоиду от разности логитов.

Случай $i \neq j$. Числитель $e^{z_i}$ от $z_j$ не зависит, работает только знаменатель:

$$\frac{\partial \hat p_i}{\partial z_j} = \frac{0\cdot S - e^{z_i}e^{z_j}}{S^2} = -\hat p_i\hat p_j.$$

Обе формулы объединяются одной записью: $\dfrac{\partial \hat p_i}{\partial z_j} = \hat p_i\left(\delta_{ij} - \hat p_j\right)$, где $\delta_{ij}$ равна единице при $i=j$ и нулю иначе.

Шаг 2: цепное правило. Логит $z_j$ влияет на лосс через все $\hat p_i$ сразу, поэтому вклады складываются (это многомерная версия цепного правила, но здесь она сводится к обычной сумме):

$$\frac{\partial L}{\partial z_j} = \sum_{i} \frac{\partial L}{\partial \hat p_i}\cdot\frac{\partial \hat p_i}{\partial z_j}.$$

Первый множитель берём из таблицы: $L = -\sum_i y_i\ln\hat p_i$, значит $\frac{\partial L}{\partial \hat p_i} = -\frac{y_i}{\hat p_i}$. Подставляем:

$$\frac{\partial L}{\partial z_j} = \sum_i \left(-\frac{y_i}{\hat p_i}\right)\hat p_i\left(\delta_{ij} - \hat p_j\right) = -\sum_i y_i\left(\delta_{ij}-\hat p_j\right).$$

Смотри, что произошло: множитель $\hat p_i$ из производной softmax сократился с $\hat p_i$ из знаменателя производной логарифма. Логарифм и экспонента взаимно уничтожились — потому и получается такой чистый ответ. Раскрываем сумму:

$$\frac{\partial L}{\partial z_j} = -\sum_i y_i\delta_{ij} + \hat p_j\sum_i y_i = -y_j + \hat p_j\cdot 1.$$

Первая сумма оставляет одно слагаемое $y_j$, вторая равна единице, потому что компоненты $y$ в сумме дают единицу. Итого:

$$\boxed{\;\frac{\partial L}{\partial z_j} = \hat p_j - y_j.\;}$$

В векторной записи $\nabla_z L = \hat p - y$. Никаких экспонент, никаких логарифмов, никаких дробей — просто разность «что предсказали» минус «что было на самом деле». Если модель дала правильному классу вероятность $0{,}9$ при истинной единице, градиент по этому логиту равен $-0{,}1$: слабый толчок вверх. Если дала $0{,}01$ — градиент $-0{,}99$: сильный толчок. Ровно то поведение, которого хочется от обучения.

Почему фреймворки считают softmax и кросс-энтропию одной функцией. В любой библиотеке есть отдельный лосс «с логитами»: CrossEntropyLoss в PyTorch принимает сырые $z$, а не вероятности; в TensorFlow это softmax_cross_entropy_with_logits. Причин две, и обе серьёзные.

Первая — скорость и точность градиента. Если считать softmax и логарифм по отдельности, обратный проход пойдёт через громоздкую матрицу $\hat p_i(\delta_{ij}-\hat p_j)$, а потом через деление на $\hat p_i$. Все эти вычисления в итоге взаимно сократятся — но сократятся уже после того, как каждое из них внесло свою ошибку округления. Слитная реализация просто возвращает $\hat p - y$ и не делает лишней работы.

Вторая — численная устойчивость log-sum-exp. В формуле softmax стоит $e^{z_k}$. В float32 максимум примерно $3{,}4\cdot10^{38}$, а $e^{89}$ уже больше — то есть логит $z = 100$ даёт inf, и вся строка превращается в nan. Симметрично, $e^{-800}$ обращается в машинный ноль, и последующий $\ln 0$ даёт $-\infty$. Спасает тождество

$$\ln\sum_k e^{z_k} = m + \ln\sum_k e^{z_k - m}, \qquad m = \max_k z_k,$$

которое проверяется в одну строку: вынеси $e^m$ за скобку в сумме и разложи логарифм произведения. После вычитания максимума все показатели неположительны, наибольший равен нулю, $e^0 = 1$ — переполнения не будет никогда, а исчезновение порядка безобидно, потому что хотя бы одно слагаемое равно единице. Кросс-энтропия при этом пишется как

$$L = -z_c + \left(m + \ln\sum_k e^{z_k - m}\right),$$

то есть логарифм вообще не берётся от маленького числа. Это и называется трюком log-sum-exp, и он зашит внутрь logits-версий лоссов. Отсюда практическое правило: не подавай в кросс-энтропию вероятности после softmax — подавай логиты. Ручная связка softmaxlogNLLLoss работает, но она хрупкая, и первый же выброс в данных приводит к nan в логах.

Бинарный случай. При $K=2$ всё сворачивается в логистическую регрессию. Softmax от двух логитов даёт $\hat p = \sigma(z_1 - z_2)$, кросс-энтропия превращается в

$$L = -\big[y\ln\hat p + (1-y)\ln(1-\hat p)\big],$$

а градиент по логиту — в $\hat p - y$, ту же самую формулу. Мы проверим это выкладкой в заданиях 23 и 24.

Почему это важно

Полдесятка формул из этого раздела — это буквально то, что исполняется миллиарды раз при обучении любой модели классификации. И знание их вывода даёт не эрудицию, а рабочую диагностику.

Сеть глубокая, а первые слои не обучаются? Посмотри на активации: если это сигмоиды, множитель $0{,}25^L$ объясняет всё без всякой мистики. В логах nan сразу после старта на задаче с большим числом классов? Скорее всего, softmax считается вручную и переполняется — переходи на logits-версию лосса. Половина нейронов выдаёт строго ноль на всех примерах? Мёртвый ReLU, лечится инициализацией и Leaky-вариантом. Обучение идёт, но подозрительно медленно и зигзагом? Возможно, активация нецентрированная.

Все четыре диагноза — это прочитанные вслух формулы $\sigma' = \sigma(1-\sigma)$, $\tanh' = 1-\tanh^2$, $\mathrm{ReLU}' \in \{0;1\}$ и $\nabla_z L = \hat p - y$. Инженер, который их вывел руками, отлаживает модель за десять минут; тот, кто их не выводил, перебирает learning rate неделю.


Практика: 30 заданий

Базовые (задания 1-10)

Задание 1: Найди производную функции $y = \sin 5x$.


Задание 2: Найди производную функции $y = \cos(x^2)$.


Задание 3: Найди производную функции $y = e^{3x}$ и вычисли $y'(0)$.


Задание 4: Найди производную функции $y = \ln(2x+1)$ и укажи область определения ответа.


Задание 5: Найди производную функции $y = 4^x$ и вычисли $y'(1)$.


Задание 6: Найди производную функции $y = \tan 3x$ и вычисли $y'(0)$.


Задание 7: Найди производную функции $y = \arcsin 2x$ и укажи, при каких $x$ она существует.


Задание 8: Найди производную функции $y = 3\ln x + \log_2 x$.


Задание 9: Найди производную функции $y = x^2e^x$ и её нули.


Задание 10: Найди производную функции $y = \sin x\cos x$ двумя способами и сравни результаты.


Средние (задания 11-20)

Задание 11: Найди производную функции $y = e^{-x^2}$ (это гауссово, или RBF-ядро) и определи, где она положительна.


Задание 12: Найди производную функции softplus $y = \ln(1+e^x)$ и покажи, что она равна сигмоиде.


Задание 13: Выведи производную сигмоиды $\sigma(x) = \dfrac{1}{1+e^{-x}}$ и вычисли $\sigma'(0)$ и $\sigma'(2)$.


Задание 14: Выведи производную гиперболического тангенса $\tanh x = \dfrac{e^x-e^{-x}}{e^x+e^{-x}}$ и найди её максимум.


Задание 15: Найди производную функции $y = \dfrac{\ln x}{x}$ и её нуль.


Задание 16: Найди производную функции $y = \arctan\left(e^x\right)$ и вычисли $y'(0)$.


Задание 17: Найди производную функции $y = \sqrt{\ln x}$ и укажи область определения.


Задание 18: Найди производную функции $y = 2^{\sin x}$ и вычисли $y'(0)$.


Задание 19: Найди производную функции $y = \ln(\cos x)$ и упрости ответ.


Задание 20: Методом логарифмического дифференцирования найди производную $y = x^x$ ($x>0$) и точку, где она обращается в ноль.


Продвинутые (задания 21-30)

Задание 21: Методом логарифмического дифференцирования найди производную

$$y = \frac{(2x+1)^5(x-3)^2}{(x+4)^3}$$

и вычисли $y'(4)$.


Задание 22: Найди производную функции $y = (\sin x)^{\cos x}$ на промежутке $(0;\pi)$ и вычисли $y'\left(\frac\pi2\right)$.


Задание 23: Логистический лосс для одного объекта записывается как $L(z) = \ln\left(1+e^{-z}\right)$, где $z$ — отступ (margin). Найди $L'(z)$, вырази ответ через сигмоиду и вычисли $L'(0)$.


Задание 24: Для одного признака и одного веса бинарная кросс-энтропия равна

$$L(w) = -\Big[y\ln\sigma(wx) + (1-y)\ln\big(1-\sigma(wx)\big)\Big],$$

где $y \in \{0;1\}$, а $x$ — значение признака. Покажи, что $L'(w) = \big(\sigma(wx) - y\big)x$.


Задание 25: Найди производную функции $y = \arctan\dfrac{1-x}{1+x}$ при $x \neq -1$ и объясни полученный результат.


Задание 26: Найди производную функции $y = e^x\sin x$ и все точки, где она обращается в ноль.


Задание 27: Найди производную функции $y = \ln\dfrac{1+\sin x}{1-\sin x}$ и упрости ответ. Вычисли $y'(0)$.


Задание 28: Функция активации Swish (она же SiLU) задаётся как $y = x\,\sigma(x)$. Найди $y'$, вырази через $\sigma$ и вычисли $y'(0)$ и $y'(-2)$.


Задание 29: Для двух классов softmax даёт $\hat p_1 = \dfrac{e^{z_1}}{e^{z_1}+e^{z_2}}$. Покажи, что $\hat p_1 = \sigma(z_1 - z_2)$, найди $\dfrac{\partial \hat p_1}{\partial z_1}$ и градиент кросс-энтропии $L = -\ln\hat p_1$ по $z_1$.


Задание 30: Найди производную функции $y = x^{\ln x}$ при $x>0$ и точку, где она равна нулю.


Частые ошибки

Ошибка 1: потерянный минус у косинуса и арккосинуса

Неправильно: $(\cos x)' = \sin x$; $(\arccos x)' = \dfrac{1}{\sqrt{1-x^2}}$.

Правильно: $(\cos x)' = -\sin x$; $(\arccos x)' = -\dfrac{1}{\sqrt{1-x^2}}$.

💡 Почему важно: минус здесь не украшение, а содержание. Проверить его можно за секунду по графику: на промежутке $\left(0;\pi\right)$ косинус убывает от $1$ до $-1$, значит его производная там обязана быть отрицательной. А синус на $\left(0;\frac\pi2\right)$ положителен — совпасть эти две функции без минуса не могут. То же с арккосинусом: он убывает на всей области определения, производная всюду отрицательна. Мнемоника простая: минус приходит вместе с приставкой «ко-» — косинус, котангенс, арккосинус, арккотангенс. В коде такая ошибка даёт градиент правильной величины, но неверного знака, и модель уверенно уезжает в противоположную сторону — симптом «лосс монотонно растёт с первого же шага».


Ошибка 2: забытый $\ln a$ в производной показательной функции

Неправильно: $(3^x)' = 3^x$.

Правильно: $(3^x)' = 3^x\ln 3 \approx 1{,}0986\cdot 3^x$.

💡 Почему важно: равенство $f' = f$ — это исключительное свойство ровно одного основания, числа $e$. Для любого другого основания вылезает множитель $\ln a$, и он появился в выводе не случайно, а как значение предела $\lim_{h\to0}\frac{a^h-1}{h}$. Проверка на пальцах: у $2^x$ множитель $\ln 2 \approx 0{,}69 < 1$ — производная меньше самой функции, кривая растёт медленнее экспоненты; у $10^x$ множитель $\ln 10 \approx 2{,}30$ — растёт быстрее. Если множитель забыт, ошибка в градиенте достигает 130 % — численная проверка ловит её мгновенно.


Ошибка 3: путаница между $x^a$ и $a^x$

Неправильно: $(2^x)' = x\cdot 2^{x-1}$ или $(x^2)' = x^2\ln x$.

Правильно: $(x^2)' = 2x$ (степенная функция, переменная в основании); $(2^x)' = 2^x\ln 2$ (показательная функция, переменная в показателе).

💡 Почему важно: это две принципиально разные функции, и по формулам они не пересекаются. Отличать их надо не по внешнему виду, а по вопросу «где стоит $x$». Если $x$ внизу — работает $(x^n)' = nx^{n-1}$. Если $x$ наверху — $(a^x)' = a^x\ln a$. Если $x$ и внизу, и наверху ($x^x$, $x^{\ln x}$, $(\sin x)^{\cos x}$) — не работает ни одна из формул, нужно логарифмическое дифференцирование. Быстрая проверка: подставь $x=1$ в $2^x$. Функция равна $2$, растёт, и наклон $2\ln 2 \approx 1{,}39$. «Формула» $x\cdot 2^{x-1}$ дала бы $1$ — уже не сходится.


Ошибка 4: аргумент тригонометрической функции в градусах

Неправильно: считать, что $(\sin x)' = \cos x$ при $x$, измеренном в градусах, и писать $\sin(30°)' = \cos(30°)$.

Правильно: формула $(\sin x)' = \cos x$ верна только для радианов. Если $x$ в градусах, то $\sin x° = \sin\left(\frac{\pi x}{180}\right)$, и по цепному правилу $\left(\sin x°\right)' = \frac{\pi}{180}\cos x° \approx 0{,}01745\cos x°$.

💡 Почему важно: ошибка в 57 раз — это не опечатка, это разрушенная модель. Причина в выводе: мы опирались на первый замечательный предел $\lim_{h\to0}\frac{\sin h}{h} = 1$, а он справедлив только в радианной мере (в градусах этот предел равен $\frac{\pi}{180}$). Радиан — не «одна из единиц измерения угла», а единственная, при которой анализ работает без лишних множителей. Именно поэтому во всех языках программирования math.sin принимает радианы, а конвертация из градусов — забота вызывающего кода. Реальный баг из практики: угол в датасете хранится в градусах, лосс считает через синус, градиент выходит в 57 раз меньше нужного, обучение «не идёт» — и неделю ищут проблему в learning rate.


Ошибка 5: забытый множитель цепочки в производной логарифма

Неправильно: $\big(\ln(3x^2+1)\big)' = \dfrac{1}{3x^2+1}$.

Правильно: $\big(\ln u\big)' = \dfrac{u'}{u}$, значит $\big(\ln(3x^2+1)\big)' = \dfrac{6x}{3x^2+1}$.

💡 Почему важно: формула $(\ln x)' = \frac1x$ работает только тогда, когда под логарифмом стоит чистое $x$. Как только внутри что-то сложнее, включается цепное правило из урока 137, и в числителе появляется производная внутренней функции. Проверка на предельном случае: при больших $x$ функция $\ln(3x^2+1) \approx 2\ln x + \ln 3$ растёт примерно как $2\ln x$, значит её производная должна вести себя как $\frac2x$. Наш ответ: $\frac{6x}{3x^2+1}\approx\frac{6x}{3x^2} = \frac2x$ ✅ «Забывчивая» версия дала бы $\frac{1}{3x^2}$ — падает как квадрат, совсем другая асимптотика. Тот же множитель — самый частый пропуск при ручном выводе градиентов в лог-правдоподобии.


Ошибка 6: игнорирование области определения

Неправильно: писать $(\ln x)' = \dfrac1x$ и делать вывод, что «производная определена при всех $x\neq0$, в том числе при $x=-2$ она равна $-0{,}5$».

Правильно: $(\ln x)' = \dfrac1x$ при $x>0$ — там, где определена сама функция. При отрицательных $x$ выражение $\frac1x$ считается, но производной ничего быть не может: функции там нет. Если нужна формула на обеих полуосях, берут $\ln|x|$: тогда $\big(\ln|x|\big)' = \dfrac1x$ при всех $x\neq0$.

💡 Почему важно: производная — это характеристика функции в точке, и вне области определения вопрос лишён смысла, каким бы «считающимся» ни выглядело выражение. Похожая ловушка со всеми формулами урока: $(\arcsin x)' = \frac{1}{\sqrt{1-x^2}}$ существует только при $|x|<1$, а не при $|x|\leqslant 1$ — в самих точках $\pm1$ функция определена, но касательная вертикальна. $(\tan x)'$ не существует там, где нет тангенса. $(\sqrt{\ln x})'$ требует $x>1$, хотя сама функция определена и при $x=1$. Практическое следствие: перед любой оптимизацией параметр, попадающий под логарифм или корень, зажимают в допустимый диапазон — иначе nan появится не в градиенте, а раньше, прямо в значении лосса.


Главное запомнить

📝 Ключевые формулы и идеи урока

Тригонометрия: $(\sin x)' = \cos x$, $(\cos x)' = -\sin x$, $(\tan x)' = \dfrac{1}{\cos^2 x} = 1+\tan^2x$, $(\cot x)' = -\dfrac{1}{\sin^2 x}$. Вывод синуса и косинуса опирается ровно на две вещи: формулу разности синусов (урок 100) и первый замечательный предел (урок 131). Аргумент — только в радианах.

Экспонента и показательная: $(e^x)' = e^x$, $(a^x)' = a^x\ln a$. Число $e$ — это то самое основание, при котором коэффициент $M(a) = \lim_{h\to0}\frac{a^h-1}{h}$ равен единице. Экспонента — единственная (с точностью до множителя) функция, совпадающая со своей производной.

Логарифмы: $(\ln x)' = \dfrac1x$ при $x>0$, $(\log_a x)' = \dfrac{1}{x\ln a}$, $(\ln|x|)' = \dfrac1x$ при $x\neq0$. У показательной $\ln a$ стоит множителем, у логарифмической — в знаменателе: функции взаимно обратны, коэффициенты взаимно обратны.

Обратные тригонометрические: $(\arcsin x)' = \dfrac{1}{\sqrt{1-x^2}}$ и $(\arccos x)' = -\dfrac{1}{\sqrt{1-x^2}}$ при $|x|<1$; $(\arctan x)' = \dfrac{1}{1+x^2}$ и $(\operatorname{arcctg} x)' = -\dfrac{1}{1+x^2}$ при всех $x$. Внутри каждой пары формулы отличаются только знаком — это следствие тождеств вида $\arcsin x + \arccos x = \frac\pi2$.

Приём для обратных функций: если $y$ — обратная к известной $f$, запиши тождество $f(y) = x$, продифференцируй обе части по цепному правилу и вырази $y'$. Так выведены $\ln$, $\arcsin$ и $\arctan$ — три формулы одним методом.

Таблица + цепное правило = всё. Каждая строка таблицы в связке с уроком 137 превращается в рабочую формулу: $(\sin u)' = u'\cos u$, $(e^u)' = u'e^u$, $(\ln u)' = \dfrac{u'}{u}$, $(\arctan u)' = \dfrac{u'}{1+u^2}$. Забытый множитель $u'$ — ошибка номер один во всей теме.

Логарифмическое дифференцирование: логарифмируем → дифференцируем → домножаем на $y$. Обязателен для $u(x)^{v(x)}$ (правила степенной и показательной там обе незаконны) и очень удобен для громоздких произведений и дробей. Общая формула: $\big(u^v\big)' = u^v\left(v'\ln u + \dfrac{vu'}{u}\right)$; ключевые примеры $(x^x)' = x^x(\ln x+1)$ и $\left(x^{\ln x}\right)' = 2\ln x\cdot x^{\ln x - 1}$.

Логарифмическая производная $\dfrac{y'}{y}$ — относительная скорость роста, «сколько процентов в единицу времени». Она же основа метода максимального правдоподобия: логарифм превращает произведение вероятностей в сумму, и градиент считается послагаемо.

Сигмоида: $\sigma(x) = \dfrac{1}{1+e^{-x}}$, $\sigma' = \sigma(1-\sigma)\leqslant 0{,}25$. Максимум $0{,}25$ достигается при $x=0$; произведение таких множителей вдоль глубокой сети даёт затухающие градиенты ($0{,}25^{10}\approx 10^{-6}$).

Гиперболический тангенс: $\tanh' = 1-\tanh^2 \leqslant 1$, максимум $1$ при $x=0$ — вчетверо больше, чем у сигмоиды, поэтому $\tanh$ и вытеснил её в скрытых слоях. Связь: $\tanh x = 2\sigma(2x)-1$.

ReLU: производная равна $1$ при $x>0$ и $0$ при $x<0$; в нуле производной не существует, и фреймворки по соглашению берут $0$ (иногда $1$) — любое число из $[0;1]$ является субградиентом, а попасть ровно в ноль практически невозможно. Единичный множитель не портит цепочку любой длины — отсюда и вся революция глубокого обучения.

Softmax + кросс-энтропия: $\hat p_i = \dfrac{e^{z_i}}{\sum_k e^{z_k}}$, $L = -\sum_i y_i\ln\hat p_i$, и градиент по логитам схлопывается в $\nabla_z L = \hat p - y$. Причина схлопывания — взаимное уничтожение логарифма и экспоненты. Фреймворки считают связку одной функцией ради этой формулы и ради устойчивости log-sum-exp: $\ln\sum e^{z_k} = m + \ln\sum e^{z_k-m}$, где $m = \max z_k$.

Знать наизусть. Дальше по курсу таблица перестаёт быть темой и становится инструментом: в 139–144 это первый шаг любого исследования функции, в 145–150 та же таблица читается справа налево.


Связь с другими темами курса

Что нужно было знать до этого урока:

  • Уроки 129–131, пределы и первый замечательный предел — фундамент всего вывода. $\lim_{h\to0}\frac{\sin h}{h} = 1$ даёт производные синуса и косинуса, а $\lim_{t\to0}(1+t)^{1/t} = e$ — производные экспоненты и логарифма. Без этих двух пределов таблицу построить нечем.
  • Урок 132, непрерывность — в выводе синуса мы переходили к пределу внутри косинуса, и это законно ровно потому, что косинус непрерывен.
  • Урок 133, определение производной — через предел разностного отношения посчитаны все базовые формулы; оттуда же $(x^n)'$, $\left(\sqrt x\right)'$ и $\left(\frac1x\right)'$, которые вошли в сводную таблицу.
  • Урок 136, правила дифференцирования — сумма, произведение и частное. Правило частного дало тангенс и котангенс, правило произведения работает почти в каждом примере урока.
  • Урок 137, производная сложной функции — превращает каждую строку таблицы в рабочую формулу. Именно связка «таблица + цепное правило» позволяет продифференцировать любое выражение, которое ты сумеешь записать.
  • Уроки 95, 99–102, 112, 116–117 — тригонометрические тождества, формулы преобразования разности в произведение, свойства логарифмов и определение числа $e$. Они не «предыстория», а буквально рабочие инструменты вывода.

Что изучить дальше:

  • Уроки 139–144, применение производной к исследованию функций — монотонность, экстремумы, выпуклость, наибольшие и наименьшие значения, построение графиков. Там производная будет считаться в первой строке решения и без запинки: тема урока — не «как найти $f'$», а «что с ней делать дальше».
  • Уроки 145–150, первообразная и интеграл — та же самая таблица, прочитанная справа налево. Каждая формула отсюда превращается там в формулу интегрирования, и знание таблицы наизусть экономит половину времени.
  • Университетский блок — производная обратной функции в общем виде, гиперболические функции, ряды Тейлора (где $\sin$, $\cos$, $e^x$, $\ln(1+x)$ и $\arctan x$ раскладываются в бесконечные суммы, и все коэффициенты получаются как раз из производных), формула Эйлера $e^{ix} = \cos x + i\sin x$, дифференциальные уравнения, где $y' = y$ — самое первое из решаемых.
  • ML-блок — функции активации целиком (сигмоида, tanh, ReLU и её родня, GELU, Swish), backpropagation, логистическая регрессия, softmax-классификаторы, метод максимального правдоподобия, вариационные методы, где логарифмическая производная работает как основной приём.

Где это нужно в жизни:

💻 В программировании: таблица производных зашита в каждый фреймворк автодифференцирования — это буквально файл с правилами вида «у exp градиент exp». Численные методы, символьные вычисления, оптимизация в графике и физических движках опираются на неё же.

🤖 В ML/AI: производные активаций и лоссов — то, что исполняется на каждом шаге обучения любой модели. Диагностика затухающих градиентов, выбор активации, устойчивая реализация softmax через log-sum-exp, вывод градиента логистической регрессии — всё это прямые следствия сегодняшних формул.

📊 В Data Science: логарифмическая производная как темп прироста, логарифмическая шкала на графиках, лог-правдоподобие в статистических моделях, эластичность спроса, разложение временного ряда на тренд и сезонность через синусы и косинусы.

🔬 В науке и инженерии: радиоактивный распад и период полураспада ($y' = -\lambda y$), колебания маятника и переменный ток (синус и косинус), зарядка конденсатора, кинетика химических реакций, скорость роста популяции, закон Ньютона об охлаждении.

💰 В финансах: непрерывное начисление процентов (то самое, откуда Бернулли вытащил число $e$), логарифмическая доходность, темпы роста в процентах, чувствительность цены опциона к параметрам, где под производными стоят экспоненты и функции нормального распределения.


Интересные факты

💡 Число $e$ определено ровно тем свойством, ради которого мы его используем. Обычно константы приходят из измерений или из геометрии, как $\pi$. С числом $e$ иначе: оно решение задачи «найти основание $a$, при котором наклон касательной к графику $a^x$ в точке $(0;1)$ равен единице». У $2^x$ этот наклон $\approx 0{,}693$ — маловато. У $3^x$ уже $\approx 1{,}099$ — многовато. Где-то между двойкой и тройкой лежит идеальное основание, и это $e = 2{,}718281828\ldots$ Эйлер обозначил его буквой $e$ в письме Гольдбаху в 1731 году и посчитал 18 знаков после запятой. Почему именно $e$ — никто точно не знает: то ли от exponential, то ли просто следующая свободная буква после $a$, $b$, $c$, $d$, которые в его выкладках уже были заняты. Версия «от фамилии Euler» отпадает: Эйлер такой скромностью отличался.

💡 Радианы — единственная единица, при которой производная синуса равна косинусу. Если измерять углы в градусах, то $(\sin x°)' = \frac{\pi}{180}\cos x° \approx 0{,}01745\cos x°$, и множитель $\frac{\pi}{180}$ будет тянуться через все последующие формулы, накапливаясь в производных высших порядков как $\left(\frac{\pi}{180}\right)^n$. В градах (где прямой угол равен 100 единицам) вылезет $\frac{\pi}{200}$. То есть радиан — не «удобная договорённость», а единственная мера, в которой анализ выглядит прилично. Причина глубокая: длина дуги единичной окружности численно равна углу в радианах, и первый замечательный предел $\frac{\sin h}{h}\to1$ — это, по сути, утверждение «маленькая дуга почти равна своей хорде».

💡 Производная арктангенса — рациональная функция, и из этого выросли первые точные ряды для $\pi$. Формула $(\arctan x)' = \frac{1}{1+x^2}$ выглядит невинно, но она связывает трансцендентную функцию с простейшей дробью, которая раскладывается в геометрическую прогрессию $1 - x^2 + x^4 - x^6 + \ldots$ Отсюда получается ряд $\arctan x = x - \frac{x^3}{3} + \frac{x^5}{5} - \ldots$, а при $x=1$, поскольку $\arctan 1 = \frac\pi4$, — знаменитый ряд Лейбница $\frac\pi4 = 1 - \frac13 + \frac15 - \frac17 + \ldots$ Мадхава в Индии получил его на три века раньше. Ряд, правда, сходится удручающе медленно: чтобы получить два верных знака $\pi$, нужно около трёхсот слагаемых. Быстрые формулы вроде машиновской $\frac\pi4 = 4\arctan\frac15 - \arctan\frac{1}{239}$ используют тот же арктангенс, но в точках поближе к нулю.

💡 Градиент $\hat p - y$ появляется не только в softmax — это признак целого семейства распределений. Линейная регрессия с квадратичной ошибкой даёт градиент по предсказанию $\hat y - y$. Логистическая регрессия с кросс-энтропией даёт $\hat p - y$. Пуассоновская регрессия с логарифмической связью — снова $\hat\lambda - y$. Совпадение не случайно: все эти модели принадлежат обобщённым линейным моделям, построенным на экспоненциальном семействе распределений, и там при «канонической» функции связи градиент лог-правдоподобия по линейному предиктору всегда равен «предсказание минус наблюдение». Красивая формула, которую мы выводили руками для softmax, — частный случай общей теоремы, и именно она объясняет, почему в коде разных моделей обратный проход выглядит подозрительно одинаково.

💡 Сигмоида была выбрана из соображений экономии, а не качества. В 1986 году, когда Румельхарт, Хинтон и Уильямс популяризировали backpropagation, память и такты считали поштучно. Свойство $\sigma' = \sigma(1-\sigma)$ означало, что обратный проход не требует ни одной новой экспоненты — только умножение и вычитание над уже сохранённым значением. Это выглядело как чистая победа. То, что этот же выбор ограничивает множитель в цепочке числом $0{,}25$ и делает глубокие сети необучаемыми, поняли лет через пятнадцать. Переход на ReLU в 2011 году — по сути отказ от красивой формулы в пользу невзрачной ступеньки, и это дало прирост, которого не давали никакие ухищрения с оптимизаторами.


Лайфхаки и полезные трюки

1. Не заучивай $a^x$ и $\log_a x$ отдельно — сведи всё к $e$ и $\ln$

Две формулы из таблицы можно не помнить вовсе, если помнить два тождества: $a^x = e^{x\ln a}$ и $\log_a x = \dfrac{\ln x}{\ln a}$. Дальше работает цепное правило и вынесение константы.

Пример: $\left(5^x\right)' = \left(e^{x\ln 5}\right)' = e^{x\ln5}\cdot\ln 5 = 5^x\ln 5$ — формула выведена за одну строку. И $\left(\log_7 x\right)' = \left(\frac{\ln x}{\ln 7}\right)' = \frac{1}{\ln 7}\cdot\frac1x = \frac{1}{x\ln 7}$. Заодно этот приём убирает вопрос «а $\ln a$ в числителе или в знаменателе»: он оказывается там, куда его поставила алгебра.


2. Забыл производную тангенса — выведи её за десять секунд через частное

Формулу $\frac{1}{\cos^2x}$ помнят не все, а вот $\tan x = \frac{\sin x}{\cos x}$ и правило частного — все.

Пример: $\left(\frac{\sin x}{\cos x}\right)' = \frac{\cos^2x+\sin^2x}{\cos^2 x} = \frac{1}{\cos^2 x}$. Тот же трюк спасает с котангенсом. И тот же принцип шире: любую «забытую» строку таблицы можно восстановить из «незабытых» — арккосинус через $\frac\pi2 - \arcsin x$, $\log_a$ через $\ln$, $\tanh$ через экспоненты.


3. Проверяй ответ численной производной — это две строки и полная уверенность

Центральная разность $f'(x_0)\approx\dfrac{f(x_0+h)-f(x_0-h)}{2h}$ при $h\approx10^{-4}$ ловит и потерянный знак, и забытый множитель. Ровно этим занимается gradient check при отладке нейросетей.

Пример: для $y = 2^{\sin x}$ формула дала $y'(0) = \ln 2\approx0{,}693$. Численно: $2^{\sin(0{,}001)} \approx 2^{0{,}001} = 1{,}000693$, $2^{\sin(-0{,}001)} \approx 0{,}999307$. Разность $0{,}001386$, делим на $0{,}002$ — получаем $0{,}693$ ✅ А если бы $\ln 2$ был потерян, ответ вышел бы $1$, и расхождение в полтора раза видно немедленно.


4. Обратные функции учи парами — внутри пары меняется только знак

Четыре формулы для арксинуса, арккосинуса, арктангенса и арккотангенса — на самом деле две формулы плюс знак. Причина: $\arcsin x + \arccos x = \frac\pi2$ и $\arctan x + \operatorname{arcctg} x = \frac\pi2$, а производная константы равна нулю.

Пример: запомнил $(\arctan x)' = \frac{1}{1+x^2}$ — автоматически знаешь $(\operatorname{arcctg} x)' = -\frac{1}{1+x^2}$. Тот же принцип работает и как проверка: если у тебя в ответе арккосинус дал плюс, а арксинус минус — где-то потерян знак.


5. Логарифмируй, если видишь произведение из трёх и более множителей, корни или степень с переменным показателем

Приём $(\ln y)' = \frac{y'}{y}$ превращает произведение в сумму, а показатель — в множитель. Признаки, что пора его доставать: этажерка из дробей и корней, либо $x$ одновременно и в основании, и в показателе.

Пример: для $y = \dfrac{x^2\sqrt[3]{x+1}}{(x-2)^5\sqrt{x+7}}$ прямой путь — правило частного, внутри которого два правила произведения и три цепных. Через логарифм: $\ln|y| = 2\ln|x| + \frac13\ln|x+1| - 5\ln|x-2| - \frac12\ln|x+7|$, и сразу $\frac{y'}{y} = \frac2x + \frac{1}{3(x+1)} - \frac{5}{x-2} - \frac{1}{2(x+7)}$. Три строки против полустраницы.


6. Отношение $\dfrac{y'}{y}$ читай как «процент роста» — это готовый ответ на прикладной вопрос

Логарифмическая производная имеет прямой смысл: относительная скорость изменения. Умножь её на 100 — получишь проценты в единицу времени.

Пример: выручка растёт по закону $R(t) = 500e^{0{,}03t}$ тысяч рублей, $t$ в месяцах. Считать $R'$ и делить на $R$ не нужно: $\ln R = \ln 500 + 0{,}03t$, значит $\frac{R'}{R} = 0{,}03$, то есть ровно 3 % в месяц, причём в любой момент времени. Тот же приём объясняет, почему экспоненциальный рост на логарифмической шкале выглядит прямой: наклон этой прямой и есть темп прироста.


7. Перед дифференцированием потрать десять секунд на упрощение

Логарифм частного, произведение синуса на косинус, степень степени — всё это часто сворачивается в выражение, которое дифференцируется вдвое быстрее.

Пример: $y = \ln\frac{x^2}{x+1}$ можно честно продифференцировать как композицию с дробью внутри, а можно сначала написать $y = 2\ln x - \ln(x+1)$ и сразу получить $y' = \frac2x - \frac{1}{x+1}$. Второй путь короче и почти не оставляет места для ошибки. То же с $y = \sin x\cos x = \frac12\sin 2x$ из задания 10.


8. Проверяй формулу «на краях» — асимптотика ловит структурные ошибки

Численная проверка ловит арифметику, а проверка поведения на бесконечности или у границы области — ошибки в структуре ответа.

Пример: производная арксинуса обязана взрываться при $x\to\pm1$, потому что график там встаёт вертикально; $\frac{1}{\sqrt{1-x^2}}\to\infty$ ✅ Производная $\ln x$ обязана стремиться к нулю при больших $x$, потому что логарифм растёт всё медленнее; $\frac1x\to0$ ✅ Производная сигмоиды обязана затухать в обе стороны, потому что кривая выходит на горизонтальные асимптоты; $\sigma(1-\sigma)\to0$ ✅ Если формула ведёт себя на краях не так, как график, — ошибка не в арифметике, а в самой конструкции.


💡 Совет: таблицу производных бесполезно «понимать в общих чертах». Проверь себя жёстко: возьми чистый лист и за пять минут выпиши все шестнадцать строк наизусть, а потом ещё раз — уже в связке с цепным правилом, с множителем $u'$. Если получилось без запинок, дальнейший курс пойдёт легко. Если нет — потрать вечер сейчас, потому что в уроках 139–144 производная будет считаться в первой строке каждого решения, и спотыкаться там уже некогда.

И держи в голове, что именно ты сегодня сделал. Ты не выучил список формул из справочника — ты построил его. Каждая строка получена честно: тригонометрия из первого замечательного предела, экспонента из определения числа $e$, логарифм из дифференцирования тождества $e^y = x$, обратные тригонометрические тем же приёмом, а $x^x$ — логарифмированием, когда все правила кончились. Теперь у тебя есть и кирпичи (эта таблица), и конструктор (правила из уроков 136 и 137). Вместе они дифференцируют что угодно.

А в следующем уроке — 139, применение производной к исследованию функций — начнётся то, ради чего всё это считалось. Производная перестанет быть целью и станет инструментом: по её знаку мы будем находить, где функция растёт и где падает, по её нулям — где у неё вершины и впадины, и научимся строить графики функций, которых до этого в глаза не видели. Формулы у тебя теперь есть. Пора посмотреть, что они умеют.

Понял тему? Закрепи в боте! 🚀

Попрактикуйся на задачах и получи персональные рекомендации от AI

💪 Начать тренировку
💬 Есть вопрос? Спроси бота!