Aan de slagGa gratis aan de slag

Grid search

Hyperparameter-tuning kan in sklearn door verschillende invoerparameters aan te leveren, die je met functies uit numpy kunt genereren. Eén methode die alle combinaties van opgegeven hyperparameters in param_grid uitputtend doorzoekt, is grid search. In deze oefening gebruik je grid search om de hyperparameters van een voorbeeld van een random forest-classifier te verkennen, met als scoringsfunctie de AUC van de ROC-curve.

X_train, y_train, X_test, y_test zijn beschikbaar in je werkruimte. pandas als pd, numpy als np, en sklearn zijn ook beschikbaar in je werkruimte. Daarnaast is GridSearchCV() uit sklearn.model_selection beschikbaar.

Deze oefening maakt deel uit van de cursus

CTR voorspellen met Machine Learning in Python

Cursus bekijken

Oefeninstructies

  • Maak de lijst met waarden voor elke hyperparameter in n_estimators en max_depth.
  • Maak een random forest-classifier.
  • Richt een grid search in om over alle hyperparametercombinaties te itereren.
  • Print de beste AUC-score met .best_score_, en de beste estimator die tot deze score leidde met .best_estimator_.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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.____)
Code bewerken en uitvoeren