ComeçarComece de graça

Busca em grade

A otimização de hiperparâmetros pode ser feita pelo sklearn, fornecendo vários parâmetros de entrada, cada um dos quais pode ser gerado usando diversas funções do numpy. Um método de ajuste, que avalia exaustivamente todas as combinações de hiperparâmetros especificadas via param_grid, é a busca em grade (grid search). Neste exercício, você vai usar busca em grade para explorar os hiperparâmetros de um classificador de random forest, usando como função de avaliação a AUC da curva ROC.

X_train, y_train, X_test, y_test estão disponíveis no seu workspace. pandas como pd, numpy como np e sklearn também estão disponíveis. Além disso, GridSearchCV() de sklearn.model_selection está disponível.

Este exercício faz parte do curso

Prevendo CTR com Machine Learning em Python

Ver curso

Instruções do exercício

  • Crie a lista de valores para cada hiperparâmetro em n_estimators e max_depth.
  • Crie um classificador de random forest.
  • Configure uma busca em grade para iterar por todas as combinações de hiperparâmetros.
  • Imprima a melhor pontuação de AUC usando .best_score_ e o melhor estimador que levou a essa pontuação usando .best_estimator_.

Exercício interativo prático

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

# Create list of hyperparameters 
n_estimators = [10, 50]
max_depth = [5, 20]
param_grid = {'n_estimators': ____, 'max_depth': ____}

# Use Grid search CV to find best parameters 
print("starting RF grid search.. ")
rf = ____()
clf = ____(estimator = rf, param_grid = ____, scoring = 'roc_auc')
clf.fit(X_train, y_train)
print("Best Score: ")
print(clf.____)
print("Best Estimator: ")
print(clf.____)
Editar e executar o código