Курс Python → Оптимизация гиперпараметров с Scikit Optimize

Для оптимизации гиперпараметров в Python-скрипте необходимо выполнить 3 простых шага. Второй шаг включает в себя использование функции train_evaluate в качестве цели для оптимизации в любой библиотеке оптимизации неизвестной функции, такой как «черный ящик». Одним из популярных выборов для этой цели является библиотека Scikit Optimize.

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

Пример использования Scikit Optimize для оптимизации гиперпараметров может выглядеть следующим образом:


from skopt import gp_minimize
from skopt.space import Real, Integer
from skopt.utils import use_named_args

# Определение функции train_evaluate для оптимизации
@use_named_args(dimensions=[Real(0.1, 1.0, name='learning_rate'), Integer(1, 100, name='n_estimators')])
def train_evaluate(learning_rate, n_estimators):
    # Ваш код обучения модели и оценки ее производительности
    return -accuracy

# Оптимизация гиперпараметров
result = gp_minimize(train_evaluate, dimensions=[Real(0.1, 1.0, name='learning_rate'), Integer(1, 100, name='n_estimators')], n_calls=10)

В данном примере мы используем байесовскую оптимизацию для нахождения оптимальных значений learning_rate и n_estimators. После нескольких вызовов train_evaluate с различными значениями гиперпараметров, библиотека Scikit Optimize найдет комбинацию, которая дает наилучшую производительность модели.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Сортировка списка по индексам
  2. Введение в PyTorch
  3. Работа со строками в Python
  4. Удаление ресурса в Python
  5. Создание вложенного генератора
  6. Преобразование числа в список цифр
  7. Оператор морж в Python 3.8
  8. Генераторные функции в Python
  9. Установка и использование pyshorteners
  10. Работа с датой и временем в Python
  11. Python groupby() из itertools: работа с повторяющимися элементами
  12. Создание и использование модулей в Python
  13. Нахождение максимального значения и его индекса в списке
  14. Нахождение отличий в списках
  15. Пространство имен в Python
  16. Изменяемые и неизменяемые объекты
  17. Работа с контекстными переменными
  18. Поиск кода
  19. Создание таблиц в Python с PrettyTable
  20. Форматирование данных с помощью pprint
  21. Метод __getitem__ в Python
  22. Функция product() из itertools
  23. Вставка переменных в шаблоны Flask
  24. Измерение времени выполнения кода
  25. Инициализация структур данных
  26. None в Python: использование и особенности
  27. Печать календаря в Python
  28. Мониторинг работы программы Py-spy
  29. Глобальные переменные в Python
  30. Метод __ixor__ для побитового исключающего ИЛИ
  31. Генерация тестовых данных с factory_boy
  32. Подсчет элементов в Python
  33. Копирование и вставка текста в Python
  34. Отрицательные индексы списков в Python
  35. Преобразование данных в Python
  36. Множества и frozenset
  37. Запуск внешних программ с subprocess
  38. Поиск самого частого элемента
  39. Python reversed() функция
  40. Справка по импортированным модулям
  41. Функция pow() — возвести число в степень
  42. Цикл while в Python

Marketello читают маркетологи из крутых компаний