Случайный поиск с вероятностью 95% может найти комбинацию параметров в пределах 5% оптимума всего за 60 итераций. Кроме того, по сравнению с другими методами он не увязает в местных оптимах.
Мне нравятся фильмы, в которых побеждает аутсайдер, а также статьи о машинном обучении, в которых простые решения демонстрируют удивительную эффективность. Это основная сюжетная линия «Случайного поиска для оптимизации гиперпараметров» Бергстры и Бенжио. [...] Случайный поиск не был воспринят очень серьезно раньше. Это потому, что он не выполняет поиск по всем точкам сетки, поэтому он не может превзойти оптимум, найденный при поиске по сетке. Но потом пришли Бергстра и Бенжио. Они показали, что в удивительно многих случаях случайный поиск работает примерно так же, как и поиск по сетке. В общем, попытка 60 случайных точек, взятых из сетки, кажется достаточно хорошей.
Оглядываясь назад, можно получить простое вероятностное объяснение результата: для любого распределения по выборочному пространству с конечным максимумом максимум 60 случайных наблюдений лежит в верхних 5% истинного максимума с вероятностью 95%. Это может показаться сложным, но это не так. Представьте себе 5% интервал вокруг истинного максимума. Теперь представьте, что мы выбираем точки из его пространства и видим, попадает ли какая-либо из них в этот максимум. Каждый случайный розыгрыш имеет 5% шансов на приземление в этом интервале, если мы рисуем n точек независимо, то вероятность того, что все они пропустят желаемый интервал, составляет
( 1 - 0,05 )N, Таким образом, вероятность того, что хотя бы одному из них удастся попасть в интервал, равна 1 минус это количество. Мы хотим, по крайней мере, 0,95 вероятности успеха. Чтобы выяснить, сколько дро нам нужно, просто решите для n в уравнении:
1 - ( 1 - 0,05 )N> 0,95
Мы получаем . Та-да!n ⩾ 60
Мораль этой истории такова: если область гиперпараметров, близкая к оптимальной, занимает не менее 5% поверхности сетки, то случайный поиск с 60 испытаниями обнаружит эту область с высокой вероятностью.
Вы можете улучшить этот шанс с большим количеством испытаний.
В общем, если у вас слишком много параметров для настройки, поиск по сетке может стать невозможным. Вот когда я пытаюсь случайный поиск.