В существенных обстоятельствах испытания все гиперпараметры могут иметь неограниченные фундаментальные значения, а жизнеспособный набор гиперпараметров может быть n-мерным векторным пространством с фактическими значениями. Однако, поскольку гиперпараметры модели ML могут учитывать вопросы из нескольких областей и иметь разные ограничения, их проблемы оптимизации часто представляют собой сложные задачи оптимизации с ограничениями.

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

Метод настройки гиперпараметров состоит из четырех основных компонентов.

● Оценщик с целевой функцией.

● Область поиска.

● Метод поиска или оптимизации комбинаций гиперпараметров.

● Функция оценки для сравнения производительности различных комбинаций гиперпараметров.

Работа с настройкой гиперпараметров

Оптимизация гиперпараметров направлена ​​на получение оптимальной или близкой к оптимальной производительности модели путем изменения гиперпараметров в рамках бюджетных ограничений. Математическая формулировка функции варьируется в зависимости от целевой функции выбранного алгоритма ML и функции метрики производительности. Производительность модели может быть измерена с использованием различных показателей, включая точность, среднеквадратичную ошибку, оценку F1 и частоту ложных срабатываний. В действительности, однако, бюджеты времени являются существенным ограничением для улучшения моделей оптимизации гиперпараметров и должны учитываться. Максимизация целевой функции модели ML с приличным количеством конфигураций гиперпараметров часто занимает много времени.

Основной процесс оптимизации гиперпараметров выглядит следующим образом:

1. Выберите целевую функцию и показатели эффективности;

2. Определите гиперпараметры, которые необходимо настроить, опишите их виды и определите наилучший подход к оптимизации.

3. В качестве базовой модели обучите модель машинного обучения, используя настройку гиперпараметров по умолчанию или общие значения.

4. Начните процесс оптимизации, выбрав широкое пространство поиска в качестве вероятного домена гиперпараметров на основе ручного тестирования и опыта предметной области.

5. Сузьте область поиска на основе проверенных в настоящее время областей хорошо работающих значений гиперпараметров или, при необходимости, изучите дополнительные области поиска.

6. В качестве окончательного ответа верните наиболее эффективную конфигурацию гиперпараметров.

Как генетический алгоритм используется в оптимизации гиперпараметров?

Одним из наиболее распространенных метэвристических алгоритмов является генетический алгоритм (ГА), в основе которого лежит эволюционная идея о том, что люди с наивысшим потенциалом выживания и адаптации к окружающей среде имеют больше шансов выжить и передать свои качества будущим поколениям. . Ставки их родителей будут переданы следующему поколению, среди которых могут быть как хорошие, так и плохие люди. У лучших людей будет больше шансов выжить и родить более способных детей, в то время как худшие люди постепенно исчезнут. Человек с наибольшей приспособляемостью будет выбран в качестве глобального оптимума через несколько поколений.

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

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

1. Сначала вы создаете начальную популяцию моделей ML и случайным образом выбираете гиперпараметры.

2. Рассчитайте свою функцию потерь для каждой модели, например, логарифмическую потерю.

3. Затем выберите некоторое количество моделей с наименьшей ошибкой.

4. Теперь создайте потомство, поэтому вы создаете популяцию новых моделей ML на основе лучших моделей предыдущего поколения и немного меняете их гиперпараметры. Ваши новые люди будут состоять из моделей предыдущей популяции и свежесгенерированных моделей в некоторой пропорции, например, 50/50.

5. Вы вычисляете свою функцию потерь, сортируете свои модели и повторяете процесс.

Генетические алгоритмы не совершенны, и вам все еще нужно указать свою функцию потерь, размер вашей популяции, соотношение потомства с измененными параметрами и так далее.

Для дополнительной информации:

https://anumak.ai/