Безградиентная оптимизация

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

(Различия между версиями)
Перейти к: навигация, поиск
(Новая: {{Статья | название = Безградиентная оптимизация | категория = Методы оптимизации | авторы ...)
 
(1 промежуточная версия не показана)
Строка 1: Строка 1:
-
{{Статья
+
= Безградиентная оптимизация
-
| название = Безградиентная оптимизация
+
-
| категория = Методы оптимизации
+
-
| авторы = Редакторы MachineLearning.ru
+
-
}}
+
-
__TOC__
+
'''Безградиентная оптимизация''' (Derivative-Free Optimization, DFO) — совокупность методов решения задач минимизации (или максимизации) функции, не требующих аналитического вычисления её производных. В более узком смысле выделяют '''Zero-Order оптимизацию''' (ZO), которая полагается исключительно на значения целевой функции для построения оценок градиента, как правило, с помощью случайных конечных разностей. Статья обобщает и систематизирует современные подходы, связывая их с классическими разделами [[Численная оптимизация|численной оптимизации]], [[Стохастическая оптимизация|стохастической оптимизации]], [[Эволюционные алгоритмы|эволюционных алгоритмов]] и [[Байесовская оптимизация|байесовской оптимизации]].
-
== Введение ==
+
== Мотивация и постановка задачи ==
-
'''Безградиентная оптимизация''' (также известная как ''производная-свободная оптимизация'', англ. ''Derivative-Free Optimization, DFO'', или ''оптимизация нулевого порядка'', англ. ''Zero-Order Optimization, ZO'') — класс методов численной [[оптимизация|оптимизации]], предназначенных для решения задач минимизации или максимизации целевой функции, когда аналитическое выражение для её [[градиент|градиента]] (или производных более высоких порядков) недоступно, не существует или его вычисление сопряжено с чрезмерно высокими вычислительными затратами.
+
-
Математическая постановка задачи записывается в классическом виде:
+
Классическая постановка задачи безградиентной оптимизации —
-
<tex>\min_{x \in \mathbb{R}^d} f(x),</tex>
+
<tex>\min_{x\in\mathbb{R}^d} f(x),</tex>
-
где <tex>f: \mathbb{R}^d \to \mathbb{R}</tex> — целевая функция (вообще говоря, не обязательно выпуклая или гладкая). Доступ к функции осуществляется исключительно через оракул нулевого порядка (''Zero-Order Oracle''), который возвращает значение <tex>f(x)</tex> в любой запрашиваемой точке <tex>x</tex>, но не предоставляет информацию о производных.
+
где целевая функция <tex>f:\mathbb{R}^d \to \mathbb{R}</tex> доступна лишь через «оракул нулевого порядка»: для любого <tex>x</tex> можно получить (возможно, зашумлённое) значение <tex>f(x)</tex>, но не её градиент. Подобная ситуация возникает, когда
-
=== Исторический контекст и терминология ===
+
* <tex>f(x)</tex> задана чёрным ящиком (проприетарное ПО, физический эксперимент, сложная симуляция);
-
Исторически в математическом программировании закрепился термин '''Derivative-Free Optimization (DFO)'''. В рамках численных методов под DFO чаще всего понимают детерминированные локальные методы (такие как методы прямого поиска или доверительных областей), разработанные для оптимизации ресурсоёмких («тяжёлых») детерминированных функций (например, при аэродинамическом проектировании).
+
* модель реализована в виде API (большие языковые модели, облачные сервисы);
 +
* функция потерь принципиально недифференцируема (ранжирование, метрики качества);
 +
* требуется атаковать обученную модель в режиме чёрного ящика;
 +
* вычисление градиента требует чрезмерных затрат памяти или нарушает конфиденциальность данных (федеративное обучение).
-
В сообществе [[Машинное обучение|машинного обучения]] чаще используется термин '''Zero-Order Optimization (ZO)'''. Этот термин подчёркивает теоретическую модель доступа к информации (нулевой оракул) и обычно ассоциируется со стохастической оптимизацией, методами случайного поиска и аппроксимацией градиента на основе случайных направлений в задачах высокой размерности. В данной статье эти термины будут рассматриваться как взаимодополняющие аспекты единой области знаний.
+
В таких условиях градиентный спуск и его стохастические варианты [[Градиентный спуск|неприменимы]], и исследователи обращаются к безградиентной оптимизации.
-
== Мотивация: почему градиентные методы неприменимы? ==
+
== Производная-свободная и безградиентная оптимизация: соотношение понятий ==
-
Классические методы первого порядка (например, [[Градиентный спуск|градиентный спуск]], L-BFGS, Adam) лежат в основе современного машинного обучения. Однако существует широкий класс задач, где их применение невозможно или нецелесообразно по следующим причинам:
+
-
# '''Отсутствие аналитического выражения:''' Функция <tex>f(x)</tex> может задаваться в виде сложного программного симулятора, физического эксперимента или закрытого проприетарного API (например, оценка качества генерации большой языковой модели через сторонний сервис).
+
Термины '''Derivative-Free Optimization''' (DFO) и '''Zero-Order Optimization''' (ZO) часто используют как синонимы, однако между ними существует тонкое, но важное различие.
-
# '''Недифференцируемость:''' Целевая функция может содержать разрывы, кусочно-постоянные участки или быть существенно негладкой (например, ступенчатые функции потерь, операции квантования в нейронных сетях).
+
-
# '''Экстремальный шум:''' Измерения целевой функции могут быть подвержены сильному стохастическому шуму <tex>f(x) = \phi(x) + \epsilon</tex>, из-за чего численное дифференцирование классическими методами (такими как конечные разности) приводит к катастрофической потере точности.
+
-
# '''Вычислительная сложность градиента:''' В некоторых задачах вычисление точного градиента с помощью [[Автоматическое дифференцирование|автоматического дифференцирования]] (backpropagation) требует огромного объёма памяти или времени, превышающего затраты на многократное вычисление самой функции.
+
-
== Классификация безградиентных методов ==
+
* ''DFO'' — более широкий класс методов, которые не требуют кода для вычисления производных, но могут использовать любые доступные данные о функции (значения, сравнения, историю). Сюда входят прямые методы поиска, модельно-ориентированные алгоритмы, эволюционные стратегии и байесовская оптимизация.
-
Современные безградиентные методы можно разделить на пять ключевых классов в зависимости от используемой математической парадигмы.
+
* ''ZO'' — подмножество DFO, фокусирующееся на построении стохастических оценок градиента исключительно по значениям функции (рандомизированные конечные разности). ZO-методы, как правило, наследуют архитектуру градиентных алгоритмов (SGD, Adam) и представляют особый интерес для современного машинного обучения.
-
=== 1. Методы прямого поиска (Direct Search) ===
+
В англоязычной литературе по ML термин «Zero-Order Optimization» закрепился именно за методами типа ZO-SGD, ZO-Adam, SPSA. Мы будем следовать этой конвенции: когда речь идёт о стохастических оценках градиента на основе случайных направлений, используется ZO, а DFO охватывает и все остальные безградиентные стратегии.
-
Эти методы не пытаются аппроксимировать градиент или строить локальную модель функции. Они принимают решения о направлении шага исключительно на основе непосредственного сравнения значений целевой функции в некотором наборе точек.
+
-
* '''[[Метод Нелдера-Мида]] (метод деформируемого многогранника):''' Использует геометрическую фигуру — симплекс из <tex>d+1</tex> вершин. На каждом шаге худшая вершина отображается, растягивается или сжимается относительно центра тяжести остальных вершин. Метод эвристический, но крайне эффективен для малых размерностей (<tex>d < 10</tex>).
+
-
* '''Методы координатного спуска (Coordinate Descent):''' Последовательная одномерная оптимизация вдоль базисных векторов без вычисления производных.
+
-
* '''Методы обобщённого паттерного поиска (Generalized Pattern Search, GPS):''' Исследуют пространство вдоль адаптивной сетки (шаблона), шаг которой уменьшается при неудаче и увеличивается при успешном нахождении точки с меньшим значением функции.
+
-
=== 2. Модельно-ориентированные методы (Model-Based / Surrogate Methods) ===
+
== Математические основы: оценивание градиента по значениям функции ==
-
Методы этого класса строят локальное или глобальное приближение целевой функции (суррогатную модель) по имеющемуся набору точек, после чего оптимизируют эту модель, аналитическое выражение для которой известно.
+
-
* '''Методы доверительных областей (Trust-Region DFO):''' Строится локальная квадратичная модель <tex>m_k(x) \approx f(x)</tex> в окрестности текущей точки <tex>x_k</tex> с помощью полиномиальной интерполяции. Оптимизация модели производится внутри некоторого радиуса (доверительной области) <tex>\Delta_k</font>. Представителями являются алгоритмы серии NEWUOA, BOBYQA и DFO-LS.
+
-
=== 3. Стохастические и эволюционные алгоритмы ===
+
Сердцевина ZO-оптимизации — приближение градиента при помощи конечных разностей вдоль случайных направлений. Пусть <tex>\mu > 0</tex> — параметр сглаживания, а <tex>u \sim \mathcal{N}(0, I_d)</tex> — случайный вектор из стандартного многомерного нормального распределения.
-
Ориентированы на поиск глобального экстремума в невыпуклых и мультимодальных задачах.
+
-
* '''[[Эволюционные алгоритмы]] (включая [[Генетический алгоритм|генетические]]):''' Популяционные методы, использующие операторы мутации, кроссинговера (скрещивания) и селекции.
+
-
* '''Алгоритм CMA-ES (Covariance Matrix Adaptation Evolution Strategy):''' Один из наиболее мощных эволюционных методов для непрерывной оптимизации. Адаптирует матрицу ковариации многомерного нормального распределения, используемого для генерации новых кандидатов (особей), фактически оценивая кривизну целевой функции (аналог матрицы Гессе).
+
-
* '''[[Метод имитации отжига]] (Simulated Annealing):''' Метод случайного поиска, допускающий переходы в точки с худшим значением функции с вероятностью, зависящей от параметра «температуры», что позволяет выходить из локальных минимумов.
+
-
=== 4. Байесовская оптимизация ===
+
'''Одноточечная оценка''' (one-point estimator):
-
[[Байесовская оптимизация]] применяется для оптимизации крайне дорогих для вычисления функций (например, подбор гиперпараметров нейронных сетей, где одно вычисление — это обучение модели в течение нескольких часов).
+
<tex>\hat g_{\text{OP}}(x) = \frac{f(x + \mu u)}{\mu}\, u.</tex>
-
* В качестве суррогатной модели чаще всего используются '''Гауссовские процессы''' (Gaussian Processes), предоставляющие не только точечную оценку функции, но и меру неопределенности (дисперсию) в каждой точке пространства.
+
Её математическое ожидание равно градиенту сглаженной функции <tex>f_\mu(x) = \mathbb{E}_{u}[f(x + \mu u)]</tex>, то есть <tex>\mathbb{E}_u[\hat g_{\text{OP}}(x)] = \nabla f_\mu(x).</tex>
-
* Выбор следующей точки для вычисления целевой функции осуществляется путём максимизации так называемой функции полезности (Acquisition Function), такой как Expected Improvement (EI) или Upper Confidence Bound (UCB). Это позволяет сбалансировать исследование новых областей (exploration) и эксплуатацию известных экстремумов (exploitation).
+
-
=== 5. Zero-Order методы на основе оценки градиента ===
+
'''Двухточечная (центральная) оценка''' уменьшает смещение на порядок:
-
Эти методы аппроксимируют направление градиента по значениям функции и используют его в классических итерационных схемах градиентного спуска. Это связующее звено между классической оптимизацией и DFO, наиболее активно развивающееся в области машинного обучения.
+
<tex>\hat g_{\text{CT}}(x) = \frac{f(x + \mu u) - f(x - \mu u)}{2\mu}\, u,</tex>
 +
причём <tex>\mathbb{E}_u[\hat g_{\text{CT}}(x)] = \nabla f_\mu(x) + O(\mu^2).</tex>
-
== Математические основы Zero-Order оценки градиента ==
+
Аналогичные оценки существуют для равномерного распределения на единичной сфере; тогда появляется множитель <tex>d / \mu</tex>. В практических реализациях предпочитают двухточечную гауссовскую схему как компромисс между точностью и числом обращений к функции.
-
Современные ZO-методы строятся на идее рандомизированной аппроксимации градиента. Для этого вводится понятие '''сглаженной функции''' (smoothed function), предложенное Ю. Е. Нестеровым и В. Г. Спокойным.
+
-
=== Сглаживание функции ===
+
Используя оценку <tex>\hat g(x)</tex>, параметры обновляются по правилу, аналогичному стохастическому градиентному спуску:
-
Пусть целевая функция <tex>f</tex> недифференцируема. Её сглаженная версия <tex>f_\mu(x)</tex> с параметром сглаживания <tex>\mu > 0</tex> определяется как [[математическое ожидание]]:
+
<tex>x_{k+1} = x_k - \eta_k \hat g(x_k),</tex>
-
<tex>f_\mu(x) = \mathbb{E}_{u}[f(x + \mu u)],</tex>
+
где <tex>\eta_k > 0</tex> — размер шага. На этом принципе построены все ZO-алгоритмы: ZO-SGD, ZO-Adam, ZO-SVRG и др.
-
где <tex>u</tex> — случайный вектор, распределённый по стандартному нормальному закону <tex>\mathcal{N}(0, I_d)</tex> или равномерно на единичной сфере <tex>S^{d-1}</tex>.
+
-
Важнейшее свойство сглаженной функции заключается в том, что она является дифференцируемой (даже если <tex>f</tex> была разрывной), а её точный градиент выражается через интеграл, зависящий только от значений исходной функции <tex>f</tex>.
+
== Основные классы безградиентных методов ==
-
=== Одноточечная оценка градиента ===
+
=== Методы прямого поиска ===
-
Если на каждой итерации доступен запрос значения функции только в одной точке, используется одноточечная оценка (one-point estimator):
+
Исторически первые DFO-методы ([[Метод Нелдера–Мида]], метод Хука–Дживса, поиск по образцу, MADS). Они сравнивают значения функции в нескольких точках и двигаются в направлениях, обещающих убывание. Не строят явной модели и не требуют численного оценивания градиента; хорошо работают в задачах малой и средней размерности (<100), включая негладкие и зашумлённые функции. Теоретический анализ основан на понятии обобщённого градиента Кларка.
-
<tex>\hat g(x) = \frac{d}{\mu} f(x + \mu u) u,</tex>
+
-
где <tex>u</tex> равномерно распределён на единичной сфере <tex>S^{d-1}</tex>.
+
-
Данная оценка является несмещённой для градиента сглаженной функции: <tex>\mathbb{E}_u[\hat g(x)] = \nabla f_\mu(x)</font>.
+
-
* ''Недостаток:'' Одноточечная оценка обладает огромной дисперсией, пропорциональной размерности пространства <tex>d^2</tex>, которая не стремится к нулю при <tex>\mu \to 0</font>, если значение <tex>f(x)</tex> велико.
+
-
=== Двухточечная оценка градиента ===
+
=== Модельно-ориентированные методы ===
-
Если в рамках одной итерации можно вычислить значение функции дважды, применяется двухточечная оценка (two-point estimator):
+
Строят локальную суррогатную модель (чаще всего квадратичную или на основе радиальных базисных функций) по набору точек и оптимизируют её в доверительной области. Методы типа DFO-TR (Conn, Scheinberg, Vicente) гарантируют сходимость к точке первого порядка для гладких задач, но сложность резко растёт с размерностью (<tex>O(d^2)</tex> вычислений функции на итерацию). Широко применяются в инженерном проектировании, когда расчёт одного значения занимает часы.
-
<tex>\hat g(x) = \frac{d}{2\mu} \bigl(f(x + \mu u) - f(x - \mu u)\bigr) u.</tex>
+
-
Эта оценка также является несмещённой: <tex>\mathbb{E}_u[\hat g(x)] = \nabla f_\mu(x)</font>.
+
-
* ''Преимущество:'' Дисперсия двухточечной оценки значительно ниже (имеет порядок <tex>O(d)</tex> вместо <tex>O(d^2)</tex>) и стремится к нулю при <tex>\mu \to 0</font> для гладких функций, что делает этот подход на порядки более стабильным и быстрым на практике.
+
-
=== Схема обновления параметров ===
+
=== Стохастические методы ===
-
Полученная стохастическая оценка градиента <tex>\hat g(x_k)</tex> подставляется в стандартный шаг обновления параметров (например, [[Стохастический градиентный спуск|стохастический градиентный спуск]]):
+
Помимо ZO-алгоритмов, к стохастическим DFO относят:
-
<tex>x_{k+1} = x_k - \eta_k \hat g(x_k),</tex>
+
* Метод стохастической аппроксимации Кифера–Вольфовица (Kiefer–Wolfowitz) — классический двухточечный конечно-разностный метод;
-
где <tex>\eta_k > 0</tex> — темп обучения (learning rate). Аналогично могут быть адаптированы методы с импульсом (Momentum) и адаптивным шагом (ZO-Adam, ZO-AdaGrad).
+
* SPSA (Simultaneous Perturbation Stochastic Approximation, Spall) — одновременно варьирует все координаты случайными возмущениями, требуя всего двух измерений функции на итерацию независимо от размерности <tex>d</tex>. Обладает сильными теоретическими гарантиями и широко используется в настройке сложных систем.
 +
* Адаптивные методы с уменьшением дисперсии: ZO-SVRG, ZO-SPIDER, ZO-SARAH.
 +
 
 +
=== Эволюционные алгоритмы ===
 +
Методы, вдохновлённые природной эволюцией: [[Генетические алгоритмы]], CMA-ES (Covariance Matrix Adaptation Evolution Strategy), дифференциальная эволюция, роевой интеллект. Оперируют популяцией решений, используют операторы мутации, скрещивания и отбора. CMA-ES считается одним из самых эффективных безградиентных методов для непрерывной оптимизации умеренной размерности (<100) и автоматически адаптирует ковариационную матрицу. Широко применяются в обучении с подкреплением (Evolution Strategies, ES).
 +
 
 +
=== Байесовская оптимизация ===
 +
Применяется для дорогостоящих чёрных ящиков, когда число обращений к функции жёстко ограничено. Строит вероятностную суррогатную модель (обычно гауссовский процесс) и выбирает следующую точку, максимизируя функцию приобретения (expected improvement, GP-UCB). Эффективна при размерности до 20–30. Используется для подбора [[Гиперпараметры|гиперпараметров]], автоматического машинного обучения (AutoML) и экспериментального дизайна.
 +
 
 +
=== Zero-Order методы на основе случайных направлений ===
 +
Современное поколение ZO-алгоритмов, непосредственно нацеленных на задачи машинного обучения, где <tex>d</tex> может достигать миллионов. Ключевые представители:
 +
* ZO-SGD — стохастический градиентный спуск с одно- или двухточечной оценкой градиента;
 +
* ZO-Adam, ZO-AdaGrad — адаптивные ZO-методы;
 +
* ZO-SVRG, ZO-SAGA — методы с редукцией дисперсии, значительно уменьшающие фактор размерности в оценках сложности;
 +
* ZO-BCD (Block Coordinate Descent) — ZO-оптимизация по блокам координат.
-
== Сравнительный анализ классов методов ==
+
Все они используют двухточечную рандомизированную оценку градиента и наследуют скорость сходимости своих градиентных аналогов с поправкой на <tex>O(d)</tex> или, после редукции дисперсии, на гораздо меньшую величину.
-
Ниже представлена сравнительная таблица основных классов безградиентных методов:
+
-
{| class="wikitable" style="width:100%; text-align:left; font-size:95%;"
+
=== Сравнительная таблица классов ===
 +
{| class="wikitable"
|-
|-
-
! style="background:#efefef;" | Класс методов
+
! Класс методов
-
! style="background:#efefef;" | Требуется модель функции?
+
! Модель функции
-
! style="background:#efefef;" | Число вызовов <tex>f(x)</tex> на шаг
+
! Вычислительная сложность итерации
-
! style="background:#efefef;" | Масштабируемость по размерности <tex>d</tex>
+
! Обращения к функции на итерацию
-
! style="background:#efefef;" | Теоретические гарантии
+
! Масштабируемость (до <tex>d</tex>)
-
! style="background:#efefef;" | Основные области применения
+
! Теоретические гарантии
 +
! Типичные приложения
|-
|-
-
| '''Методы прямого поиска''' (Нелдер-Мид и др.)
+
| Прямой поиск (Nelder–Mead, MADS)
| Нет
| Нет
-
| Низкое (<tex>1 - 2d</tex>)
+
| Низкая (<tex>O(d)</tex>)
-
| Низкая (<tex>d < 20</tex>)
+
| 2–<tex>d+1</tex>
-
| Слабые (локальная сходимость)
+
| Малая (<tex>d < 100</tex>)
-
| Низкоразмерная детерминированная оптимизация, инженерное проектирование.
+
| Первый порядок (обобщённые градиенты)
 +
| Негладкая оптимизация, прототипирование
|-
|-
-
| '''Модельно-ориентированные''' (Trust-Region)
+
| Модельно-ориентированные (DFO-TR)
-
| Да (квадратичная, радиальные базисные функции)
+
| Локальная квадратичная
-
| Низкое к среднему
+
| Средняя (<tex>O(d^2)</tex>)
-
| Средняя (<tex>d < 100</font>)
+
| <tex>O(d^2)</tex>
-
| Хорошо изучены для гладких локальных задач
+
| Средняя (<tex>d < 200</tex>)
-
| Проектирование физических систем, аэродинамика, калибровка моделей.
+
| Первый порядок для гладких функций
 +
| Инженерные расчёты, дорогие симуляции
|-
|-
-
| '''Эволюционные алгоритмы''' (CMA-ES, GA)
+
| SPSA
-
| Нет
+
| Нет (стох. градиент)
-
| Высокое (размер популяции <tex>\lambda</font>)
+
| Низкая
-
| Низкая к средней (<tex>d < 500</font>)
+
| 2
-
| Асимптотическая глобальная сходимость
+
| Высокая (любое <tex>d</tex>)
-
| Робототехника, нейроэволюция, дискретная и мультимодальная оптимизация.
+
| Асимптотическая сходимость, конечные выборки
 +
| Настройка параметров, адаптивное управление
|-
|-
-
| '''Байесовская оптимизация'''
+
| Эволюционные стратегии (CMA-ES)
-
| Да (Гауссовские процессы)
+
| Нет (популяция)
-
| Низкое (очень дорогая функция)
+
| Средняя (<tex>O(dp)</tex>, <tex>p</tex> — размер популяции)
-
| Очень низкая (<tex>d < 20</font>)
+
| <tex>p</tex> (до тысяч)
-
| Сильные (скорость сублинейной глобальной сходимости)
+
| Средняя (<tex>d < 1000</tex>)
-
| Подбор гиперпараметров ML, автоматическое проектирование лекарств.
+
| Глобальная сходимость для унимодальных
 +
| Обучение с подкреплением, робототехника
|-
|-
-
| '''Zero-Order методы''' (на основе оценки градиента)
+
| Байесовская оптимизация
-
| Нет (неявное сглаживание)
+
| Гауссовский процесс
-
| Фиксированное (<tex>1</font> или <tex>2</font> вызова)
+
| Высокая (<tex>O(n^3)</tex>)
-
| Высокая (<tex>d \approx 10^5</font> и более)
+
| 1 (добавляет точку)
-
| Строгие гарантии сходимости в стохастическом анализе
+
| Низкая (<tex>d < 30</tex>)
-
| Черноящичные атаки на глубокие сети, RL, федеративное обучение, LLM.
+
| Regret bounds (GP-UCB)
 +
| Подбор гиперпараметров, AutoML
 +
|-
 +
| ZO-методы (ZO-SGD, ZO-SVRG)
 +
| Нет (сглаженный градиент)
 +
| Низкая (<tex>O(d)</tex>)
 +
| 2 (<tex>\hat g</tex>)
 +
| Высокая (миллионы)
 +
| Первый порядок для сглаженной задачи
 +
| Black-box атаки, LLM API, федеративное обучение
|}
|}
== Теоретические свойства и гарантии сходимости ==
== Теоретические свойства и гарантии сходимости ==
-
Теоретический анализ безградиентных методов нулевого порядка во многом опирается на результаты выпуклого анализа и теории стохастической аппроксимации.
 
-
=== Ограничения по размерности (Dimension Penalty) ===
+
Теория сходимости безградиентных методов опирается на сглаженную функцию <tex>f_\mu</tex>, которая для липшицева <tex>f</tex> близка к исходной. Ключевой результат ''Nesterov & Spokoiny (2011)'': для выпуклой функции с липшицевым градиентом ZO-метод с двухточечной гауссовской оценкой достигает точности <tex>\varepsilon</tex> по функции за <tex>O(d/\varepsilon)</tex> итераций против <tex>O(1/\varepsilon)</tex> у градиентного спуска. Дополнительный множитель <tex>d</tex> — цена отсутствия градиента.
-
Основная плата за отсутствие градиента — сильная зависимость скорости сходимости от размерности пространства <tex>d</tex>.
+
-
* Для '''L-гладких выпуклых функций''' классический стохастический градиентный спуск (SGD) гарантирует сходимость к экстремуму по функции со скоростью:
+
-
<tex>O\left(\frac{1}{\sqrt{K}}\right),</tex>
+
-
где <tex>K</tex> — число итераций. Эта оценка не зависит от размерности явным образом.
+
-
* В то же время для '''ZO-SGD''' с двухточечной оценкой градиента скорость сходимости составляет:
+
-
<tex>O\left(\sqrt{\frac{d}{K}}\right).</tex>
+
-
Таким образом, для достижения точности <tex>\epsilon</font> безградиентному методу требуется в <tex>O(d)</font> раз больше вызовов оракула (запросов значения функции), чем градиентному методу. При использовании одноточечной оценки этот штраф возрастает до <tex>O(d^2)</font>.
+
-
=== Сходимость в невыпуклом случае ===
+
Для невыпуклых задач ''Ghadimi & Lan (2013)'' показали, что ZO-SGD находит <tex>\varepsilon</tex>-стационарную точку (<tex>\mathbb{E}\|\nabla f(x)\|^2 \le \varepsilon</tex>) за <tex>O(d/\varepsilon^2)</tex> итераций. Методы с редукцией дисперсии (ZO-SVRG, ZO-SPIDER) позволяют снизить фактор <tex>d</tex> до константы при определённых предположениях о структуре задачи (например, конечная сумма).
-
Для невыпуклых гладких задач гарантируется сходимость к стационарной точке <tex>\mathbb{E}[\|\nabla f(x)\|^2] \le \epsilon</font> за <tex>O(d/\epsilon^2)</font> запросов оракула нулевого порядка, что является неулучшаемой оценкой для общего класса черноящичных методов высокой размерности.
+
 
 +
Методы прямого поиска при мягких условиях (наличие всюду плотного множества дифференцируемости) гарантируют сходимость к стационарной точке Кларка. Байесовская оптимизация даёт сублинейные оценки накопленного сожаления (regret) для GP-UCB. Эволюционные стратегии, как правило, опираются на эмпирическую эффективность, хотя для CMA-ES доказана логарифмическая сходимость на унимодальных выпукло-квадратичных задачах.
== Применения в машинном обучении ==
== Применения в машинном обучении ==
-
=== 1. Настройка гиперпараметров (Hyperparameter Tuning) ===
+
* '''Black-box adversarial attacks'''. ZO-методы (ZOO, AutoZOOM) генерируют состязательные примеры, используя только вероятностные метки модели-жертвы. Оценки градиента строятся через симметричные разности, не требуя внутреннего доступа.
-
Каждое вычисление значения функции — это полный цикл обучения модели машинного обучения на обучающей выборке и замер метрики качества на валидационном множестве. Поскольку функция не имеет аналитического вида и дифференцировать её по размеру пакета (batch size) или коэффициенту регуляризации невозможно, здесь доминируют методы байесовской оптимизации (библиотеки Optuna, Hyperopt).
+
* '''Подбор гиперпараметров'''. Байесовская оптимизация — стандарт де-факто; также применяются эволюционные алгоритмы и SPSA.
 +
* '''Обучение с подкреплением'''. Evolution Strategies (ES), предложенные ''Salimans et al. (2017)'', обучают нейросетевые политики, оценивая приращение награды по случайным возмущениям параметров. Метод легко масштабируется на тысячи параллельных воркеров.
 +
* '''Оптимизация недифференцируемых метрик'''. Прямая оптимизация AUC, F1, среднего обратного ранга возможна ZO-методами, где градиент заменяется сглаженной оценкой.
 +
* '''Федеративное обучение'''. Обмен градиентами часто требует значительных коммуникационных затрат. ZO-оптимизация на клиенте позволяет передавать лишь скалярные значения, снижая объём трафика на порядок (Liu et al., 2020).
 +
* '''API больших языковых моделей'''. Тонкая настройка больших языковых моделей через чёрный ящик (Black-Box Tuning, BBT) использует ZO-оценки градиента по запросам к API, обходя необходимость внутренних градиентов модели. BBTv2 и аналоги применяют проекцию на низкоразмерное подпространство для обхода проклятия размерности.
 +
* '''Научное машинное обучение'''. В физически информированных нейросетях (PINNs) и гибридных моделях, где часть компонент задана недифференцируемыми симуляторами, ZO-подход позволяет обучать нейросеть сквозным образом.
 +
* '''Генеративные модели и обратные задачи'''. Оптимизация скрытых кодов StyleGAN или диффузионных моделей без доступа к градиенту генератора.
-
=== 2. Черноящичные атаки на нейросети (Adversarial Machine Learning) ===
+
== Преимущества и недостатки ==
-
Для проверки робастности (устойчивости) глубоких нейронных сетей генерируются состязательные атаки (adversarial attacks). Если атакующий не имеет доступа к весам и архитектуре модели (Black-Box), а видит лишь выходные вероятности классов, задача генерации минимального возмущения, меняющего класс изображения, формулируется как:
+
-
<tex>\min_{\delta \in \mathbb{R}^d} \mathcal{L}(M(x+\delta), y_{target}) + \lambda \|\delta\|_2,</tex>
+
-
где <tex>M</font> — модель-черный ящик. ZO-методы (например, алгоритм ZOO — Zero-Order Optimization) позволяют эффективно находить состязательные возмущения <tex>\delta</font> высокого разрешения.
+
-
=== 3. Обучение с подкреплением (Reinforcement Learning) ===
+
''Преимущества:''
-
В задачах управления агентами (Policy Optimization) функция награды часто является дискретной, недетерминированной и зависит от недифференцируемой среды симулятора. Алгоритмы эволюционных стратегий (Evolution Strategies, ES) часто используются как альтернатива методам градиента политики (Policy Gradient), поскольку они легче распараллеливаются на кластерах и не страдают от проблемы «затухания градиентов» на длинных траекториях.
+
* Не требуют программирования градиента — снижение инженерных затрат и исключение ошибок;
 +
* Применимы к любым чёрным ящикам, включая недифференцируемые и дискретные компоненты;
 +
* Естественная параллелизация (эволюционные стратегии, ZO с большими батчами);
 +
* Робастность к шуму в измерениях функции.
-
=== 4. Оптимизация больших языковых моделей (LLM) через API ===
+
''Недостатки:''
-
Современные коммерческие LLM (такие как GPT-4) доступны пользователям только через API. Безградиентная оптимизация (в частности, алгоритмы семейства Black-Box Prompt Tuning) позволяет подбирать непрерывные промпты (soft prompts) или осуществлять тонкую настройку (fine-tuning) весов верхних слоёв локально, оптимизируя качество ответов модели, получаемых в виде текстовых ответов или логитов через внешние запросы.
+
* Проклятие размерности: число обращений к функции масштабируется как <tex>O(d)</tex> в худшем случае;
-
 
+
* Высокая дисперсия оценок градиента, требующая тщательного подбора <tex>\mu</tex> и методов уменьшения дисперсии;
-
=== 5. Федеративное обучение (Federated Learning) ===
+
* Медленная практическая сходимость по сравнению с градиентными аналогами при одинаковом бюджете вычислений;
-
В распределённых системах, где клиенты не могут передавать сырые градиенты на центральный сервер из соображений конфиденциальности или ограничений связи, Zero-Order методы позволяют проводить оптимизацию глобальной модели, обмениваясь лишь локальными скалярными оценками потерь (loss values).
+
* Невозможность точного нахождения седловых точек и чувствительность к локальным особенностям ландшафта.
== Современные направления исследований ==
== Современные направления исследований ==
-
=== Методы уменьшения дисперсии (Variance Reduction) ===
+
* '''Уменьшение дисперсии'''. Интеграция техник стохастической рекуррентности (SPIDER, SARAH, STORM) в ZO-оптимизацию позволила получить оценки сложности, сравнимые с градиентными методами с точностью до константы (Fang et al., 2018; Liu et al., 2018).
-
Поскольку случайная оценка градиента вносит огромный шум, исследователи адаптируют техники уменьшения дисперсии из стохастической оптимизации. Алгоритмы '''ZO-SVRG''' (Zero-Order Stochastic Variance Reduced Gradient) и '''ZO-SPIDER''' позволяют снизить количество запросов к функции за счёт периодического вычисления точных суррогатных градиентов по подвыборкам данных и отслеживания разностей градиентов.
+
* '''Адаптивное сэмплирование направлений'''. Использование активных подпространств, importance sampling и координатных спусков снижает эффективную размерность и ускоряет сходимость в задачах с низкоразмерной структурой.
 +
* '''Распределённая и децентрализованная ZO-оптимизация'''. Разработаны асинхронные алгоритмы для рабочих узлов, каждый из которых имеет доступ только к локальному оракулу (Hajinezhad et al., 2019).
 +
* '''Высокоразмерная ZO-оптимизация'''. Методы проекции градиента на подпространство (ZO-BCD, ZO-SGD с dropout-направлениями) позволяют обучать модели с миллиардами параметров через API, например, BBTv2 использует низкоранговую матрицу возмущений.
 +
* '''ZO второго порядка'''. Исследуются оценки Гессиана через конечные разности (ZO-Newton), ускоряющие локальную сходимость.
 +
* '''Теория для негладких и невыпуклых задач'''. Активно развиваются оценки для функций, удовлетворяющих условию Куроды–Лоджа, и для оптимизации с ограничениями без вычисления градиента.
 +
* '''ZO для федеративного и приватного обучения'''. Доказано, что ZO-апдейты обеспечивают дифференциальную приватность «из коробки» благодаря естественной стохастичности, что открывает новые перспективы.
 +
 
 +
== Связь с другими разделами оптимизации ==
-
=== Высокоразмерная оптимизация (High-Dimensional ZO) ===
+
Безградиентная оптимизация не является изолированной дисциплиной; она заимствует идеи из [[Численная оптимизация|численных методов]] (доверительные области, линейный поиск), [[Стохастическая оптимизация|стохастической аппроксимации]] (SPSA, SGD), [[Эволюционные алгоритмы|эволюционных вычислений]] (популяционные стратегии) и [[Байесовская оптимизация|глобальной оптимизации]] (GP-сюррогаты). ZO-методы, в свою очередь, дополняют теорию стохастического градиентного спуска, предоставляя инструменты для ситуаций, когда даже стохастический градиент недоступен. В контексте онлайн-обучения и бандитов безградиентная обратная связь описывается как bandit feedback, а методы ZO-оптимизации сглаживают задачу, сводя её к стандартной стохастической оптимизации.
-
Для работы в пространствах, где размерность <tex>d</font> измеряется миллионами (например, параметры нейросетей), классический случайный поиск неэффективен. Современные подходы используют предположение о '''малой внутренней размерности''' задачи (intrinsic dimension) и проецируют градиентный поиск в низкоразмерное случайное подпространство (развитие методов типа Рандомизированного координатного спуска).
+
-
=== Распределённая и асинхронная ZO-оптимизация ===
+
Таким образом, современная безградиентная оптимизация представляет собой богатый набор инструментов, эффективность которых особенно высока там, где традиционные градиентные подходы бессильны. Быстрый прогресс в области больших моделей и федеративных систем делает DFO/ZO-методы неотъемлемой частью арсенала ML-инженера.
-
Оценки градиентов по независимым случайным направлениям <tex>u_i</font> могут вычисляться абсолютно независимо на разных вычислительных узлах. Это обеспечивает идеальное линейное ускорение алгоритмов при параллельных вычислениях на GPU/TPU кластерах.
+
== Литература ==
== Литература ==
-
# ''Conn A. R., Scheinberg K., Vicente L. N.'' Introduction to Derivative-Free Optimization. — SIAM, 2009.
+
# Conn A. R., Scheinberg K., Vicente L. N. Introduction to Derivative-Free Optimization. — SIAM, 2009.
-
# ''Larson J., Menickelly M., Wild S. M.'' Derivative-Free Optimization Methods // Acta Numerica. — 2019. — Vol. 28. — P. 287–367.
+
# Nesterov Yu., Spokoiny V. Random gradient-free minimization of convex functions // Foundations of Computational Mathematics, 2017. (Предварительная версия: CORE DP 2011/2, 2011).
-
# ''Nesterov Y., Spokoiny V.'' Random Gradient-Free Minimization of Convex Functions // Foundations of Computational Mathematics. — 2017. — Vol. 17, no. 2. P. 527–566.
+
# Spall J. C. Introduction to Stochastic Search and Optimization. — Wiley, 2003.
-
# ''Spall J. C.'' Introduction to Stochastic Search and Optimization: Estimation, Simulation, and Control. — John Wiley & Sons, 2005.
+
# Larson J., Menickelly M., Wild S. M. Derivative-free optimization methods // Acta Numerica, 2019, Vol. 28, pp. 287–404.
-
# ''Nocedal J., Wright S. J.'' Numerical Optimization. — Springer Science & Business Media, 2006.
+
# Ghadimi S., Lan G. Stochastic first- and zeroth-order methods for nonconvex stochastic programming // SIAM Journal on Optimization, 2013, Vol. 23(4), pp. 2341–2368.
-
# ''Boyd S., Vandenberghe L.'' Convex Optimization. — Cambridge University Press, 2004.
+
# Liu S., Kailkhura B., Chen P.-Y., Ting P., Chang S., Amini L. Zeroth-order stochastic variance reduction for nonconvex optimization // NeurIPS, 2018.
-
# ''Liu S., Pin-Yu C., Kailasampathy B., Hero A.'' Primer on Zeroth-Order Optimization in Signal Processing and Machine Learning // IEEE Signal Processing Magazine. — 2020. — Vol. 37, no. 5. — P. 43–54.
+
# Salimans T., Ho J., Chen X., Sutskever I. Evolution strategies as a scalable alternative to reinforcement learning // arXiv:1703.03864, 2017.
 +
# Sun T., Shao Y., Qian H., Huang X., Qiu X. Black-box tuning for language-model-as-a-service // ICML, 2022.
 +
# Wang Z., Chen J., Liu S., Lin Q., Ma S., Chen T. ZOO: Zeroth order optimization based black-box attacks to deep neural networks // AAAI, 2018.
 +
# Fang C., Li C. J., Lin Z., Zhang T. SPIDER: Near-optimal non-convex optimization via stochastic path-integrated differential estimator // NeurIPS, 2018.
 +
# Hajinezhad D., Hong M., Zhao T., Wang Z. NESTT: A nonconvex primal-dual splitting method for distributed and stochastic optimization // IEEE Trans. Signal Processing, 2019.
 +
# Boyd S., Vandenberghe L. Convex Optimization. — Cambridge University Press, 2004.
 +
# Nocedal J., Wright S. J. Numerical Optimization. — 2nd ed., Springer, 2006.
 +
# Chen P.-Y., Zhang H., Sharma Y., Yi J., Hsieh C.-J. ZOO: Zeroth order optimization based black-box attacks to deep neural networks without training substitute models // ACM Workshop on AISec, 2017.
-
== Ссылки ==
+
[[Категория:Машинное обучение]]
-
* [[Градиентный спуск]]
+
[[Категория:Оптимизация]]
-
* [[Стохастическая оптимизация]]
+
[[Категория:Численные методы]]
-
* [[Эволюционные алгоритмы]]
+
-
* [[Байесовская оптимизация]]
+
-
* [[Численные методы]]
+

Текущая версия

= Безградиентная оптимизация

Безградиентная оптимизация (Derivative-Free Optimization, DFO) — совокупность методов решения задач минимизации (или максимизации) функции, не требующих аналитического вычисления её производных. В более узком смысле выделяют Zero-Order оптимизацию (ZO), которая полагается исключительно на значения целевой функции для построения оценок градиента, как правило, с помощью случайных конечных разностей. Статья обобщает и систематизирует современные подходы, связывая их с классическими разделами численной оптимизации, стохастической оптимизации, эволюционных алгоритмов и байесовской оптимизации.

Содержание

Мотивация и постановка задачи

Классическая постановка задачи безградиентной оптимизации — \min_{x\in\mathbb{R}^d} f(x), где целевая функция f:\mathbb{R}^d \to \mathbb{R} доступна лишь через «оракул нулевого порядка»: для любого x можно получить (возможно, зашумлённое) значение f(x), но не её градиент. Подобная ситуация возникает, когда

  • f(x) задана чёрным ящиком (проприетарное ПО, физический эксперимент, сложная симуляция);
  • модель реализована в виде API (большие языковые модели, облачные сервисы);
  • функция потерь принципиально недифференцируема (ранжирование, метрики качества);
  • требуется атаковать обученную модель в режиме чёрного ящика;
  • вычисление градиента требует чрезмерных затрат памяти или нарушает конфиденциальность данных (федеративное обучение).

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

Производная-свободная и безградиентная оптимизация: соотношение понятий

Термины Derivative-Free Optimization (DFO) и Zero-Order Optimization (ZO) часто используют как синонимы, однако между ними существует тонкое, но важное различие.

  • DFO — более широкий класс методов, которые не требуют кода для вычисления производных, но могут использовать любые доступные данные о функции (значения, сравнения, историю). Сюда входят прямые методы поиска, модельно-ориентированные алгоритмы, эволюционные стратегии и байесовская оптимизация.
  • ZO — подмножество DFO, фокусирующееся на построении стохастических оценок градиента исключительно по значениям функции (рандомизированные конечные разности). ZO-методы, как правило, наследуют архитектуру градиентных алгоритмов (SGD, Adam) и представляют особый интерес для современного машинного обучения.

В англоязычной литературе по ML термин «Zero-Order Optimization» закрепился именно за методами типа ZO-SGD, ZO-Adam, SPSA. Мы будем следовать этой конвенции: когда речь идёт о стохастических оценках градиента на основе случайных направлений, используется ZO, а DFO охватывает и все остальные безградиентные стратегии.

Математические основы: оценивание градиента по значениям функции

Сердцевина ZO-оптимизации — приближение градиента при помощи конечных разностей вдоль случайных направлений. Пусть \mu > 0 — параметр сглаживания, а u \sim \mathcal{N}(0, I_d) — случайный вектор из стандартного многомерного нормального распределения.

Одноточечная оценка (one-point estimator): \hat g_{\text{OP}}(x) = \frac{f(x + \mu u)}{\mu}\, u. Её математическое ожидание равно градиенту сглаженной функции f_\mu(x) = \mathbb{E}_{u}[f(x + \mu u)], то есть \mathbb{E}_u[\hat g_{\text{OP}}(x)] = \nabla f_\mu(x).

Двухточечная (центральная) оценка уменьшает смещение на порядок: \hat g_{\text{CT}}(x) = \frac{f(x + \mu u) - f(x - \mu u)}{2\mu}\, u, причём \mathbb{E}_u[\hat g_{\text{CT}}(x)] = \nabla f_\mu(x) + O(\mu^2).

Аналогичные оценки существуют для равномерного распределения на единичной сфере; тогда появляется множитель d / \mu. В практических реализациях предпочитают двухточечную гауссовскую схему как компромисс между точностью и числом обращений к функции.

Используя оценку \hat g(x), параметры обновляются по правилу, аналогичному стохастическому градиентному спуску: x_{k+1} = x_k - \eta_k \hat g(x_k), где \eta_k > 0 — размер шага. На этом принципе построены все ZO-алгоритмы: ZO-SGD, ZO-Adam, ZO-SVRG и др.

Основные классы безградиентных методов

Методы прямого поиска

Исторически первые DFO-методы (Метод Нелдера–Мида, метод Хука–Дживса, поиск по образцу, MADS). Они сравнивают значения функции в нескольких точках и двигаются в направлениях, обещающих убывание. Не строят явной модели и не требуют численного оценивания градиента; хорошо работают в задачах малой и средней размерности (<100), включая негладкие и зашумлённые функции. Теоретический анализ основан на понятии обобщённого градиента Кларка.

Модельно-ориентированные методы

Строят локальную суррогатную модель (чаще всего квадратичную или на основе радиальных базисных функций) по набору точек и оптимизируют её в доверительной области. Методы типа DFO-TR (Conn, Scheinberg, Vicente) гарантируют сходимость к точке первого порядка для гладких задач, но сложность резко растёт с размерностью (O(d^2) вычислений функции на итерацию). Широко применяются в инженерном проектировании, когда расчёт одного значения занимает часы.

Стохастические методы

Помимо ZO-алгоритмов, к стохастическим DFO относят:

  • Метод стохастической аппроксимации Кифера–Вольфовица (Kiefer–Wolfowitz) — классический двухточечный конечно-разностный метод;
  • SPSA (Simultaneous Perturbation Stochastic Approximation, Spall) — одновременно варьирует все координаты случайными возмущениями, требуя всего двух измерений функции на итерацию независимо от размерности d. Обладает сильными теоретическими гарантиями и широко используется в настройке сложных систем.
  • Адаптивные методы с уменьшением дисперсии: ZO-SVRG, ZO-SPIDER, ZO-SARAH.

Эволюционные алгоритмы

Методы, вдохновлённые природной эволюцией: Генетические алгоритмы, CMA-ES (Covariance Matrix Adaptation Evolution Strategy), дифференциальная эволюция, роевой интеллект. Оперируют популяцией решений, используют операторы мутации, скрещивания и отбора. CMA-ES считается одним из самых эффективных безградиентных методов для непрерывной оптимизации умеренной размерности (<100) и автоматически адаптирует ковариационную матрицу. Широко применяются в обучении с подкреплением (Evolution Strategies, ES).

Байесовская оптимизация

Применяется для дорогостоящих чёрных ящиков, когда число обращений к функции жёстко ограничено. Строит вероятностную суррогатную модель (обычно гауссовский процесс) и выбирает следующую точку, максимизируя функцию приобретения (expected improvement, GP-UCB). Эффективна при размерности до 20–30. Используется для подбора гиперпараметров, автоматического машинного обучения (AutoML) и экспериментального дизайна.

Zero-Order методы на основе случайных направлений

Современное поколение ZO-алгоритмов, непосредственно нацеленных на задачи машинного обучения, где d может достигать миллионов. Ключевые представители:

  • ZO-SGD — стохастический градиентный спуск с одно- или двухточечной оценкой градиента;
  • ZO-Adam, ZO-AdaGrad — адаптивные ZO-методы;
  • ZO-SVRG, ZO-SAGA — методы с редукцией дисперсии, значительно уменьшающие фактор размерности в оценках сложности;
  • ZO-BCD (Block Coordinate Descent) — ZO-оптимизация по блокам координат.

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

Сравнительная таблица классов

Класс методов Модель функции Вычислительная сложность итерации Обращения к функции на итерацию Масштабируемость (до d) Теоретические гарантии Типичные приложения
Прямой поиск (Nelder–Mead, MADS) Нет Низкая (O(d)) 2–d+1 Малая (d < 100) Первый порядок (обобщённые градиенты) Негладкая оптимизация, прототипирование
Модельно-ориентированные (DFO-TR) Локальная квадратичная Средняя (O(d^2)) O(d^2) Средняя (d < 200) Первый порядок для гладких функций Инженерные расчёты, дорогие симуляции
SPSA Нет (стох. градиент) Низкая 2 Высокая (любое d) Асимптотическая сходимость, конечные выборки Настройка параметров, адаптивное управление
Эволюционные стратегии (CMA-ES) Нет (популяция) Средняя (O(dp), p — размер популяции) p (до тысяч) Средняя (d < 1000) Глобальная сходимость для унимодальных Обучение с подкреплением, робототехника
Байесовская оптимизация Гауссовский процесс Высокая (O(n^3)) 1 (добавляет точку) Низкая (d < 30) Regret bounds (GP-UCB) Подбор гиперпараметров, AutoML
ZO-методы (ZO-SGD, ZO-SVRG) Нет (сглаженный градиент) Низкая (O(d)) 2 (\hat g) Высокая (миллионы) Первый порядок для сглаженной задачи Black-box атаки, LLM API, федеративное обучение

Теоретические свойства и гарантии сходимости

Теория сходимости безградиентных методов опирается на сглаженную функцию f_\mu, которая для липшицева f близка к исходной. Ключевой результат Nesterov & Spokoiny (2011): для выпуклой функции с липшицевым градиентом ZO-метод с двухточечной гауссовской оценкой достигает точности \varepsilon по функции за O(d/\varepsilon) итераций против O(1/\varepsilon) у градиентного спуска. Дополнительный множитель d — цена отсутствия градиента.

Для невыпуклых задач Ghadimi & Lan (2013) показали, что ZO-SGD находит \varepsilon-стационарную точку (\mathbb{E}\|\nabla f(x)\|^2 \le \varepsilon) за O(d/\varepsilon^2) итераций. Методы с редукцией дисперсии (ZO-SVRG, ZO-SPIDER) позволяют снизить фактор d до константы при определённых предположениях о структуре задачи (например, конечная сумма).

Методы прямого поиска при мягких условиях (наличие всюду плотного множества дифференцируемости) гарантируют сходимость к стационарной точке Кларка. Байесовская оптимизация даёт сублинейные оценки накопленного сожаления (regret) для GP-UCB. Эволюционные стратегии, как правило, опираются на эмпирическую эффективность, хотя для CMA-ES доказана логарифмическая сходимость на унимодальных выпукло-квадратичных задачах.

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

  • Black-box adversarial attacks. ZO-методы (ZOO, AutoZOOM) генерируют состязательные примеры, используя только вероятностные метки модели-жертвы. Оценки градиента строятся через симметричные разности, не требуя внутреннего доступа.
  • Подбор гиперпараметров. Байесовская оптимизация — стандарт де-факто; также применяются эволюционные алгоритмы и SPSA.
  • Обучение с подкреплением. Evolution Strategies (ES), предложенные Salimans et al. (2017), обучают нейросетевые политики, оценивая приращение награды по случайным возмущениям параметров. Метод легко масштабируется на тысячи параллельных воркеров.
  • Оптимизация недифференцируемых метрик. Прямая оптимизация AUC, F1, среднего обратного ранга возможна ZO-методами, где градиент заменяется сглаженной оценкой.
  • Федеративное обучение. Обмен градиентами часто требует значительных коммуникационных затрат. ZO-оптимизация на клиенте позволяет передавать лишь скалярные значения, снижая объём трафика на порядок (Liu et al., 2020).
  • API больших языковых моделей. Тонкая настройка больших языковых моделей через чёрный ящик (Black-Box Tuning, BBT) использует ZO-оценки градиента по запросам к API, обходя необходимость внутренних градиентов модели. BBTv2 и аналоги применяют проекцию на низкоразмерное подпространство для обхода проклятия размерности.
  • Научное машинное обучение. В физически информированных нейросетях (PINNs) и гибридных моделях, где часть компонент задана недифференцируемыми симуляторами, ZO-подход позволяет обучать нейросеть сквозным образом.
  • Генеративные модели и обратные задачи. Оптимизация скрытых кодов StyleGAN или диффузионных моделей без доступа к градиенту генератора.

Преимущества и недостатки

Преимущества:

  • Не требуют программирования градиента — снижение инженерных затрат и исключение ошибок;
  • Применимы к любым чёрным ящикам, включая недифференцируемые и дискретные компоненты;
  • Естественная параллелизация (эволюционные стратегии, ZO с большими батчами);
  • Робастность к шуму в измерениях функции.

Недостатки:

  • Проклятие размерности: число обращений к функции масштабируется как O(d) в худшем случае;
  • Высокая дисперсия оценок градиента, требующая тщательного подбора \mu и методов уменьшения дисперсии;
  • Медленная практическая сходимость по сравнению с градиентными аналогами при одинаковом бюджете вычислений;
  • Невозможность точного нахождения седловых точек и чувствительность к локальным особенностям ландшафта.

Современные направления исследований

  • Уменьшение дисперсии. Интеграция техник стохастической рекуррентности (SPIDER, SARAH, STORM) в ZO-оптимизацию позволила получить оценки сложности, сравнимые с градиентными методами с точностью до константы (Fang et al., 2018; Liu et al., 2018).
  • Адаптивное сэмплирование направлений. Использование активных подпространств, importance sampling и координатных спусков снижает эффективную размерность и ускоряет сходимость в задачах с низкоразмерной структурой.
  • Распределённая и децентрализованная ZO-оптимизация. Разработаны асинхронные алгоритмы для рабочих узлов, каждый из которых имеет доступ только к локальному оракулу (Hajinezhad et al., 2019).
  • Высокоразмерная ZO-оптимизация. Методы проекции градиента на подпространство (ZO-BCD, ZO-SGD с dropout-направлениями) позволяют обучать модели с миллиардами параметров через API, например, BBTv2 использует низкоранговую матрицу возмущений.
  • ZO второго порядка. Исследуются оценки Гессиана через конечные разности (ZO-Newton), ускоряющие локальную сходимость.
  • Теория для негладких и невыпуклых задач. Активно развиваются оценки для функций, удовлетворяющих условию Куроды–Лоджа, и для оптимизации с ограничениями без вычисления градиента.
  • ZO для федеративного и приватного обучения. Доказано, что ZO-апдейты обеспечивают дифференциальную приватность «из коробки» благодаря естественной стохастичности, что открывает новые перспективы.

Связь с другими разделами оптимизации

Безградиентная оптимизация не является изолированной дисциплиной; она заимствует идеи из численных методов (доверительные области, линейный поиск), стохастической аппроксимации (SPSA, SGD), эволюционных вычислений (популяционные стратегии) и глобальной оптимизации (GP-сюррогаты). ZO-методы, в свою очередь, дополняют теорию стохастического градиентного спуска, предоставляя инструменты для ситуаций, когда даже стохастический градиент недоступен. В контексте онлайн-обучения и бандитов безградиентная обратная связь описывается как bandit feedback, а методы ZO-оптимизации сглаживают задачу, сводя её к стандартной стохастической оптимизации.

Таким образом, современная безградиентная оптимизация представляет собой богатый набор инструментов, эффективность которых особенно высока там, где традиционные градиентные подходы бессильны. Быстрый прогресс в области больших моделей и федеративных систем делает DFO/ZO-методы неотъемлемой частью арсенала ML-инженера.

Литература

  1. Conn A. R., Scheinberg K., Vicente L. N. Introduction to Derivative-Free Optimization. — SIAM, 2009.
  2. Nesterov Yu., Spokoiny V. Random gradient-free minimization of convex functions // Foundations of Computational Mathematics, 2017. (Предварительная версия: CORE DP 2011/2, 2011).
  3. Spall J. C. Introduction to Stochastic Search and Optimization. — Wiley, 2003.
  4. Larson J., Menickelly M., Wild S. M. Derivative-free optimization methods // Acta Numerica, 2019, Vol. 28, pp. 287–404.
  5. Ghadimi S., Lan G. Stochastic first- and zeroth-order methods for nonconvex stochastic programming // SIAM Journal on Optimization, 2013, Vol. 23(4), pp. 2341–2368.
  6. Liu S., Kailkhura B., Chen P.-Y., Ting P., Chang S., Amini L. Zeroth-order stochastic variance reduction for nonconvex optimization // NeurIPS, 2018.
  7. Salimans T., Ho J., Chen X., Sutskever I. Evolution strategies as a scalable alternative to reinforcement learning // arXiv:1703.03864, 2017.
  8. Sun T., Shao Y., Qian H., Huang X., Qiu X. Black-box tuning for language-model-as-a-service // ICML, 2022.
  9. Wang Z., Chen J., Liu S., Lin Q., Ma S., Chen T. ZOO: Zeroth order optimization based black-box attacks to deep neural networks // AAAI, 2018.
  10. Fang C., Li C. J., Lin Z., Zhang T. SPIDER: Near-optimal non-convex optimization via stochastic path-integrated differential estimator // NeurIPS, 2018.
  11. Hajinezhad D., Hong M., Zhao T., Wang Z. NESTT: A nonconvex primal-dual splitting method for distributed and stochastic optimization // IEEE Trans. Signal Processing, 2019.
  12. Boyd S., Vandenberghe L. Convex Optimization. — Cambridge University Press, 2004.
  13. Nocedal J., Wright S. J. Numerical Optimization. — 2nd ed., Springer, 2006.
  14. Chen P.-Y., Zhang H., Sharma Y., Yi J., Hsieh C.-J. ZOO: Zeroth order optimization based black-box attacks to deep neural networks without training substitute models // ACM Workshop on AISec, 2017.
Личные инструменты