Математический анализ
Понятие производной
Цели урока
- Понять производную как предел отношения приращений
- Интерпретировать производную геометрически (касательная) и физически (скорость)
- Вычислять производные по определению
- Различать дифференцируемость и непрерывность
- Понимать, почему ReLU не дифференцируема в нуле и чем это грозит
Предварительные знания
- Понятие предела функции
- Вычисление пределов
- Непрерывность функции
Adam, Adagrad, RMSProp, SGD - все оптимизаторы нейросетей имеют одно общее: им нужен градиент. Градиент - это вектор производных. И производная - предел отношения приращений - впервые появилась в тетрадях Ньютона в 1665 году, когда ему понадобилось объяснить, почему планеты движутся по эллипсам. С тех пор ничего принципиально не изменилось: PyTorch autograd делает то же самое, только быстрее.
- **Gradient descent**: каждое обновление весов $w \leftarrow w - \alpha \nabla L$ - это шаг вдоль производной функции потерь. Без производной оптимизация невозможна
- **Autograd**: PyTorch строит граф вычислений и применяет chain rule (правило цепочки) - многократное дифференцирование по определению
- **ReLU**: $\text{ReLU}(x) = \max(0, x)$ не дифференцируема в $x = 0$ (угловая точка, как $|x|$). На практике берут субградиент: $f'(0) = 0$ или $f'(0) = 1$
- **Learning rate**: слишком большой - градиент 'перескакивает', слишком малый - сходимость медленная. Производная подсказывает направление, learning rate - длину шага
Два гения, один спор
**Исаак Ньютон** создал 'метод флюксий' около 1665 года для задач механики - ему нужно было описать движение планет. **Готфрид Лейбниц** независимо разработал дифференциальное исчисление в 1684 году с более удобными обозначениями ($\frac{dy}{dx}$). Их последователи устроили многолетний спор о приоритете, разделивший математиков Англии и континента. Выиграли все: у нас есть обе нотации.
Определение производной
Определение производной
Производная функции $f$ в точке $x$ - это **предел отношения приращения функции к приращению аргумента**:
Дробь $\frac{f(x+h) - f(x)}{h}$ - **разностное отношение**, средняя скорость изменения на отрезке $[x, x+h]$. При $h \to 0$ получаем **мгновенную** скорость.
Производная существует, если этот предел **существует и конечен**. Тогда функция называется **дифференцируемой** в точке $x$. Именно это проверяет PyTorch autograd при построении графа.
Что показывает разностное отношение $\frac{f(x+h) - f(x)}{h}$?
Разностное отношение - это средняя скорость на интервале. Производная - мгновенная скорость - получается как предел при $h \to 0$.
Геометрический смысл
Геометрический смысл
Разностное отношение - **наклон секущей** через точки $(x, f(x))$ и $(x+h, f(x+h))$. При $h \to 0$ секущая превращается в **касательную**:
Уравнение касательной
Через точку касания и наклон
Касательная к $f(x)$ в точке $a$: $$y = f(a) + f'(a)(x - a)$$ **Пример**: касательная к $y = x^2$ в точке $x = 2$: - $f(2) = 4$ - точка касания $(2, 4)$ - $f'(x) = 2x$, значит $f'(2) = 4$ - наклон Уравнение: $y = 4 + 4(x - 2) = 4x - 4$ В ML: касательная к loss в точке текущих весов - это линейное приближение, которое gradient descent использует для шага.
Касательная пересекает график только в одной точке
Касательная может пересекать график в других точках
Определение касательной - через предел секущих, а не через число пересечений. Касательная к $y = x^3$ в точке 0 - это ось $Ox$, которая пересекает график в той же точке.
В чём ключевая идея раздела «Геометрический смысл»?
Перескажите главное определение или результат раздела одним предложением.
Физический смысл
Физический смысл
Если $s(t)$ - положение объекта в момент времени $t$, то:
- $v(t) = s'(t)$ - **мгновенная скорость**
- $a(t) = v'(t) = s''(t)$ - **ускорение** (вторая производная)
Свободное падение
s(t) = 4.9t²
$s(t) = 4.9t^2$ метров. **Скорость**: $v(t) = s'(t) = 9.8t$ м/с **Ускорение**: $a(t) = v'(t) = 9.8$ м/с² (постоянно - это $g$!) После 3 секунд: $s(3) = 44.1$ м, $v(3) = 29.4$ м/с.
Скорость автомобиля $v(t) = 20 + 2t$ м/с. Чему равно ускорение?
Ускорение - производная скорости: $a = v'(t) = (20 + 2t)' = 2$ м/с². Скорость растёт на 2 м/с каждую секунду.
Вычисление по определению
Вычисление по определению
Производная x²
Классический пример - тот самый, что Ньютон вычислял первым
Найдём $(x^2)'$ по определению: $$f'(x) = \lim_{h \to 0} \frac{(x+h)^2 - x^2}{h}$$ Раскроем: $$= \lim_{h \to 0} \frac{x^2 + 2xh + h^2 - x^2}{h} = \lim_{h \to 0} \frac{2xh + h^2}{h}$$ Сократим на $h$: $$= \lim_{h \to 0} (2x + h) = 2x$$ $(x^2)' = 2x$. Наклон параболы линейно растёт с $x$.
Производная 1/x
Отрицательная степень
$f(x) = \frac{1}{x}$ $$f'(x) = \lim_{h \to 0} \frac{\frac{1}{x+h} - \frac{1}{x}}{h} = \lim_{h \to 0} \frac{x - (x+h)}{h \cdot x(x+h)}$$ $$= \lim_{h \to 0} \frac{-1}{x(x+h)} = -\frac{1}{x^2}$$ $(1/x)' = -1/x^2$. Функция убывает - производная отрицательна.
При вычислении $(x^3)'$ по определению, что нужно взять как предел?
По определению: $f'(x) = \lim_{h \to 0} \frac{f(x+h) - f(x)}{h}$. Для $f(x) = x^3$ это $\frac{(x+h)^3 - x^3}{h}$.
Таблица производных
Таблица производных
Эти производные нужно **знать наизусть** - они основа любого дифференцирования:
| $f(x)$ | $f'(x)$ | Комментарий |
|---|---|---|
| $c$ (константа) | $0$ | Константа не меняется |
| $x^n$ | $nx^{n-1}$ | Степенное правило |
| $e^x$ | $e^x$ | Уникальна: равна самой себе! |
| $a^x$ | $a^x \ln a$ | Показательная функция |
| $\ln x$ | $\frac{1}{x}$ | Натуральный логарифм |
| $\log_a x$ | $\frac{1}{x \ln a}$ | Логарифм |
| $\sin x$ | $\cos x$ | Сдвиг на $\pi/2$ |
| $\cos x$ | $-\sin x$ | Минус! |
| $\tan x$ | $\frac{1}{\cos^2 x}$ | Или $1 + \tan^2 x$ |
**$e^x$ равна своей производной** - и это не совпадение. Именно поэтому $e^x$ появляется в решениях дифференциальных уравнений (нейросети учатся через ODE), и почему softmax строится на $e^x$.
В чём ключевая идея раздела «Таблица производных»?
Перескажите главное определение или результат раздела одним предложением.
Обозначения производной
Обозначения производной
| Обозначение | Автор | Когда используется |
|---|---|---|
| $f'(x)$, $y'$ | Лагранж | Везде, удобно для функций |
| $\frac{df}{dx}$, $\frac{dy}{dx}$ | Лейбниц | Подчёркивает 'по чему' производная |
| $\dot{y}$, $\ddot{y}$ | Ньютон | Физика (производная по времени) |
| $D_x f$, $Df$ | Оператор | Функциональный анализ |
Обозначение Лейбница $\frac{dy}{dx}$ стало стандартом в ML: $\frac{\partial L}{\partial w}$ - градиент функции потерь по весам - это именно лейбницева нотация.
В чём ключевая идея раздела «Обозначения производной»?
Перескажите главное определение или результат раздела одним предложением.
Дифференцируемость vs непрерывность
Дифференцируемость vs непрерывность
Функция **дифференцируема** в точке, если производная существует (предел конечен). Важное соотношение:
**Обратное неверно.** Функция может быть непрерывной, но не дифференцируемой - именно так устроена ReLU в точке 0.
ReLU и функция |x|
Непрерывны, но не дифференцируемы в нуле
$f(x) = |x|$ непрерывна везде. В точке $x = 0$: - Слева: $\lim_{h \to 0^-} \frac{|h|}{h} = \frac{-h}{h} = -1$ - Справа: $\lim_{h \to 0^+} \frac{|h|}{h} = \frac{h}{h} = +1$ Пределы **различны** - производной нет. Угловая точка. ReLU$(x) = \max(0, x)$ - та же история в $x = 0$. PyTorch берёт субградиент 0 или 1 по соглашению. Обучение работает на практике, потому что мера точки равна нулю.
Если функция непрерывна - она дифференцируема
Непрерывность - необходимое, но не достаточное условие
ReLU, $|x|$, $\sqrt[3]{x}$ в нуле - непрерывны, но не дифференцируемы. Вейерштрасс в 1872 построил функцию, непрерывную везде и нигде не дифференцируемую.
В чём ключевая идея раздела «Дифференцируемость vs непрерывность»?
Перескажите главное определение или результат раздела одним предложением.
Практика
Практика
Вычислите $(x^3)'$ по определению производной
$$f'(x) = \lim_{h \to 0} \frac{(x+h)^3 - x^3}{h}$$ $(x+h)^3 = x^3 + 3x^2h + 3xh^2 + h^3$: $$= \lim_{h \to 0} \frac{3x^2h + 3xh^2 + h^3}{h} = \lim_{h \to 0} (3x^2 + 3xh + h^2) = 3x^2$$ $(x^3)' = 3x^2$ - подтверждает формулу $nx^{n-1}$.
Найдите уравнение касательной к $y = \sqrt{x}$ в точке $x = 4$
Точка касания: $f(4) = 2$, точка $(4, 2)$. Наклон: $f'(4) = \frac{1}{2\sqrt{4}} = \frac{1}{4}$. Уравнение касательной: $$y = 2 + \frac{1}{4}(x - 4) = \frac{1}{4}x + 1$$
Докажите, что $f(x) = x|x|$ дифференцируема в точке $x = 0$
$f(x) = \begin{cases} x^2 & x \geq 0 \\ -x^2 & x < 0 \end{cases}$ **Справа**: $\lim_{h \to 0^+} \frac{h^2}{h} = 0$ **Слева**: $\lim_{h \to 0^-} \frac{-h^2}{h} = \lim_{h \to 0^-} (-h) = 0$ Пределы **равны**: $f'(0) = 0$ - функция дифференцируема. В отличие от $|x|$, функция $x|x|$ 'сглаживает' угол. Аналог: SiLU$(x) = x \cdot \sigma(x)$ - гладкое произведение.
В чём ключевая идея раздела «Практика»?
Перескажите главное определение или результат раздела одним предложением.
Связь с другими темами
Производная - центральное понятие анализа
- Правила дифференцирования — Следующий урок: как вычислять быстро без возврата к определению
- Непрерывность — Дифференцируемость влечёт непрерывность - но ReLU показывает, что обратное неверно
- Интеграл — Интеграл - обратная операция к дифференцированию (фундаментальная теорема анализа)
- Оптимизация — Производная = 0 в экстремумах - основа gradient descent
Итоги
- Производная $f'(x) = \lim_{h \to 0} \frac{f(x+h) - f(x)}{h}$ - мгновенная скорость изменения
- Геометрически: наклон касательной. В ML: направление gradient descent
- Физически: скорость (первая производная), ускорение (вторая)
- Дифференцируемость ⇒ непрерывность (но не наоборот - ReLU пример)
- Таблица: $(x^n)' = nx^{n-1}$, $(e^x)' = e^x$, $(\sin x)' = \cos x$
Вопросы для размышления
- Почему $e^x$ - единственная функция, равная своей производной? Как это связано с решением ОДУ $y' = y$?
- ReLU не дифференцируема в нуле, но PyTorch обучает нейросети с ReLU. Почему это работает?
- Что произойдёт с gradient descent, если функция потерь имеет разрыв?