ComeçarComece de graça

O objeto RandomizedSearchCV

Assim como a biblioteca GridSearchCV do Scikit Learn, RandomizedSearchCV oferece vários recursos úteis para realizar uma busca aleatória de forma eficiente. Você vai criar um objeto RandomizedSearchCV, fazendo o pequeno ajuste necessário em relação ao objeto GridSearchCV.

As opções desejadas são:

  • Um Estimator padrão de Gradient Boosting Classifier
  • Validação cruzada com 5 folds
  • Usar acurácia para avaliar os modelos
  • Usar 4 núcleos para processamento em paralelo
  • Garantir que você faça refit no melhor modelo e retorne as pontuações de treino
  • Amostrar aleatoriamente 10 modelos

A grade de hiperparâmetros deve ser para learning_rate (150 valores entre 0.1 e 2) e min_samples_leaf (todos os valores entre 20 e 64, inclusive).

Você terá disponíveis os conjuntos de dados X_train e y_train.

Este exercício faz parte do curso

Ajuste de Hiperparâmetros em Python

Ver curso

Instruções do exercício

  • Crie uma grade de parâmetros conforme especificado no contexto acima.
  • Crie um objeto RandomizedSearchCV conforme descrito no contexto acima.
  • Treine o objeto RandomizedSearchCV com os dados de treino.
  • Imprima os valores escolhidos pelo processo de modelagem para ambos os hiperparâmetros.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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_['____'])
Editar e executar o código