Дифференциальные уравнения
ОДУ и УЧП на интервью в FAANG
На собеседованиях в Google и Netflix спрашивают: 'как растёт число пользователей?', 'почему рекомендательная система нестабильна?', 'чем размытие изображения отличается от сжатия?'. За каждым вопросом - ОДУ. Логистический рост, уравнение теплопроводности, устойчивость численных схем - это не абстракция, а инструментарий ML-инженера.
- Продуктовая аналитика: S-кривая роста пользователей, прогноз точки насыщения
- ML-инженерия: критический шаг обучения $\alpha < 2/\lambda_{\max}$ для устойчивости градиентного спуска
- Computer vision: гауссово размытие = решение уравнения теплопроводности
- Физика в ML: нейронные ОДУ, диффузионные модели, SDE для генерации
- Численные методы: порядок ошибки Эйлера $O(h)$ vs RK4 $O(h^4)$
Цели урока
- Решать логистическое уравнение роста и находить точку перегиба $K/2$
- Выводить критическое условие на шаг обучения из анализа устойчивости Эйлера для ОДУ
- Объяснять гауссово размытие как решение уравнения теплопроводности
Предварительные знания
- Уравнение с разделяющимися переменными
- Метод Эйлера и Рунге-Кутты для численного решения ОДУ
- Собственные значения матриц и устойчивость линейных систем
Логистический рост: S-кривая
Уравнение: $\dot{N} = rN(1-N/K)$. Решение: $N(t) = \frac{K}{1 + (K/N_0 - 1)e^{-rt}}$. Точка перегиба при $N = K/2$: максимальная скорость роста. После $K/2$ рост замедляется. В ML-контексте: диффузия технологии, рост числа пользователей, кривая обучения модели.
Гауссово размытие как теплопроводность
Уравнение теплопроводности $\frac{\partial u}{\partial t} = k \Delta u$ с начальным условием $u(x,0) = f(x)$. Решение: $u(x,t) = (G_{\sigma} * f)(x)$, где $G_{\sigma}$ - гауссово ядро с $\sigma = \sqrt{2kt}$. Свёртка с гауссом при масштабе $\sigma$ эквивалентна решению уравнения теплопроводности до времени $t = \sigma^2/(2k)$.
Рунге-Кутты 4-го порядка (RK4): четыре промежуточных значения $k_1, k_2, k_3, k_4$, глобальная ошибка $O(h^4)$ - на несколько порядков точнее Эйлера $O(h)$. За каждый шаг: 4 вычисления $f$ vs 1 у Эйлера, но при той же точности шаг RK4 может быть в $10^{3}$ раз крупнее.
Экспоненциальный рост и логистика
На системном дизайне в Google спрашивают: «Как смоделировать рост DAU?» Правильный ответ начинается с ОДУ. Линейный рост dN/dt = r*N даёт N(t) = N_0 * e^(r*t) - это неограниченный экспоненциальный рост. Для реального рынка с ёмкостью K используют логистику: dN/dt = r*N*(1 - N/K). Точка перегиба (максимальная скорость роста) - при N = K/2.
Стратегия на интервью: (1) написать ОДУ, (2) назвать параметры, (3) решить или указать тип (линейное/нелинейное), (4) обсудить устойчивость, (5) предложить численный метод. Это показывает depth of understanding за пределами стандартного ML-стека.
В логистической модели dN/dt = rN(1-N/K) при каком N скорость роста dN/dt максимальна?
В логистической модели dN/dt = rN(1-N/K) скорость роста - парабола по N с нулями в 0 и K. Максимум параболы достигается ровно посередине, при N = K/2.
Устойчивость: собственные числа якобиана
На интервью в DeepMind и Google Brain спрашивают об устойчивости нейросетевого обучения. Ответ сводится к анализу собственных чисел: если собственные числа якобиана системы dw/dt = F(w) имеют отрицательную вещественную часть - равновесие устойчиво. Именно это определяет, сходится ли SGD или взрывается.
Momentum SGD = затухающий осциллятор: d^2w/dt^2 + gamma*dw/dt = -grad L. При gamma = 0 - незатухающие колебания вокруг минимума. При оптимальном gamma = 2*sqrt(lambda_min) - критическое затухание, быстрейшая сходимость.
Какое условие на learning rate обеспечивает устойчивость SGD, если lambda_max(H) = 50?
SGD на квадратичном loss эквивалентен методу Эйлера для ODE dw/dt = -grad L. Устойчивость требует eta * lambda < 2 для каждого собственного значения. Самое жёсткое ограничение даёт lambda_max = 50: eta < 2/50 = 0.04.
Euler vs RK4: порядок ошибки на интервью
На интервью в FAANG по ML-инфраструктуре регулярно спрашивают: «Почему диффузионные модели используют DDIM из 50 шагов, а не 1000?» Ответ - понимание численных методов ОДУ. Эйлер: ошибка O(h), RK4: O(h^4). Для той же точности RK4 требует в 10 раз меньше шагов.
| Метод | Порядок | Вычисл. f/шаг | Аналог в ML |
|---|---|---|---|
| Euler | O(h) | 1 | SGD, базовый DDPM |
| Heun (RK2) | O(h^2) | 2 | DDIM 2-step |
| RK4 | O(h^4) | 4 | DPM-Solver++ |
| Dormand-Prince (RK45) | O(h^4)/адапт. | 6 | scipy dopri5, Neural ODE |
Если метод Эйлера даёт ошибку 0.1 при h=0.1, какую ошибку ожидать от RK4 при том же h?
Метод Рунге-Кутты 4-го порядка имеет глобальную погрешность O(h^4). При h=0.1: 0.1^4 = 0.0001, что на 3 порядка лучше метода Эйлера (O(h)).
Аналогии ОДУ и ML: вопросы с разбором
Почему Gaussian blur - это решение уравнения теплопроводности? Почему attention в трансформерах похож на диффузию по графу? Эти вопросы проверяют глубину понимания и встречаются в research interviews в Google Brain, OpenAI, Meta AI.
| ML-операция | Аналог ОДУ/УЧП | Ключевая связь |
|---|---|---|
| Gaussian blur | Уравнение теплопроводности | G(x,t) - фундаментальное решение heat eq |
| Attention (self) | Диффузия по графу токенов | Усреднение = дискретный шаг du/dt = laplacian(u) |
| L2 регуляризация | Затухание: dw/dt = -lambda*w | Решение w(t) = w_0 * exp(-lambda*t) |
| Learning rate eta | Шаг Эйлера Dt | Условие устойчивости eta < 2/lambda_max(H) |
| Gradient clipping | Ограничение шага | Предотвращение взрыва (instability Эйлера) |
M/M/1 - линейная модель. Реальные системы (GC-паузы, batching, cold cache) нелинейны. При rho=0.7 реальная latency может быть в 3-5 раз хуже теоретической. Всегда добавляйте safety margin.
Почему Gaussian blur с sigma=2 математически эквивалентен решению уравнения теплопроводности?
Гауссово ядро - фундаментальное решение уравнения теплопроводности. Свёртка изображения с гауссом при sigma соответствует эволюции по уравнению теплопроводности до момента t = sigma^2/2.
Критический шаг градиентного спуска
Квадратичная потеря $L(w) = \frac{1}{2}w^T H w$. Уравнение спуска: $\dot{w} = -Hw$. Метод Эйлера: $w_{n+1} = (I - \alpha H)w_n$. Устойчивость: $|1 - \alpha \lambda_i| < 1$ для всех собственных значений $\lambda_i$. Критическое: $\alpha < 2/\lambda_{\max}$. При большем шаге - расходимость.
Итоги
- Логистический рост $N(t) = K/(1+Ce^{-rt})$: перегиб при $K/2$, насыщение при $K$
- Критический шаг $\alpha < 2/\lambda_{\max}$: стандартный результат для GD на квадратичных функциях, следует из устойчивости Эйлера
- Гауссово размытие = решение уравнения теплопроводности: $\sigma = \sqrt{2kt}$ связывает масштаб фильтра и время
Связь с другими темами
Аналогия теплопроводности-размытия работает и в обратную сторону: диффузионные генеративные модели обращают уравнение теплопроводности - из чистого шума (горячего) восстанавливают изображение (холодное). Score matching обучает обратный процесс.
- Связанные темы — развивает
Вопросы для размышления
- Логистическая кривая имеет точку перегиба при $K/2$. Как найти момент времени, когда эта точка достигается?
- Критический шаг $2/\lambda_{\max}$ - условие устойчивости для полного градиентного спуска. Почему для SGD нет такой же чёткой границы?
- Если гауссово размытие - теплопроводность, то резкость (sharpening) - это обратная теплопроводность. Почему последняя численно нестабильна?