Проблема шумных градиентов
В обучении моделей с латентными переменными (например, в вариационных автоэнкодерах или байесовских нейросетях) часто требуется оценивать градиенты математического ожидания. Прямая оценка через выборку (Sampling) приводит к высокой дисперсии градиентов, что делает обучение нестабильным и медленным. Стандартный подход score-function estimator (или REINFORCE) страдает от этого недостатка.
Суть репараметризации
Ключевая идея трюка репараметризации заключается в том, чтобы выразить случайную переменную z как детерминированную функцию параметров распределения θ и независимой шумовой переменной ε. Формально: z = g(ε; θ), где ε ~ p(ε).
Это позволяет перенести источник случайности из узла, требующего дифференцирования, в отдельный входной сигнал. В результате градиенты можно вычислять через стандартное обратное распространение ошибки (backpropagation), так как операция становится дифференцируемой по θ.
Сравнение подходов
Ниже приведена сравнительная таблица методов оценки градиентов:
| Характеристика | Score-Function (REINFORCE) | Reparameterization Trick |
|---|---|---|
| Источник случайности | Внутри вычислительного графа | Вынесен за пределы графа (ε) |
| Дисперсия градиентов | Высокая | Низкая / Нулевая (при идеальной модели) |
| Дифференцируемость | Требует специальных операторов | Совместим с Backpropagation |
| Примеры распределений | Любые (дискретные/непрерывные) | Только непрерывные (Гаусс, Uniform) |
Практическая значимость
Использование репараметризации критически важно для:
- Variational Autoencoders (VAE): Позволяет эффективно обучать кодировщик, оптимизируя вариационную нижнюю границу (ELBO).
- Bayesian Deep Learning: Делает возможным использование стохастического градиентного спуска в байесовских сетях.
- Reinforcement Learning: Ускоряет сходимость в задачах с непрерывным пространством действий.
Таким образом, репараметризация — это не просто математический трюк, а фундаментальный механизм, позволяющий применять мощные оптимизаторы на основе градиентов к стохастическим моделям.
Источник: Towards Data Science ↗