Преимущества оптимизации роя частиц по сравнению с байесовской оптимизацией для настройки гиперпараметра?


18

Существуют современные исследования байесовской оптимизации (1) для настройки гиперпараметров ML. Мотивация здесь заключается в том, что требуется минимальное количество точек данных, чтобы сделать осознанный выбор того, какие точки стоит попробовать (вызовы целевых функций стоят дорого, поэтому делать меньше нужно лучше), потому что обучение модели требует много времени - некоторые скромные - Большие проблемы с SVM, над которыми я работал, могут занять от нескольких минут до нескольких часов.

С другой стороны, Optunity - это реализация роя частиц, предназначенная для решения той же задачи. Я не слишком хорошо знаком с PSO, но кажется, что он должен быть менее эффективным в том смысле, что для оценки поверхности гиперпараметра требуется большее количество пробных точек и, следовательно, оценки объективных функций.

Я упускаю ключевую деталь, которая делает PSO предпочтительным для BO в контексте машинного обучения? Или выбор между ними всегда контекстуален для задачи настройки гиперпараметра?


(1) Шахриари и др. «Извлечение человека из цикла: обзор байесовской оптимизации».


не нуждается в градиенте. работает с перерывами. умеренно эффективный обрабатывает несколько измерений. хорошо справляется с шумом. Имеет встроенную надежность оценки.
EngrStudent - Восстановить Монику

@EngrStudent Вы можете сказать все эти вещи о BO, за исключением того, что BO, кажется, более эффективен, потому что требует меньшего количества оценки функций, по крайней мере, на мой взгляд. Я не спрашиваю о PSO вообще, я спрашиваю о его достоинствах относительно BO.
Sycorax сообщает восстановить Monica

1
Недостаточно хорошо разбирается в этой теме, чтобы сделать этот окончательный ответ, но я думаю, что Байесовская оптимизация постигнет та же участь, что и большинство эффективных оптимизаторов с очень мультимодальными проблемами (см .: 95% проблем машинного обучения): это нули на ближайший локальный минимум без «съемки» глобального пространства. Я думаю, что Particle Swarm было бы лучше найти нелокальные минимумы.
Клифф AB

2
Извиняюсь за опоздание на вечеринку, не знаю, как мне удавалось так долго игнорировать вопрос об Optunity! :-)
Марк Клазен

1
@MarcClaesen Должен признаться, я надеялся, что в какой-то момент вы найдете время ответить. Поздно или нет, я думаю, что мы все рады, что вы прибыли.
Sycorax говорит восстановить Monica

Ответы:


25

Как ведущий разработчик Optunity, я добавлю свои два цента.

Мы провели обширные тесты, сравнивая Optunity с наиболее популярными байесовскими решателями (например, hyperopt, SMAC, bayesopt) по реальным проблемам, и результаты показывают, что PSO на самом деле не менее эффективен во многих практических случаях. В нашем тесте, который состоит из настройки SVM-классификаторов на различные наборы данных, Optunity на самом деле более эффективен, чем hyperopt и SMAC, но немного менее эффективен, чем BayesOpt. Я хотел бы поделиться результатами здесь, но я собираюсь подождать, пока Optunity, наконец, будет опубликован в JMLR (на рассмотрении уже более года, так что не задерживайте дыхание ...).

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

Большой аргумент в пользу PSO заключается в том, что он смущающе параллелен. Байесовскую оптимизацию часто трудно распараллелить из-за ее по своей природе последовательной природы (единственное реальное исключение - реализация hyperopt). Учитывая возможности для распространения, что становится нормой, Optunity быстро берет на себя инициативу в настенные часы, чтобы получить хорошие решения.

Другим ключевым отличием между Optunity и большинством других специализированных библиотек оптимизации гиперпараметров является целевая аудитория: Optunity имеет самый простой интерфейс и нацелен на не обучающихся машинному обучению, в то время как большинству других библиотек требуется некоторое понимание байесовской оптимизации для эффективного использования (т. Е. Они ориентирован на специалистов).

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


4
Как информированный ответ, как мы могли получить! Мне любопытно: вы говорите, что PSO решатель конкурирует с подходами байесовской оптимизации. Разве что сказать , что ПСО работать параллельно оказывается быстрее Bayseian оптимизации выполняются последовательно ? Не пытаться быть злым, но это важное различие для меня, чтобы понять.
Клифф А.Б.

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

Это интересно. Есть мысли, почему? Нестабильная гиперпараметрическая поверхность?
Клифф А.Б.

3
Я думаю, что есть несколько причин. С одной стороны, гиперпараметрические поверхности имеют много локальных оптимумов (например, из-за конечных эффектов выборки, сгибов перекрестной проверки, присущей случайности в некоторых подходах к обучению). Во-вторых, байесовская оптимизация опирается на построение точных суррогатных целевых функций, что является непростой задачей, пока целевая функция не будет отбираться много раз. Байесовская оптимизация занимает некоторое время, прежде чем сходимость ускоряется (часто опускаемая деталь). К тому времени метаэвристические методы, такие как PSO, также достигли фазы локального поиска. PSO очень хорош в локальном поиске.
Марк Класен

4
+1 за отличный ответ. Я создал свое собственное программное обеспечение BO, которое, я должен признать, на данный момент является в основном тщеславным проектом, поэтому я понимаю, как процедура BO работает в некоторых деталях; Я рад, что могу начать царапать поверхность того, что еще происходит в мире настройки гиперпараметров. Ваше замечание о наивных подходах действительно приходит мне в голову, поскольку одна из моих старых наивных программ тюнинга настраивает модель уже неделю без конца ... Спасибо за ваш вклад, и я уверен, что получу больше вопросов, как только я перевару это.
Sycorax говорит восстановить Monica

0

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


Комментарии не для расширенного обсуждения; этот разговор был перемещен в чат .
gung - Восстановить Монику
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.