Информационная геометрия
Натуральный градиент в нейронных сетях
SGD движется в евклидовом пространстве параметров. Но параметры нейросети определяют вероятностные распределения - многообразие с ненулевой кривизной. Натуральный градиент Амари движется именно по этой кривизне и на практике сходится в разы быстрее: DeepMind получил ускорение в 10× на AlphaGo Zero, Google использует K-FAC в AlphaFold 2.
- K-FAC (DeepMind): натуральный градиент для AlphaGo Zero - сходимость в 10 раз быстрее SGD; применяется также в AlphaFold 2 для структурной биологии
- TRPO/PPO в RL: ограничение на KL-дивергенс между политиками = шаг в метрике Фишера; гарантия монотонного улучшения без откатов
- Adam оптимизатор: деление на sqrt(v_t) аппроксимирует диагональ матрицы Фишера - диагональное приближение натурального градиента
- Байесовская оптимизация: геометрия пространства распределений для эффективной выборки следующей точки в AutoML-системах
Предварительные знания
- Матрица Фишера
- Риманова геометрия
- SGD и Adam
Натуральный градиент Амари
Матрица Фишера F(θ) задаёт риманову метрику на многообразии вероятностных распределений. Для семейства p(x|θ) элемент F_{ij}(θ) = E[∂_i log p · ∂_j log p]. Геометрически: F(θ) аппроксимирует KL-дивергенс в малой окрестности θ как квадратичную форму. Натуральный градиент - это градиент в этой риманновой метрике, а не в евклидовой.
Инвариантность к репараметризации - ключевое свойство натурального градиента: ∇̃L = F(θ)^{-1}∇L не зависит от конкретного способа описания параметров, только от самого многообразия распределений. Перепишите веса сети в других координатах - натуральный шаг останется геометрически тем же.
DeepMind применяет K-FAC для обучения AlphaGo Zero: сходимость в 10 раз быстрее SGD. Google использует K-FAC в AlphaFold 2. TRPO в обучении с подкреплением использует натуральный градиент с ограничением на KL-дивергенс - гарантия монотонного улучшения политики.
Что делает натуральный градиент Амари с обычным градиентом функции потерь?
Натуральный градиент: ∇̃L = F(θ)^{-1}∇L. Матрица Фишера F задаёт риманову метрику, учитывающую кривизну пространства вероятностных распределений. Метод Ньютона использует гессиан потерь, натуральный градиент - геометрически обоснованную матрицу Фишера.
K-FAC и TRPO: натуральный градиент на практике
K-FAC (Kronecker-Factored Approximate Curvature) аппроксимирует блочно-диагональную структуру матрицы Фишера по слоям. Для слоя l матрица Фишера F_l аппроксимируется кронекеровским произведением A_l ⊗ G_l, где A_l = E[a_{l-1}a_{l-1}^T] - ковариация входных активаций, G_l = E[g_l g_l^T] - ковариация градиентов предактиваций. Это позволяет инвертировать F_l эффективно без явного хранения матрицы d×d.
Adam-оптимизатор делит градиент на sqrt(v_t), где v_t - EMA квадратов градиентов. Это аппроксимирует диагональ матрицы Фишера. K-FAC захватывает все корреляции внутри слоя. Полная (необрезанная) матрица Фишера - это идеальный предобуславливатель, но вычислительно неосуществимый при d > 10^6.
Какое свойство кронекерова произведения делает K-FAC вычислительно эффективным?
Ключевое тождество K-FAC: (A_l ⊗ G_l)^{-1} = A_l^{-1} ⊗ G_l^{-1}. Это позволяет инвертировать матрицу размера (d_in·d_out)² через инверсию двух матриц размера d_in² и d_out² соответственно, снижая стоимость с O((d_in·d_out)^3) до O(d_in^3 + d_out^3).
Связи с другими темами
Натуральный градиент объединяет оптимизацию нейросетей, дифференциальную геометрию и информационную теорию.
- Метод Ньютона — Связанная тема
- TRPO и PPO — Связанная тема
- EM-алгоритм — Связанная тема
Итоги
- F(θ) = E[∇log p · ∇log p^T]: риманова метрика, аппроксимирующая 2·KL-дивергенс в окрестности θ
- Натуральный градиент: θ_{t+1} = θ_t − η·F(θ)^{-1}·∇L - наискорейший спуск в KL-геометрии
- Инвариантность к репараметризации: натуральный градиент зависит только от многообразия распределений
- K-FAC: F_l ≈ A_l ⊗ G_l; обращение за O(d_{in}^3 + d_{out}^3) вместо O((d_{in}·d_{out})^3)
- TRPO использует ограничение на KL, эквивалентное ограниченному шагу в метрике Фишера