Wykorzystanie najlepszych wyników
Analiza wyników przeszukiwania siatki jest ciekawa, ale nasz ostateczny cel jest praktyczny – chcemy generować predykcje na zbiorze testowym za pomocą obiektu estymatora.
Dostęp do tego obiektu uzyskamy przez właściwość best_estimator_ naszego obiektu przeszukiwania siatki.
Przyjrzyjmy się zawartości właściwości best_estimator_, wykonajmy predykcje i obliczmy miary oceny. Na początek użyjemy domyślnej metody predict (zwracającej predykcje klas), a następnie sięgniemy po predict_proba zamiast predict, aby obliczyć wynik ROC-AUC – ta miara wymaga bowiem prawdopodobieństw. Używamy wycinka [:,1], aby uzyskać prawdopodobieństwa klasy pozytywnej.
Do dyspozycji masz zbiory danych X_test i y_test oraz obiekt grid_rf_class z poprzednich ćwiczeń.
To ćwiczenie jest częścią kursu
Strojenie hiperparametrów w Pythonie
Instrukcje do ćwiczenia
- Sprawdź typ właściwości
best_estimator_. - Użyj właściwości
best_estimator_, aby wygenerować predykcje na zbiorze testowym. - Oblicz macierz pomyłek i wynik ROC_AUC na podstawie tych predykcji.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# See what type of object the best_estimator_ property is
print(____(____.____))
# Create an array of predictions directly using the best_estimator_ property
predictions = grid_rf_class.____._____(X_test)
# Take a look to confirm it worked, this should be an array of 1's and 0's
print(predictions[0:5])
# Now create a confusion matrix
print("Confusion Matrix \n", confusion_matrix(y_test, ______))
# Get the ROC-AUC score
predictions_proba = grid_rf_class.best_estimator_.predict_proba(X_test)[:,1]
print("ROC-AUC Score \n", roc_auc_score(y_test, _____))