Дифференциальные уравнения

ОДУ и УЧП в машинном обучении

Neural ODE заменяет дискретные слои нейросети непрерывной динамикой - при этом вся глубина сети требует O(1) памяти для обратного распространения. PINN решают PDE без сетки. Диффузионные модели генерируют изображения через обращение стохастического дифференциального уравнения. Это объединение ML и классических ОДУ/УЧП - одно из ключевых направлений 2020х годов.

  • Генерация изображений: DDPM как дискретизация SDE $dx = f(x,t)dt + g(t)dW$
  • Физика: PINN решают уравнения Навье-Стокса, Шрёдингера, Максвелла без сетки
  • Молекулярная динамика: Neural ODE для моделирования траекторий молекул
  • Биология: SDE для популяционной динамики со случайными вспышками
  • Финансы: геометрическое броуновское движение $dS = \mu S dt + \sigma S dW$ для опционов

Цели урока

  • Понимать Neural ODE как непрерывный предел residual-сети и применять adjoint-метод для $O(1)$-памяти
  • Строить PINN: потеря из PDE-невязки и граничных условий, минимизация через автодифференцирование
  • Интерпретировать DDPM как дискретизацию SDE и связывать score-функцию с ланжевеновой динамикой

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

  • Задача Коши для ОДУ: существование и единственность
  • Стохастическое исчисление Ито: $dX = f(X,t)dt + g(t)dW$
  • Автодифференцирование и backpropagation

Neural ODE и adjoint-метод

Neural ODE: $\dot{h}(t) = f_\theta(h(t), t)$, $h(T) = \mathrm{ODESolve}(f_\theta, h_0, T)$. Это непрерывный аналог residual-блока. Adjoint-метод вычисляет $\frac{\partial L}{\partial \theta}$ и $\frac{\partial L}{\partial h_0}$ через дополнительное ОДУ на $a(t) = \frac{\partial L}{\partial h(t)}$: $\dot{a} = -a^T \frac{\partial f}{\partial h}$. Требуется $O(1)$ памяти независимо от числа шагов интегрирования.

PINN: физически-информированные нейросети

PINN минимизирует $L = L_{PDE} + L_{BC} + L_{data}$, где $L_{PDE} = \|\mathcal{N}[u_\theta]\|^2$ - невязка в коллокационных точках, $L_{BC}$ - ошибка граничных условий. Автодифференцирование вычисляет $\frac{\partial u_\theta}{\partial x}$ и $\frac{\partial^2 u_\theta}{\partial x^2}$ точно. Не нужна сетка: точки выбираются случайно.

Диффузионные модели как SDE

DDPM прямой процесс: $q(x_t|x_{t-1}) = \mathcal{N}(\sqrt{1-\beta_t}x_{t-1}, \beta_t I)$ - дискретизация $dx = -\frac{\beta}{2}xdt + \sqrt{\beta}dW$. Обратный процесс: $p_\theta(x_{t-1}|x_t)$ - обращение SDE через score-функцию $\nabla_x \log p(x)$. Score matching обучает $s_\theta(x,t) \approx \nabla_x \log p_t(x)$ - уравнение ланжевеновой динамики.

Neural ODEs

Chen et al., NeurIPS 2018: вместо стека дискретных слоёв ResNet определяет непрерывную динамику dh/dt = f(h(t), t, theta), где f - нейросеть. Выход - решение ОДУ при t=T. ResNet с L слоями - это метод Эйлера с шагом Deltat=1 для этого же уравнения. Neural ODE - предельный переход L->inf.

Ключевое число: Neural ODE с 64 скрытыми единицами требует 400 параметров против 3200 у ResNet-4. При одинаковой точности на MNIST - разница в 8 раз по памяти.

Adjoint метод: градиент вычисляется через сопряжённое ОДУ da/dt = -a(t)^T (df/dh), решаемое назад по времени. Не нужно хранить промежуточные h(t) - только начало и конец. Для RNN с T шагами память O(T); для Neural ODE - O(1) независимо от числа шагов интегратора.

Neural ODE плохо работает для изображений напрямую - нет аналога свёрток. Лучшие применения: нерегулярные временные ряды (PhysioNet), нормирующие потоки (FFJORD), латентная динамика в Latent ODE.

Почему adjoint метод в Neural ODE экономит память по сравнению с backprop через шаги интегратора?

