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

Pause

Байесо́вская оптимиза́ция (в англоязычной литературе — Bayesian optimization) — метод глобальной оптимизации функций чёрного ящика, при котором дорогие в вычислении пробы распределяет вероятностная модель целевой функции[1]. Метод решает задачи оптимизации, где не требуется аналитический вид зависимости. На каждом шаге суррогатная модель предсказывает значения функции и её неопределённость, а функция приобретения превращает эти предсказания в решение о месте следующего замера[2]. Подход рассчитан на задачи, в которых один замер стоит минут машинного времени, испорченной заготовки или недельной лабораторной работы[1].

Своё имя метод получил по формуле Байеса: после каждого измерения модель по правилу байесовского вывода пересчитывает априорное распределение в апостериорное, и следующий выбор опирается на всё накопленное знание[3]. Главный принцип — бережное отношение к пробам: вычислительная работа переносится с целевой функции на дешёвую модель, а оптимизация перестаёт требовать производных и градиентов[2]. С развитием искусственного интеллекта байесовская оптимизация стала основным инструментом настройки гиперпараметров моделей и вошла в системы автоматического машинного обучения[4].

Практическая значимость метода подтверждена в разных отраслях: от настройки нейронных сетей и подбора конструкций летательных аппаратов до автоматизации химических экспериментов[1]. В экспериментах Снека и соавторов байесовская оптимизация показала преимущества при настройке ряда моделей машинного обучения[4]. Случайный поиск служит важным базовым методом сравнения[5]. Настоящая статья описывает постановку задачи, историю метода, его основные части, алгоритм, области применения и программные средства.

Общие сведения
Байесовская оптимизация
Область использования машинное обучение, подбор гиперпараметров, глобальная оптимизация, инженерное проектирование, планирование научного эксперимента
Ключевые слова гауссовский процесс, суррогатная модель, функция приобретения, чёрный ящик, ожидаемое улучшение
Базовые понятия априорное распределение, апостериорное распределение, суррогатная модель, функция приобретения, компромисс разведки и использования

Постановка задачи

Байесовская оптимизация решает задачу поиска максимума целевой функции на области , где — точка пространства параметров[2]. Функция известна только по результатам замеров: аналитическое выражение недоступно, производные не вычисляются, а вероятностная постановка учитывает шум, а каждое значение получается за существенное время или деньги[6]. Такая функция называется функцией чёрного ящика, а её область — пространством поиска.

Отличие от классических численных схем задаётся экономикой замера. В рассматриваемых задачах число вычислений целевой функции ограничено их стоимостью, а её производные могут быть недоступны[6]. Замер часто сопровождается шумом: повторный эксперимент в той же точке даёт другой результат из-за случайности обучения или погрешности приборов[7]. Размерность при этом обычно умеренная — от единиц до десятков параметров, а не тысячи[2].

undefined

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

История

Возникновение идей

Идея выбирать точки эксперимента по вероятностной модели возникла в 1960-е годы на стыке статистики и теории управления[1]. Кушнер в 1964 году предложил выбирать следующую точку по вероятности улучшения текущего результата, а Мокус в 1970-е годы развил байесовский подход к глобальной оптимизации и показал его сходимость для широкого класса функций[1]. В те же годы кригинг — геостатистический метод интерполяции рудных месторождений, родственный регрессионному анализу, — дал вычислительную основу: линейный предсказатель с известной ошибкой[3].

Обзоры подчёркивают, что ранние работы сформулировали обе главные части будущего метода: модель с мерой неопределённости и правило выбора точки, балансирующее разведку и использование[2]. Однако вычислительные возможности эпохи ограничивали применение: пересчёт модели после каждого замера был дорог, а задачи имели считанные переменные[1].

Инженерные корни

В 1980-е годы кригинг перекочевал в проектирование дорогих вычислительных экспериментов: инженеры строили суррогат по результатам моделирования и искали оптимум уже на нём[1]. Джонс, Шонау и Велч в 1998 году свели существовавшие схемы в алгоритм эффективной глобальной оптимизации EGO, где критерием выбора точки стало ожидаемое улучшение[6]. Работа задала стандарт формулировки задачи и показала на инженерных примерах, что десятков проб хватает для близости к оптимуму[6].

Отдельную линию составили работы Мокуса, оформившие байесовский подход как общий инструмент глобальной оптимизации с мерой информации о функции[1]. К концу 1990-х годов метод имел ясную постановку, критерии выбора точек и первые программные реализации, но оставался нишевым инструментом инженерного анализа[6].

