TL; DR
Я рекомендую использовать LIPO. Это достоверно правильно и доказуемо лучше, чем чистый случайный поиск (PRS). Он также чрезвычайно прост в реализации и не имеет гиперпараметров. Я не проводил анализ, который сравнивал бы LIPO с BO, но я ожидаю, что простота и эффективность LIPO подразумевают, что он превзойдет BO.
(См. Также: Каковы некоторые из недостатков байесовской оптимизации гиперпараметров? )
Байесовская оптимизация
Методы байесовского типа оптимизации строят суррогатные модели гауссовского процесса для исследования пространства параметров. Основная идея заключается в том, что кортежи параметров, которые находятся ближе друг к другу, будут иметь одинаковые значения функций, поэтому допущение о структуре дисперсии между точками позволяет алгоритму делать обоснованные предположения о том, какой кортеж с лучшим параметром наиболее целесообразно попробовать в дальнейшем. Эта стратегия помогает сократить количество оценок функций; на самом деле, мотивация методов BO состоит в том, чтобы поддерживать как можно меньшее количество оценок функций, в то же время «используя всего буйвола», чтобы сделать правильные предположения о том, какой смысл проверять дальше. Существуют различные показатели качества (ожидаемое улучшение, ожидаемое улучшение квантилей, вероятность улучшения ...), которые используются для сравнения точек для посещения в следующем.
Сравните это с чем-то вроде поиска по сетке, который никогда не будет использовать информацию из своих предыдущих оценок функций, чтобы сообщить, куда идти дальше.
Кстати, это также мощный метод глобальной оптимизации, и поэтому он не делает никаких предположений о выпуклости поверхности. Кроме того, если функция является стохастической (скажем, оценки имеют некоторый собственный случайный шум), это может быть непосредственно учтено в модели GP.
С другой стороны, вам нужно будет соответствовать хотя бы одному ГП на каждой итерации (или нескольким, выбирать «лучшие», или усреднять по альтернативам, или полностью байесовские методы). Затем модель используется для создания (возможно, тысяч) прогнозов, обычно в форме многоэтапной локальной оптимизации, с наблюдением, что гораздо дешевле оценить функцию прогнозирования GP, чем оптимизируемую функцию. Но даже с этими вычислительными затратами, как правило, бывает так, что даже невыпуклые функции могут быть оптимизированы с помощью относительно небольшого числа вызовов функций.
По этой теме широко цитируется статья Джоунса и др. «Эффективная глобальная оптимизация дорогостоящих функций черного ящика». Но есть много вариантов этой идеи.
Случайный поиск
Даже когда функция стоимости дорогая для оценки, случайный поиск все еще может быть полезен. Случайный поиск очень прост в реализации. Единственный выбор для исследователя , чтобы сделать это установка вероятности , что вы хотите , чтобы ваши результаты лежат в некотором квантильном ; остальное происходит автоматически, используя результаты из основной вероятности.pд q
Предположим, что ваш квантиль равен и вы хотите вероятность что результаты модели будут в верхних процентов от всех наборов гиперпараметров. Вероятность того, что все попыток кортежей не находятся в этом окне, равна (поскольку они выбираются независимо случайным образом из одного и того же распределения), поэтому вероятность того, что хотя бы один кортеж находится в этой области, составляет . Собрав все вместе, мы имеемq=0.95p=0.95100×(1−q)=5nq n = 0,95 n 1 - 0,95 nqn=0.95n1−0.95n
1−qn≥p⟹n≥log(1−p)log(q)
который в нашем конкретном случае дает .n≥59
Это результат того, почему большинство людей рекомендуют попыток кортежей для случайного поиска. Стоит отметить, что сравнимо с количеством экспериментов, необходимых для получения хороших результатов методами, основанными на гауссовском процессе, при умеренном числе параметров. В отличие от гауссовских процессов, число кортежей запросов не изменяется с количеством гиперпараметров для поиска; действительно, для большого числа гиперпараметров метод, основанный на гауссовском процессе, может занять много итераций, чтобы добиться прогресса.n=60n=60
Поскольку у вас есть вероятностная характеристика того, насколько хороши результаты, этот результат может стать убедительным инструментом, чтобы убедить вашего босса в том, что проведение дополнительных экспериментов приведет к уменьшению предельной прибыли.
ЛИПО и его варианты
Это захватывающее прибытие, которое, если оно не ново , безусловно, ново для меня. Это происходит путем чередования наложения информированных границ на функцию, выборки из наилучшей границы и использования квадратичных приближений. Я все еще прорабатываю все детали, но я думаю, что это очень многообещающе. Это хорошая рецензия на блог , и статья Седрика Малербе и Николаса Ваятиса « Глобальная оптимизация функций Липшица ».