Налаштування гіпер параметрів: Випадковий пошук та оптимізація Байєса


14

Отже, ми знаємо, що випадковий пошук працює краще, ніж пошук в сітці, але останнім підходом є байєсівська оптимізація (з використанням гауссових процесів). Я шукав порівняння між ними, і нічого не знайшов. Я знаю, що в cs231n Стенфорда вони згадують лише випадковий пошук, але можливо, що вони хотіли зробити все просто.

Моє запитання: який підхід, як правило, кращий, і якщо відповідь "іноді випадковий пошук, іноді байєсівський", коли я віддаю перевагу одному методу над іншим?


2
Google зараз продає свої глибокі сервіси хмарного навчання та натискає на функцію, яка автоматично налаштовує ваші гіперпараметри за допомогою байєсівської оптимізації ... звичайно, стверджуючи, що це робить найкраще і швидше (пошук в гіперпросторі ефективніше). Існує декілька робіт, які оцінюють БО проти РС, а також показують, що БО працює трохи краще. ІМО з того, що я бачив, різниця - це те, що вам би більше хвилюватись у змаганнях Kaggle, ніж у реальному житті.
JPJ

Відповіді:


9

Я думаю, що відповідь тут така ж, як і всюди в науці даних: це залежить від даних :-)

Може статися, що один метод перевершує інший (тут https://arimo.com/data-science/2016/bayesian-optimization-hyperparameter-tuning/ люди порівнюють оптимізацію байєвських гіперпараметрів та досягають кращого результату в боротьбі зі злочинністю злочину в Сан-Франциско, ніж при випадковому пошуку), проте я сумніваюся, що для цього існує загальне правило. Ви можете побачити хороший gif тут ( http://blog.revolutionanalytics.com/2016/06/bayesian-optimization-of-machine-learning-models.html ), де люди показують "шлях", який баєсівська оптимізація проходить у ландшафті Гіперпараметри, зокрема, не здається, що це взагалі перевершує випадковий пошук ...

Я думаю, що причина, чому люди, як правило, використовують оптичну оптимізацію гіперпараметрів Байєса, полягає в тому, що вона просто проводить менше навчальних кроків, щоб досягти порівнянного результату порівняно зі випадковим пошуком із достатньо високою кількістю експериментів.

Підсумовуючи в одному реченні:

* Коли час тренінгу є критичним, використовуйте байєсівську оптимізацію гіперпараметрів, і якщо час не є проблемою, виберіть один з обох ... *

Зазвичай я лінуюся реалізовувати байєсівські речі з Гауссовими процесами, якщо я можу досягти такого ж результату випадковим пошуком ... Я просто треную ансамблі "Градієнт Бостінг" на "мало" даних, тому для мене час - це не проблема ...


5

Байєсова оптимізація краща, тому що вона приймає розумніші рішення. Ви можете перевірити цю статтю, щоб дізнатися більше: Оптимізація гіперпараметрів для нейронних мереж . У цій статті також є інформація про плюси та мінуси обох методів + деякі додаткові прийоми, такі як пошук за сіткою та оцінені по дереву оцінки парзенту. Хоча це було написано для того, щоб показати плюси та мінуси різних методів нейронних мереж, основні знання є узагальнюючими для будь-яких інших областей машинного навчання


1
Я просто хотів зазначити, що у вашому першому реченні справжня причина, чому байєсівська оптимізація краща, полягає не в тому, що рішення, які приймаються, розумніші , а в тому, що рішення приймаються взагалі .
Олександр Росса

1

Слід зазначити, що оптимізація Байєсового гіперпараметра є послідовним процесом, тому це може зайняти більше часу, ніж деякі інші підходи, здатні шукати або проводити паралельно.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.