Изменения

Перейти к: навигация, поиск

Настройка гиперпараметров

32 байта добавлено, 19:41, 22 апреля 2020
замена деф. на тире
== Гиперпараметры ==
Гиперпараметры - параметры, которые не настраиваются во время обучения модели. Пример гиперпараметра - шаг градиентного спуска, он задается перед обучением. Пример параметров - веса градиентного спуска, они изменяются и настраиваются во время обучения.
Для подбора гиперпараметров необходимо разделить датасет на три части:
# Создание сетки гиперпараметров. В данном случае будем подбирать коэффициент регуляризации, шаг градиентного спуска, количество итераций и параметр скорости обучения.
# Создание экземпляра класса кросс-валидации
# Создание экземпляра GridSearch (из sklearn). Первый параметр - модель, второй - сетка гиперпараметров, третий - функционал ошибки (используемый для контроля качества моделей по технике кросс-валидации), четвертый - кросс-валидация (можно задать количество фолдов, а можно передать экземпляр класса кросс - валидации)
# Запуск поиска по сетке.
==== Sklearn Grid search: важные атрибуты ====
* best_estimator_ - лучшая модель* best_score_ - ошибка, полученная на лучшей модели.* best_params_ - гиперпараметры лучшей модели <br>
[[Файл:KNeighborsClassifier_bestest.png|center|1000px]] <br>
* cv_results_ - результаты всех моделей. <br>
[[Файл:KNeighborsClassifier_results.png|center|1000px]] <br>
Вместо полного перебора, Random grid search работает с некоторыми, случайным образом выбранными, комбинациями. На основе полученных результатов, происходит сужение области поиска.
Когда random grid search будет гораздо полезнее, чем grid search? В ситуации, когда гиперпараметров много, но сильно влияющих на конечную производительность алгоритма - мало.
==== Реализация Random grid ====
==== Основная информация ====
SMBO (Sequential Model-Based Optimization) - методы, основанные на байесовской оптимизации
Когда используют SMBO? Когда оптимизация целевой функции будет стоить очень "дорого". Главная идея SMBO - замена целевой функции "суррогатной" функцией.
На каждом шаге работы SMBO:
==== Основная информация ====
TPE - Tree-structured Parzen Estimator (Древовидная структура Парзена)
Как было написано выше, методы SMBO отличаются тем, как они строят вероятностную модель <math> {p(y|x)} </math>. В случае TPE, используется следующая функция:
<math> p(y) = \frac{p(x|y) * p(y)}{p(x)} </math>
<math> {p(x|y)} </math> - распределение гиперпараметров.
==== Реализация ====
51
правка

Навигация