Существует множество методов. Они могут быть в значительной степени разделены на случайные / ненаправленные методы поиска (такие как поиск по сетке или случайный поиск) и прямые методы. Имейте в виду, однако, что все они требуют тестирования значительного количества настроек гиперпараметра, если вам не повезет (по крайней мере, сотни, зависит от количества параметров).
В классе прямых методов можно выделить несколько различных подходов:
- методы без производных, например Nelder-Mead simplex или DIRECT
- эволюционные методы, такие как CMA-ES и рой частиц
- модельно-ориентированные подходы, например, EGO и последовательный кригинг
Возможно, вы захотите взглянуть на Optunity , пакет Python, который предлагает множество решателей для настройки гиперпараметров (пока все, что я упомянул, кроме EGO и Kriging). Оптуниты будут доступны для MATLAB и R в ближайшее время. Отказ от ответственности: я являюсь основным разработчиком этого пакета.
Исходя из моего личного опыта, эволюционные методы очень эффективны для решения подобных проблем.