Эпоха машинного обучения

Перелом произошёл в 2010-е годы, когда настройка моделей машинного обучения стала массовой дорогой задачей[1]. Снек, Ларошель и Адамс в 2012 году показали на практике, что байесовская схема подбирает гиперпараметры нейронных сетей лучше случайного поиска при том же бюджете[4]. Бергстра с соавторами в том же периоде предложили древесные оценки Парзена — альтернативную суррогатную модель, устойчивую к категориальным параметрам[10].

Теоретический фундамент укрепил анализ доверительных границ: Сринивас с соавторами доказал регретные оценки для гауссовских процессов, показав разумный компромисс разведки и использования[11]. Дальнейшие работы перенесли метод на параллельные и ограниченные постановки, а библиотеки глубокого обучения сделали его частью повседневного инструментария[12]. К концу 2010-х годов байесовская оптимизация вошла в системы автоматического машинного обучения как стандартный блок подбора конфигураций[13].

Суррогатная модель

Суррогатная модель — вероятностное приближение целевой функции, обучаемое на накопленных замерах[2]. Модель предсказывает не только среднее значение в точке, но и неопределённость предсказания; именно мера неопределённости отличает байесовскую схему от обычной интерполяции[3]. После каждого замера апостериорное распределение пересчитывается, и предсказания в окрестности новой точки уточняются[3].

undefined

Гауссовские процессы

Основной суррогат — гауссовский процесс: распределение по функциям, в котором любые значения связаны совместным нормальным распределением[3]. Процесс задаётся средним и ковариационной функцией, а значения в любых точках связаны совместным распределением; ядро кодирует предположение о гладкости целевой функции и определяет, насколько сильно значения в близких точках коррелируют[3]. Замеры превращают априорное распределение в апостериорное: среднее проходит рядом с наблюдениями, а разброс вне наблюдаемых областей остаётся большим[3].

При гауссовской модели наблюдений апостериорное предсказание гауссовского процесса вычисляется аналитически. Его неопределённость зависит от выбранного ядра и модели шума[3]. Стоимость точного обучения гауссовского процесса обычно растёт как , где — число наблюдений. При больших наборах данных применяют приближённые методы[3]. Обзоры рекомендуют процессы для непрерывных пространств небольшой размерности, где предположение гладкости естественно[1].

Древесные модели и оценки Парзена

Для пространств с категориальными и условными параметрами применяют модели на деревьях решений: ансамбли случайных лесов дают предсказание и разброс по разбросу деревьев, устойчиво обрабатывая разнотипные признаки[14]. Древесно-структурированная оценка Парзена (TPE) моделирует распределения конфигураций для двух групп результатов. При минимизации потерь это плотности и , где — выбранный квантиль потерь. Кандидаты оцениваются по отношению [10]. Такой подход лежит в основе популярных средств настройки и не требует обращения ковариационных матриц[14].

Выбор суррогата определяется пространством параметров и бюджетом: при выборе суррогата учитывают типы параметров, размерность пространства и бюджет измерений[14]. Эффективность подхода зависит от соотношения стоимости вычисления целевой функции, обучения суррогата и оптимизации функции приобретения[1].

Функция приобретения

Функция приобретения превращает предсказания суррогата в решение о следующей точке замера[1]. Она ставит каждой точке скалярную оценку полезности, и оптимизация проводится уже по этой дешёвой функции[2]. Все распространённые критерии балансируют две цели: разведку областей с большой неопределённостью и использование областей с высоким предсказанным значением[11].

undefined

Улучшение и его ожидание

Вероятность улучшения измеряет шансы превысить текущий рекорд с учётом неопределённости модели[1]. Критерий исторически первым появился в работах 1960-х годов, но слабо отличает большие перевесы от малых и тяготеет к мелким шагам около рекорда[6]. Ожидаемое улучшение исправляет недостаток: усредняется величина превышения, а не сам факт, поэтому точки с потенциалом заметного роста сохраняют привлекательность[6]. Алгоритм EGO довёл критерий до практической схемы с аналитическим вычислением для гауссовского процесса[6].

Для максимизации при наблюдениях без шума ожидаемое улучшение определяется как[2]:

Здесь — накопленные наблюдения, а ожидание берётся по апостериорному распределению. При шумных измерениях необходимы специальные варианты критерия[2].

