CommencerCommencer gratuitement

Développer et tester le meilleur modèle

Dans le chapitre 3, vous avez découvert que les paramètres suivants permettent d’obtenir un meilleur modèle :

  • max_depth = 8,
  • min_samples_leaf = 150,
  • class_weight = "balanced"

Dans ce chapitre, vous avez vu que certaines variables ont un impact négligeable. Vous avez constaté que l’on peut obtenir des prédictions fiables avec un petit nombre de variables pertinentes, et vous avez mis à jour vos jeux d’entraînement et de test en conséquence, en créant les variables features_train_selected et features_test_selected.

Avec toutes ces informations, vous allez maintenant développer le meilleur modèle pour prédire le départ des employés et l’évaluer à l’aide des métriques appropriées.

Les variables features_train_selected et features_test_selected sont disponibles dans votre espace de travail, et les fonctions recall_score et roc_auc_score ont été importées pour vous.

Cet exercice fait partie du cours

Analytique RH : prédire l’attrition des employés en Python

Afficher le cours

Instructions

  • Initialisez le meilleur modèle avec les paramètres fournis dans l’énoncé.
  • Entraînez le modèle en n’utilisant que les variables sélectionnées du jeu d’entraînement.
  • Réalisez une prédiction à partir des variables sélectionnées du jeu de test.
  • Affichez l’exactitude, le rappel et le score ROC/AUC du modèle.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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)
Modifier et exécuter le code