Математический справочник

Gradient

Градиент

актуальноТекущий рабочий стандарт

Направления: Основы · Математика

частных , указывающий направление наибыстрейшего роста функции.

Что означает каждый компонент
  • частная производная по первому параметру: как изменится функция, если чуть увеличить только его
  • то же по последнему. Вектор из всех таких производных указывает направление наискорейшего роста

Ключевые тезисы

  • Обучение = движение против .
  • В минимуме равен нулю.
  • Нулевой или взрывной — типичная причина, почему сеть не учится.

Какую задачу решает

— это частных функции по всем её аргументам. Геометрически он указывает направление наискорейшего роста, а его длина показывает крутизну. Отсюда весь градиентный спуск: чтобы уменьшить функцию, идём против градиента.

В машинном обучении считается не по входу, а по параметрам модели: он говорит, как изменится ошибка, если чуть подвинуть каждый вес. Миллионы таких получаются за один обратный проход благодаря правилу цепочки — и именно эта вычислительная возможность, а не сама идея, сделала глубокое обучение практичным.

Диагностика по нормам градиента

Выведите по каждому слою на нескольких шагах обучения. Здоровая картина: значения одного порядка по всей глубине, скажем от до . Если у первых слоёв , а у последних — затухает, и нижняя часть сети фактически не обучается: нужны , или другая . Если где-то — взрывается, помогут обрезка и меньшая . Эта проверка занимает пять строк кода и объясняет большинство случаев «сеть не учится».

Подробный разбор

2 подтемы — объяснения, формулы, примеры и интерактивные графики.

  • Указывает направление наискорейшего роста; шаг делается против него.
  • Перпендикулярен линиям уровня функции.
  • В точке минимума равен нулю — но нулевой бывает и в седле, и в максимуме.
-6-226100204060wL(w)минимум
шаг обучения η0.20
текущий x1.767
f(x)1.054
градиент-0.467
статусидёт
Значение градиента показано на панели: у минимума оно стремится к нулю

Autograd строит операций во время прямого прохода, а затем обходит его в обратном порядке, применяя правило цепочки. Это не численное дифференцирование (нет ошибки аппроксимации) и не символьное (нет разрастания выражений).

x = torch.tensor([2.0], requires_grad=True)
y = x ** 3 + 2 * x
y.backward()
print(x.grad)     # 3x² + 2 = 14
Градиент считается точно, а не приближённо

Где применяется

  • Обучение моделейОснова и всех его вариантов.
  • Интерпретация по входу показывает, какие пиксели или сильнее влияют на ответ.
  • Малое изменение входа вдоль меняет предсказание модели.
  • Диагностика обучения по слоям показывает, где он затухает или взрывается.

Плюсы, минусы и альтернативы

Плюсы

  • Даёт направление улучшения, а не только значение функции.
  • Вычисляется автоматически для произвольного дифференцируемого кода.
  • Стоимость обратного прохода сравнима с прямым независимо от числа параметров.
  • — дешёвый и информативный диагностический сигнал.

Минусы

  • Только для дифференцируемых функций.
  • Локальная информация: ничего не говорит о глобальном устройстве функции.
  • Затухает и взрывается на длинных цепочках вычислений.
  • В точках плато и седловых точках почти нулевой, хотя оптимум не достигнут.

Брать, если

  • Обучается любая дифференцируемая модель.
  • Нужно понять чувствительность выхода к входу.
  • Диагностируется проблема с обучением сети.

Не брать, если

  • Функция недифференцируема или доступна как чёрный ящик.
  • Параметров единицы, а вычисление дорогое: проще численный .

Чем заменяют

Видеолекции

Записи университетских курсов, где эта тема звучит. Ссылка открывает запись с той секунды, где о ней говорят, — искать по трёхчасовой лекции не нужно.

Связанные темы

Аппарат анализа · Градиенты и производные

Calculus97%

Математический анализ · Основы

Производные показывают, как изменится ошибка при малом изменении параметра. Именно это делает возможным градиентное обучение.

Hessian97%

Гессиан · Математический справочник

Матрица вторых производных, описывающая локальную кривизну функции.

Backpropagation97%

Обратное распространение ошибки · Глубокое обучение

Эффективное вычисление градиентов по всем параметрам сети за один обратный проход с помощью правила цепочки.

Limits and Continuity85%

Пределы и непрерывность · Математический анализ

Предел описывает, к чему стремится функция вблизи точки. На этом понятии держатся производная, интеграл и вся теория сходимости алгоритмов.

Derivative85%

Производная · Математический анализ

Скорость изменения функции: предел отношения приращения функции к приращению аргумента. Геометрически — наклон касательной.

Differentiation Rules85%

Правила дифференцирования · Математический анализ

Сумма, произведение, частное и композиция — четыре правила, которых достаточно, чтобы продифференцировать почти любую функцию потерь вручную.

Taylor Series85%

Ряд Тейлора · Математический анализ

Приближение функции многочленом по производным в точке. Инструмент, которым обосновывают почти все методы оптимизации.

Multivariable Calculus85%

Многомерный анализ · Математический анализ

Функции многих переменных: частные производные, градиент, производная по направлению и линии уровня.

Jacobian85%

Якобиан · Математический анализ

Матрица частных производных векторной функции. Описывает, как преобразование растягивает пространство локально.

Lagrange Multipliers85%

Множители Лагранжа · Математический анализ

Метод условной оптимизации: минимизировать функцию при ограничениях, не решая их подстановкой.

Convexity85%

Выпуклость · Математический анализ

Свойство функции, гарантирующее единственность минимума и сходимость градиентных методов.

Numerical Differentiation85%

Численное дифференцирование · Математический анализ

Приближение производной конечными разностями: медленно и неточно, но незаменимо для проверки аналитических градиентов.

Series and Convergence85%

Ряды и сходимость · Математический анализ

Когда бесконечная сумма имеет конечное значение и с какой скоростью алгоритм приближается к ответу.

Integral85%

Интеграл · Математический анализ

Определённый интеграл — площадь под кривой, неопределённый — обратная операция к дифференцированию. В ML интеграл почти всегда означает математическое ожидание.

Differential Equations85%

Дифференциальные уравнения · Математический анализ

Уравнения, связывающие функцию с её производными. Описывают динамику — от роста популяций до обратного процесса в диффузионных моделях.

Gradient Descent80%

Градиентный спуск · Оптимизация обучения

Итеративный шаг против градиента функции потерь — базовый алгоритм обучения.

Numerical Methods80%

Численные методы · Основы

Компьютер считает приближённо. Понимание точности float, устойчивости и обусловленности спасает от NaN и «необъяснимых» расхождений.

Кому эта тема нужна

Профильная компетенция для роли: Исследователь.

Усиливает профиль: ML Engineer.

Следующий шагДальше по связи: CalculusПроизводные показывают, как изменится ошибка при малом изменении параметра. Именно это делает возможным градиентное обучение.Перейти →

Глава «Математический справочник» последний раз правилась . Нашли ошибку — напишите.