Курс 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. Перезапуск ячейки в Jupyter Notebook с dostoevsky
  2. Работа с Enum в Python3.
  3. Декораторы с @wraps
  4. Обработка исключений в Python
  5. Декораторы в Python
  6. Поиск анаграмм с Counter
  7. Установка и использование модуля Wikipedia
  8. UserList в Python: Описание и примеры использования
  9. Декораторы в Python
  10. Использование модуля math
  11. Кортеж в Python: создание, доступ, изменение
  12. Форматирование строк с помощью f-строк
  13. Генераторы словарей и множеств
  14. Улучшенные подсказки для импорта в Python 3.12
  15. Возврат нескольких значений
  16. Удаление дубликатов из списка с помощью dict.fromkeys
  17. Сравнение строк в Python
  18. Сортировка и обратный порядок
  19. Управление импортом в Python
  20. Конкатенация строк в Python
  21. Отправка HTTP-запросов с User-Agent
  22. Работа с модулем cmath
  23. Форматирование строк в Python
  24. Копирование файлов с shutil()
  25. Работа с CSV в Python
  26. Подсказки при вводе данных в Python
  27. Парсинг статей с Newspaper3k
  28. Python 3.12: переиспользование кавычек
  29. Поиск email
  30. Поиск индекса элемента в списке
  31. Ключевое слово global в Python
  32. Поиск файлов по шаблону
  33. Проверка дублей в списке.
  34. Профилирование данных с Pandas
  35. Чтение бинарного файла в Python.
  36. Именованные аргументы в Python
  37. Оператор @ для умножения матриц
  38. Инициализация переменных
  39. Переопределение унарных операторов
  40. Конкатенация строк с методом join()

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