Критерий дёшево максимизируется численно: его производные известны, а максимизация по пространству поиска не требует вызовов целевой функции[2].

Верхняя доверительная граница

Критерий доверительной границы складывает предсказанное среднее и бонус за неопределённость с весовым коэффициентом[11]:

Прибавка стимулирует разведку: чем меньше данных в области, тем шире интервал и выше оценка[11]. Коэффициент управляет балансом: при росте параметра схема переходит от жадного использования к систематическому исследованию[11]. Сринивас и соавторы получили сублинейные оценки накопленного регрета для GP-UCB при заданных предположениях о целевой функции, ядре и шуме, а также специальном выборе изменяющегося коэффициента исследования[11].

Ограничения и информационные критерии

В задачах с ограничениями замер в точке может не просто дать низкое значение, но и оказаться недопустимым: авария прототипа или уход физических параметров за пределы нормы[7]. Ограниченная схема моделирует допустимость отдельной вероятностной моделью и выбирает точки, где ожидаемое улучшение умножается на вероятность успеха[7]. Тфаили и соавторы предложили учитывать скрытые ограничения расчётных моделей самолёта с помощью классификаторов, модифицирующих функцию приобретения[9].

Информационные критерии выбирают точку по ожидаемому приросту знания о положении оптимума, а не по ожидаемому значению функции[1]. Энтропийные критерии оценивают ожидаемое уменьшение неопределённости относительно положения оптимума[1]. Выбор критерия зависит от постановки задачи и стоимости его вычисления[2].

Алгоритм

Базовый цикл метода состоит из повторяющихся шагов[2]. Сначала пространство поиска описывают: границы непрерывных параметров, множества категорий, условия согласованности[8]. Затем выбирают стартовые точки — обычно несколько случайных проб, дающих модели первичные данные[2]. После этого повторяют: суррогат обучается на накопленных замерах, функция приобретения максимизируется по пространству, целевая функция измеряется в выбранной точке, результат пополняет данные[2].

undefined

Критерии остановки

Бюджет задаётся числом замеров, временем или деньгами: цель — максимум качества при заданной цене[2]. В алгоритме EGO дополнительным критерием остановки служит снижение максимального ожидаемого улучшения ниже выбранного порога[6].

Параллельные схемы

Классический цикл последовательный: следующая точка зависит от всех предыдущих замеров[12]. Параллельные схемы выбирают пакет точек: фиксированный или адаптивный, с учётом уже назначенных, но не завершённых проб[12]. Ван, Кларк, Лю и Фрейзер разработали метод совместной оптимизации пакетного ожидаемого улучшения (q-EI) с помощью стохастических оценок градиента[12]. Практичные средства допускают десятки одновременных проб на кластере[15].

Шум и повторные запуски

Шум замера снижает качество модели: суррогат начинает объяснять случайность вместо структуры[7]. Схемы с шумом оценивают дисперсию отдельно и учитывают её в предсказаниях, а повторные замеры в одной точке дают независимую оценку погрешности[7]. В задачах обучения со случайной инициализацией повторные запуски одной конфигурации уменьшают риск выбрать конфигурацию по удачному случаю[8].

Применения

Байесовская оптимизация применяется там, где замер дорог, а гладкость функции позволяет суррогату интерполировать[1]. Обзоры перечисляют настройку ранжирования, графику, робототехнику, сенсорные сети, планирование и подбор архитектур глубоких сетей[1]. Ниже рассмотрены три группы задач, в которых метод стал рабочим инструментом.

undefined

Настройка гиперпараметров

Главная прикладная область — подбор гиперпараметров моделей: скорость обучения, регуляризация, глубина сети, параметры деревьев[4]. Каждая проба — полное обучение модели на обучающих данных и оценка функции потерь на проверке, поэтому бюджет проб исчисляется десятками и сотнями[4]. Снек и соавторы показали на наборах задач, что байесовская схема при равном бюджете достигает лучшей точности, чем случайный и сеточный переборы[4].

Российские исследования развивают направление в двух путях. Смирнова и соавторы объединили априорные знания о похожих задачах с апостериорными данными текущей настройки и получили лучший результат на большинстве задач при том же лимите времени[8]. Воробьев показал, что автоматизированная настройка компенсирует потерю точности при сокращении объёма данных до половины, а древесные оценки Парзена предпочтительны для ансамблей деревьев[14].

