Математический анализ

Понятие производной

Цели урока

  • Понять производную как предел отношения приращений
  • Интерпретировать производную геометрически (касательная) и физически (скорость)
  • Вычислять производные по определению
  • Различать дифференцируемость и непрерывность
  • Понимать, почему ReLU не дифференцируема в нуле и чем это грозит

Предварительные знания

  • Понятие предела функции
  • Вычисление пределов
  • Непрерывность функции
  • The Concept of a Limit
  • Computing Limits
  • Continuity of a Function

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, если функция потерь имеет разрыв?

Связанные уроки

  • ml-09-gradient-descent
  • stat-03-mle
Понятие производной

0

1

Войти