Градиент

Материал из MachineLearning.

Версия от 04:19, 17 июля 2026; Nikita Elкhin (Обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Градиент (от лат. gradiens, род. падеж gradientis — шагающий, растущий) — векторная величина, определяющая направление наискорейшего возрастания некоторой скалярной функции общего вида, а также ее модуль (скорость этого возрастания).

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

Содержание

Определение

Пусть в некоторой области евклидова пространства \mathbb{R}^n задана скалярная функция f(x) = f(x_1, x_2, \dots, x_n), дифференцируемая в точке x.

Градиентом функции f(x) в точке x называется n-мерный вектор, компонентами которого являются частные производные функции f по всем пространственным переменным.

Для обозначения градиента используются оператор набла (\nabla) или явная запись \text{grad}.

\nabla f(x) = \text{grad}\, f(x) = \begin{pmatrix} \frac{\partial f}{\partial x_1} \\ \frac{\partial f}{\partial x_2} \\ \vdots \\ \frac{\partial f}{\partial x_n} \end{pmatrix}

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

Геометрический и физический смысл

Градиент обладает двумя фундаментальными геометрическими свойствами в любой точке, где он не равен нулю:

  1. Направление наискорейшего роста: Градиент функции в точке x ортогонален гиперповерхности уровня (линии уровня для n=2), проходящей через эту точку, и направлен в сторону максимального увеличения значений функции. Соответственно, антиградиент (-\nabla f(x)) указывает направление наискорейшего убывания функции.
  2. Скорость роста: Длина вектора \| \nabla f(x) \|_2 в евклидовой метрике численно равна максимальной скорости изменения функции в данной точке по направлению.

Связь с производной по направлению

Пусть v — единичный вектор направления в \mathbb{R}^n, удовлетворяющий условию \|v\| = 1. Производная функции по направлению v вычисляется как скалярное произведение градиента на этот вектор:

\frac{\partial f}{\partial v} = \langle \nabla f(x), v \rangle = \| \nabla f(x) \| \cdot \| v \| \cdot \cos \theta = \| \nabla f(x) \| \cos \theta

где \theta — угол между вектором градиента и вектором направления. Очевидно, что производная по направлению принимает максимальное значение, когда \cos \theta = 1, то есть при v = \frac{\nabla f(x)}{\| \nabla f(x) \|}.

Основные свойства

Для любых дифференцируемых функций многих переменных f(x),\, g(x) и константы c \in \mathbb{R} справедливы следующие свойства:

  1. Линейность:
    \nabla (c \cdot f) = c \cdot \nabla f
    \nabla (f + g) = \nabla f + \nabla g
  2. Дифференцирование произведения (правило Лейбница):
    \nabla (fg) = f \nabla g + g \nabla f
  3. Дифференцирование частного:
    \nabla \left(\frac{f}{g}\right) = \frac{g \nabla f - f \nabla g}{g^2}, \quad g(x) \neq 0
  4. Градиент сложной функции (Chain rule):
    Если h(u) — дифференцируемая функция одной переменной, а u = f(x), то:
    \nabla (h \circ f)(x) = h'(f(x)) \cdot \nabla f(x)

Важные матричные градиенты

Пусть заданы векторы x, a \in \mathbb{R}^n, а также матрица оператора A \in \mathbb{R}^{n \times n}. В матричном исчислении часто используются следующие аналитические выражения:

  • Градиент линейной формы:
\nabla_x (a^T x) = a
  • Градиент квадратичной формы:
\nabla_x (x^T A x) = (A + A^T)x

Если матрица A симметрична (A = A^T), то:

\nabla_x (x^T A x) = 2Ax

Применение в машинном обучении

В задачах обучения с учителем (Supervised Learning) качество алгоритма оценивается гладкой (или кусочно-гладкой) функцией потерь Q(w), зависящей от вектора настраиваемых параметров (весов) w.

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

  1. Градиентный спуск (Gradient Descent): Итерационный процесс обновления весов по правилу:
    w^{(k+1)} = w^{(k)} - \eta \nabla Q(w^{(k)})
    где \eta > 0темп обучения (learning rate).
  2. Стохастический градиентный спуск (SGD): Оценка истинного градиента \nabla Q(w) по одному объекту или подвыборке (mini-batch), что критически важно при работе со сверхбольшими массивами данных.
  3. Оптимизаторы высших порядков: Использование градиента совместно с матрицей вторых частных производных (Гессианом H) в методе Ньютона-Рафсона, либо его квазиньютоновских аппроксимациях (BFGS, L-BFGS).

См. также

Литература

  1. Кудрявцев Л. Д. Курс математического анализа. — М.: Высшая школа, 2003. — Т. 2.
  2. Борис Т. Поляк. Введение в оптимизацию. — М.: Наука, 1983.
  3. Goodfellow I., Bengio Y., Courville A. Deep Learning. — MIT Press, 2016.
Личные инструменты