Безградиентная оптимизация
Материал из MachineLearning.
Безградиентная оптимизация.
Содержание |
Введение
Безградиентная оптимизация (также известная как производная-свободная оптимизация, англ. Derivative-Free Optimization, DFO, или оптимизация нулевого порядка, англ. Zero-Order Optimization, ZO) — класс методов численной оптимизации, предназначенных для решения задач минимизации или максимизации целевой функции, когда аналитическое выражение для её градиента (или производных более высоких порядков) недоступно, не существует или его вычисление сопряжено с чрезмерно высокими вычислительными затратами.
Математическая постановка задачи записывается в классическом виде:
где
— целевая функция (вообще говоря, не обязательно выпуклая или гладкая). Доступ к функции осуществляется исключительно через оракул нулевого порядка (Zero-Order Oracle), который возвращает значение
в любой запрашиваемой точке
, но не предоставляет информацию о производных.
Исторический контекст и терминология
Исторически в математическом программировании закрепился термин Derivative-Free Optimization (DFO). В рамках численных методов под DFO чаще всего понимают детерминированные локальные методы (такие как методы прямого поиска или доверительных областей), разработанные для оптимизации ресурсоёмких («тяжёлых») детерминированных функций (например, при аэродинамическом проектировании).
В сообществе машинного обучения чаще используется термин Zero-Order Optimization (ZO). Этот термин подчёркивает теоретическую модель доступа к информации (нулевой оракул) и обычно ассоциируется со стохастической оптимизацией, методами случайного поиска и аппроксимацией градиента на основе случайных направлений в задачах высокой размерности. В данной статье эти термины будут рассматриваться как взаимодополняющие аспекты единой области знаний.
Мотивация: почему градиентные методы неприменимы?
Классические методы первого порядка (например, градиентный спуск, L-BFGS, Adam) лежат в основе современного машинного обучения. Однако существует широкий класс задач, где их применение невозможно или нецелесообразно по следующим причинам:
- Отсутствие аналитического выражения: Функция
может задаваться в виде сложного программного симулятора, физического эксперимента или закрытого проприетарного API (например, оценка качества генерации большой языковой модели через сторонний сервис).
- Недифференцируемость: Целевая функция может содержать разрывы, кусочно-постоянные участки или быть существенно негладкой (например, ступенчатые функции потерь, операции квантования в нейронных сетях).
- Экстремальный шум: Измерения целевой функции могут быть подвержены сильному стохастическому шуму
, из-за чего численное дифференцирование классическими методами (такими как конечные разности) приводит к катастрофической потере точности.
- Вычислительная сложность градиента: В некоторых задачах вычисление точного градиента с помощью автоматического дифференцирования (backpropagation) требует огромного объёма памяти или времени, превышающего затраты на многократное вычисление самой функции.
Классификация безградиентных методов
Современные безградиентные методы можно разделить на пять ключевых классов в зависимости от используемой математической парадигмы.
1. Методы прямого поиска (Direct Search)
Эти методы не пытаются аппроксимировать градиент или строить локальную модель функции. Они принимают решения о направлении шага исключительно на основе непосредственного сравнения значений целевой функции в некотором наборе точек.
- Метод Нелдера-Мида (метод деформируемого многогранника): Использует геометрическую фигуру — симплекс из
вершин. На каждом шаге худшая вершина отображается, растягивается или сжимается относительно центра тяжести остальных вершин. Метод эвристический, но крайне эффективен для малых размерностей (
).
- Методы координатного спуска (Coordinate Descent): Последовательная одномерная оптимизация вдоль базисных векторов без вычисления производных.
- Методы обобщённого паттерного поиска (Generalized Pattern Search, GPS): Исследуют пространство вдоль адаптивной сетки (шаблона), шаг которой уменьшается при неудаче и увеличивается при успешном нахождении точки с меньшим значением функции.
2. Модельно-ориентированные методы (Model-Based / Surrogate Methods)
Методы этого класса строят локальное или глобальное приближение целевой функции (суррогатную модель) по имеющемуся набору точек, после чего оптимизируют эту модель, аналитическое выражение для которой известно.
- Методы доверительных областей (Trust-Region DFO): Строится локальная квадратичная модель
в окрестности текущей точки
с помощью полиномиальной интерполяции. Оптимизация модели производится внутри некоторого радиуса (доверительной области)
недифференцируема. Её сглаженная версия
с параметром сглаживания
определяется как математическое ожидание:
где
— случайный вектор, распределённый по стандартному нормальному закону
или равномерно на единичной сфере
.
Важнейшее свойство сглаженной функции заключается в том, что она является дифференцируемой (даже если
была разрывной), а её точный градиент выражается через интеграл, зависящий только от значений исходной функции
.
Одноточечная оценка градиента
Если на каждой итерации доступен запрос значения функции только в одной точке, используется одноточечная оценка (one-point estimator):
где
равномерно распределён на единичной сфере
. Данная оценка является несмещённой для градиента сглаженной функции:
, которая не стремится к нулю при
велико.
Двухточечная оценка градиента
Если в рамках одной итерации можно вычислить значение функции дважды, применяется двухточечная оценка (two-point estimator):
Эта оценка также является несмещённой:
вместо
) и стремится к нулю при
подставляется в стандартный шаг обновления параметров (например, стохастический градиентный спуск):
где
— темп обучения (learning rate). Аналогично могут быть адаптированы методы с импульсом (Momentum) и адаптивным шагом (ZO-Adam, ZO-AdaGrad).
Сравнительный анализ классов методов
Ниже представлена сравнительная таблица основных классов безградиентных методов:
| Класс методов | Требуется модель функции? | Число вызовов | Масштабируемость по размерности | Теоретические гарантии | Основные области применения |
|---|---|---|---|---|---|
| Методы прямого поиска (Нелдер-Мид и др.) | Нет | Низкое ( | Низкая ( | Слабые (локальная сходимость) | Низкоразмерная детерминированная оптимизация, инженерное проектирование. |
| Модельно-ориентированные (Trust-Region) | Да (квадратичная, радиальные базисные функции) | Низкое к среднему | Средняя (
|