Открытые средства интегрировали метод в практику: Optuna проводит настройку с древесными оценками Парзена, Hyperopt предлагает несколько суррогатов, а Ax и BoTorch связывают байесовскую схему с современными библиотеками глубокого обучения[16]. Системы автоматического машинного обучения используют байесовскую схему как ядро подбора конфигураций[13].

Инженерные и научные задачи

Инженерные применения исторически старше машинного обучения: подбор параметров вычислительных моделей, проектирование конструкций, планирование экспериментов[6]. Тфаили и соавторы применили ограниченную схему к проектированию летательных аппаратов, где скрытые ограничения проверяются только дорогим расчётом[9]. Летам и соавторы описали промышленную эксплуатацию метода в социальных сетях: автоматическая настройка систем по результатам шумных онлайн-экспериментов[7].

В науке метод автоматизирует планирование: подбор условий химических реакций, настройка параметров приборов, поиск конфигураций материалов[1]. Общая черта — дорогой замер и умеренная размерность, при которой десятки проб дают заметный выигрыш против систематического перебора[2].

Компьютерное зрение и аппаратные системы

Зоев и соавторы использовали байесовский подход для поиска гиперпараметров моделей U-Net. Полученные при программном обучении весовые коэффициенты затем переносились в систему на кристалле для аппаратной реализации[17].

undefined

Похожие схемы работают в распознавании лиц и обработке изображений, где качество чувствительно к настройкам извлечения признаков[1].

Программные средства

Средства первого поколения выросли из научных пакетов: scikit-learn предоставляет гауссовские процессы как суррогат с примерами оптимизации, а scikit-optimize оформляет полный цикл с функциями приобретения[18]. Hyperopt поддерживает случайный поиск, TPE и Adaptive TPE[19].

Второе поколение ориентировано на глубокое обучение и кластеры. BoTorch даёт гауссовские процессы на тензорных вычислениях и современные функции приобретения, а платформа Ax добавляет управление экспериментами и параллельные пробы для глубокого обучения[20]. Optuna позволяет задавать пространство поиска в коде и по умолчанию использует TPESampler. Для сохранения истории между запусками требуется настроить постоянное хранилище[21].

Выбор средства определяется задачей: для небольших непрерывных пространств достаточно scikit-learn и scikit-optimize, для масштабной настройки нейросетей применяют BoTorch, Ax и Optuna, для смешанных пространств — Hyperopt[22]. Все перечисленные средства распространяются свободно и поддерживают параллельные пробы в той или иной форме[15].

Достоинства и ограничения

Сильная сторона метода — возможность экономить дорогие вычисления целевой функции. Величина выигрыша зависит от задачи и сравниваемого алгоритма[1]. Бергстра и Бенджио показали, что случайный поиск сам по себе силён при малом числе важных параметров, поэтому корректное сравнение требует одинакового бюджета и повторных запусков[5]. Метод не требует производных и одинаково работает с непрерывными и категориальными параметрами при подходящем суррогате[10].

Ограничения определяются ценой модели и размерностью. Стоимость точного обучения гауссовского процесса обычно растёт кубически по числу наблюдений; при больших наборах данных применяют приближённые методы[3]. В высокоразмерных пространствах данные редки, суррогат хуже интерполирует, и преимущества против случайного поиска сокращаются[14]. Классический цикл последовательный, а распараллеливание размазывает информацию между пробами и требует специальных схем[12].

Практичные рекомендации сводятся к следующему[1]:

  • применять метод, когда замер дорог относительно вычислений суррогата, а размерность умеренная[1].
  • выбирать суррогат по типу пространства: процессы — для непрерывных, древесные схемы — для смешанных[14].
  • проверять бюджет на повторных запусках для оценки устойчивости результатов настройки[8].
  • для категориальных и условных параметров использовать схемы, поддерживающие их естественным образом[10].

