Evalueer de optimale boom
In deze oefening evalueer je de ROC AUC-score op de testset van het optimale model van grid_dt.
Om dit te doen bepaal je eerst voor elke observatie in de testset de kans op het positieve label. Je kunt de methode predict_proba() van een sklearn-classifier gebruiken om een 2D-array te berekenen met daarin de waarschijnlijkheden van respectievelijk de negatieve en positieve klasselabels als kolommen.
De gegevensset is al voor je geladen en verwerkt (numerieke kenmerken zijn gestandaardiseerd); de data is gesplitst in 80% training en 20% test. X_test, y_test zijn beschikbaar in je werkruimte. Daarnaast hebben we ook het getrainde GridSearchCV-object grid_dt geladen dat je in de vorige oefening hebt aangemaakt. Merk op dat grid_dt als volgt is getraind:
grid_dt.fit(X_train, y_train)
Deze oefening maakt deel uit van de cursus
Machine Learning met boomgebaseerde modellen in Python
Oefeninstructies
Importeer
roc_auc_scoreuitsklearn.metrics.Haal het attribuut
.best_estimator_uitgrid_dten wijs het toe aanbest_model.Voorspel de testset-waarschijnlijkheden op de positieve klasse als
y_pred_proba.Bereken de ROC AUC-score op de testset
test_roc_aucvanbest_model.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Import roc_auc_score from sklearn.metrics
____
# Extract the best estimator
best_model = ____
# Predict the test set probabilities of the positive class
y_pred_proba = ____
# Compute test_roc_auc
test_roc_auc = ____
# Print test_roc_auc
print('Test set ROC AUC score: {:.3f}'.format(test_roc_auc))