Zbuduj i przetestuj najlepszy model
W rozdziale 3 odkryłeś(-aś), że poniższe parametry pozwalają uzyskać lepszy model:
max_depth = 8,min_samples_leaf = 150,class_weight = "balanced"
W tym rozdziale okazało się, że część cech ma pomijalny wpływ na wyniki. Stwierdziłeś(-aś), że trafne przewidywania można uzyskać, korzystając z niewielkiego zestawu istotnych cech – i odpowiednio zaktualizowałeś(-aś) zbiory treningowy i testowy, tworząc zmienne features_train_selected oraz features_test_selected.
Mając te wszystkie informacje, zbudujesz teraz najlepszy model do przewidywania odejść pracowników i ocenisz go za pomocą odpowiednich metryk.
Zmienne features_train_selected i features_test_selected są dostępne w twoim środowisku, a funkcje recall_score i roc_auc_score zostały już zaimportowane.
To ćwiczenie jest częścią kursu
HR Analytics: Przewidywanie rotacji pracowników w Pythonie
Instrukcje do ćwiczenia
- Zainicjuj najlepszy model, używając parametrów podanych w opisie zadania.
- Dopasuj model, korzystając wyłącznie z wybranych cech ze zbioru treningowego.
- Wygeneruj przewidywania na podstawie wybranych cech ze zbioru testowego.
- Wyświetl dokładność, czułość (recall) oraz wynik ROC/AUC modelu.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Initialize the best model using parameters provided in description
model_best = DecisionTreeClassifier(____=____, ____=____, ____=____, random_state=42)
# Fit the model using only selected features from training set: done
model_best.fit(____, target_train)
# Make prediction based on selected list of features from test set
prediction_best = model_best.____(____)
# Print the general accuracy of the model_best
print(____.score(features_test_selected, target_test) * 100)
# Print the recall score of the model predictions
print(____(target_test, prediction_best) * 100)
# Print the ROC/AUC score of the model predictions
print(roc_auc_score(target_test, ____) * 100)