Adjoint метод вычисляет градиенты, решая вспомогательное (сопряжённое) ОДУ в обратном времени. Это требует O(1) памяти вместо O(T) для хранения всей траектории при backprop через шаги интегратора.

Physics-Informed Neural Networks

Raissi et al., 2019: нейросеть u(x,t;theta) обучается удовлетворять уравнению в частных производных как части функции потерь. Никакой сетки - только точки коллокации. NVIDIA и Google используют PINN для термического управления чипами, где перестройка FEM-сетки при каждом изменении геометрии обходится дорого.

Слабое место PINN: медленная сходимость при резких фронтах (малое nu в уравнении Бюргерса, ударные волны). Активные исследования 2023-2025: curriculum learning по точкам коллокации, hp-PINN с адаптивным выбором точек, causality-respecting training.

Как PINN включает уравнение в частных производных в процесс обучения без конечно-разностной сетки?

PINN обучается без сетки: уравнение PDE проверяется в случайных точках (коллокационных), где невязка минимизируется через автодифференцирование. Это позволяет работать в произвольных областях без конечно-разностной или конечно-элементной дискретизации.

Диффузионные модели как СДУ

Song et al., 2021: DDPM и Score Matching - дискретизации стохастических дифференциальных уравнений. Прямой процесс (зашумление): dx = f(x,t)dt + g(t)dW. Обратный процесс (генерация): dx = [f - g^2 * score(x,t)]dt + g*dW_bar, где score(x,t) = nabla_x log p_t(x).

Три интерпретации DDPM: (1) иерархическая вариационная автоэнкодер-цепочка, (2) score matching при разных масштабах шума, (3) дискретизация СДУ Ланжевена. Perspective Song 2021 объединяет все три и позволяет использовать произвольные SDE-солверы - DDIM, DPM++, EDM.

Что предсказывает нейросеть eps_theta в DDPM и как это связано со score function?

Сеть eps_theta предсказывает шум, которым x_0 был искажён до x_t. Score function - градиент log-плотности - пропорционален отрицательному предсказанному шуму, масштабированному на sqrt(1 - alpha_bar_t).

Мосты Шрёдингера

DDPM переносит данные в белый шум N(0,I). Мост Шрёдингера решает другую задачу: найти наиболее вероятный стохастический процесс, переносящий одно произвольное распределение p_0 в другое p_1 при минимуме KL-дивергенции от опорного процесса. DeepMind и FAIR используют это для image-to-image трансляции и single-cell RNA-seq (эволюция клеток во времени).

МетодОткудаКудаКлючевая идея
DDPMданные x_0N(0,I)score matching + SDE
Flow Matchingданные x_0N(0,I)детерминированное поле скоростей
Schrodinger Bridgep_0 (любое)p_1 (любое)оптимальный транспорт + IPFP
Neural ODE (NF)данныеN(0,I)непрерывный normalizing flow

Преимущество над conditional GAN: нет коллапса мод, нет adversarial training нестабильности, лучший OOD перенос. Недостаток: IPFP требует итеративного обучения двух сетей поочерёдно - медленнее, чем DDPM.

Чем мост Шрёдингера принципиально отличается от DDPM?

DDPM обязательно проходит через N(0,I) как промежуточное распределение. Мост Шрёдингера находит оптимальный стохастический транспорт напрямую между любыми p_0 и p_1, не требуя фиксированного шума.

Итоги

  • Neural ODE: непрерывная динамика $\dot{h} = f_\theta(h,t)$; adjoint-метод даёт $O(1)$-память для градиентов
  • PINN: потеря = PDE-невязка + граничные условия; автодифф вычисляет производные без сетки
  • Диффузионные модели = SDE прямой/обратный процесс; обратный определяется score-функцией $\nabla \log p$

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

Neural ODE объединяет динамические системы и глубокое обучение. Схема адъюнктов используется также в оптимальном управлении (уравнение Гамильтона-Якоби-Беллмана). Мосты Шрёдингера дают оптимальный транспорт в вероятностном смысле - обобщение диффузионных моделей.

  • Связанные темы — развивает

Вопросы для размышления

  • Почему adjoint-метод требует O(1) памяти, хотя стандартный backprop требует хранить все промежуточные состояния?
  • PINN могут плохо работать при резких изменениях решения (ударные волны). Почему и как можно это исправить?
  • Score-функция $\nabla_x \log p(x)$ ненормирована. Как score matching обучает её без знания нормировочной константы?

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

  • nm-15
ОДУ и УЧП в машинном обучении

0

1

Войти