НачатьНачать бесплатно

Объект RandomizedSearchCV

Как и GridSearchCV из Scikit Learn, RandomizedSearchCV предоставляет множество полезных возможностей для эффективного проведения случайного поиска. Вам предстоит создать объект RandomizedSearchCV, внеся небольшие изменения по сравнению с объектом GridSearchCV.

Необходимые параметры:

  • Классификатор на основе градиентного бустинга с настройками по умолчанию
  • 5-кратная кросс-валидация
  • Оценка моделей по метрике accuracy
  • Использование 4 ядер для параллельной обработки
  • Повторное обучение лучшей модели и возврат результатов на обучающей выборке
  • Случайная выборка из 10 моделей

Сетка гиперпараметров должна включать learning_rate (150 значений в диапазоне от 0.1 до 2) и min_samples_leaf (все значения от 20 до 64 включительно).

Вам будут доступны наборы данных X_train и y_train.

Это упражнение является частью курса

Подбор гиперпараметров в Python

Посмотреть курс

Инструкции к упражнению

  • Создайте сетку параметров в соответствии с описанием выше.
  • Создайте объект RandomizedSearchCV согласно описанию выше.
  • Обучите объект RandomizedSearchCV на обучающих данных.
  • Выведите значения, выбранные в процессе обучения модели для каждого из гиперпараметров.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Create the parameter grid
param_grid = {'learning_rate': np.linspace(____,____,150), 'min_samples_leaf': list(range(____,65))} 

# Create a random search object
random_GBM_class = ____(
    estimator = ____,
    ____ = param_grid,
    ____ = 10,
    scoring='____', n_jobs=____, cv = ____, refit=____, return_train_score = ____)

# Fit to the training data
random_GBM_class.fit(____, ____)

# Print the values used for both hyperparameters
print(random_GBM_class.____['param_learning_rate'])
print(random_GBM_class.cv_results_['____'])
Редактировать и запускать код