Примечания

  1. ↑ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Shahriari B., Swersky K., Wang Z., Adams R. P., de Freitas N. Taking the Human Out of the Loop: A Review of Bayesian Optimization (англ.) // Proceedings of the IEEE. — 2016. — Vol. 104, no. 1. — P. 148—175. — doi:10.1109/JPROC.2015.2494218.
  2. ↑ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Frazier P. I. A Tutorial on Bayesian Optimization (англ.) // arXiv. — 2018.
  3. ↑ 1 2 3 4 5 6 7 8 9 10 Rasmussen C. E., Williams C. K. I. Gaussian Processes for Machine Learning (англ.). — Cambridge: MIT Press, 2006. — 272 p. — ISBN 9780262182539.
  4. ↑ 1 2 3 4 5 6 Snoek J., Larochelle H., Adams R. P. Practical Bayesian Optimization of Machine Learning Algorithms (англ.) // Advances in Neural Information Processing Systems 25. — 2012.
  5. ↑ 1 2 Bergstra J., Bengio Y. Random Search for Hyper-Parameter Optimization (англ.) // Journal of Machine Learning Research. — 2012. — Vol. 13. — P. 281—305.
  6. ↑ 1 2 3 4 5 6 7 8 9 10 Jones D. R., Schonlau M., Welch W. J. Efficient Global Optimization of Expensive Black-Box Functions (англ.) // Journal of Global Optimization. — 1998. — Vol. 13, no. 4. — P. 455—492. — doi:10.1023/A:1008306431147.
  7. ↑ 1 2 3 4 5 6 Letham B., Karrer B., Ottoni G., Bakshy E. Constrained Bayesian Optimization with Noisy Experiments (англ.) // Bayesian Analysis. — 2019. — Vol. 14, no. 2. — doi:10.1214/18-BA1110.
  8. ↑ 1 2 3 4 5 Смирнова В. С., Шаламов В. В., Ефимова В. А., Фильченков А. А. Оптимизация гиперпараметров на основе объединения априорных и апостериорных знаний о задаче классификации // Научно-технический вестник информационных технологий, механики и оптики. — 2020. — Т. 20, № 6.
  9. ↑ 1 2 3 Tfaily A., Diouane Y., Bartoli N., Kokkolaras M. Bayesian optimization with hidden constraints for aircraft design (англ.) // Structural and Multidisciplinary Optimization. — 2024. — Vol. 67, no. 7. — doi:10.1007/s00158-024-03833-8.
  10. ↑ 1 2 3 4 Bergstra J., Bardenet R., Bengio Y., Kégl B. Algorithms for Hyper-Parameter Optimization (англ.) // Advances in Neural Information Processing Systems 24. — 2011.
  11. ↑ 1 2 3 4 5 6 Srinivas N., Krause A., Kakade S. M., Seeger M. W. Information-Theoretic Regret Bounds for Gaussian Process Optimization in the Bandit Setting (англ.) // IEEE Transactions on Information Theory. — 2012. — Vol. 58, no. 5. — P. 3250—3265. — doi:10.1109/TIT.2011.2182033.
  12. ↑ 1 2 3 4 5 Wang J., Clark S. C., Liu E., Frazier P. I. Parallel Bayesian Global Optimization of Expensive Functions (англ.) // Operations Research. — 2020. — Vol. 68, no. 6. — P. 1850—1865. — doi:10.1287/OPRE.2019.1966.
  13. ↑ 1 2 Hutter F., Kotthoff L., Vanschoren J. Automated Machine Learning: Methods, Systems, Challenges (англ.). — Cham: Springer, 2019. — 219 p. — ISBN 978-3-030-05318-5.
  14. ↑ 1 2 3 4 5 6 Воробьев А. В. Методы повышения точности алгоритмов машинного обучения при сокращении размерности набора данных // International Journal of Open Information Technologies. — 2021. — Т. 9, № 10.
  15. ↑ 1 2 Ax (англ.). ax.dev. Meta Platforms. Дата обращения: 6 октября 2026.
  16. ↑ Optuna (англ.). optuna.org. Preferred Networks. Дата обращения: 6 октября 2026.
  17. ↑ Зоев И. В., Маслов К. А., Марков Н. Г., Мыцко Е. А. Исследование аппаратно-реализованных сверточных нейронных сетей класса U-NET // Известия Томского политехнического университета. Промышленная кибернетика. — 2023. — № 1.
  18. ↑ Gaussian Processes (англ.). scikit-learn.org. scikit-learn developers. Дата обращения: 6 октября 2026.
  19. ↑ Hyperopt (англ.). hyperopt.github.io. Hyperopt contributors. Дата обращения: 6 октября 2026.
  20. ↑ BoTorch (англ.). botorch.org. Meta Platforms. Дата обращения: 6 октября 2026.
  21. ↑ optuna.create_study (англ.). Optuna documentation. Дата обращения: 6 октября 2026.
  22. ↑ scikit-optimize (англ.). scikit-optimize.github.io. scikit-optimize developers. Дата обращения: 6 октября 2026.

Литература

Дополнительно по теме

Pause