Mesures de performance pour le modèle RF
Dans les exercices précédents, vous avez obtenu un score d’accuracy pour votre modèle de forêt aléatoire. Cette fois, nous savons que l’accuracy peut être trompeuse en détection de fraude. Avec des données de fraude très déséquilibrées, la courbe AUROC est un indicateur de performance plus fiable, utilisé pour comparer différents classifieurs. De plus, le rapport de classification vous renseigne sur la précision et le rappel de votre modèle, tandis que la matrice de confusion montre concrètement combien de cas de fraude vous parvenez à prédire correctement. Allons donc récupérer ces mesures de performance.
Vous continuez à travailler sur le même modèle de forêt aléatoire que dans l’exercice précédent. Votre modèle, défini comme model = RandomForestClassifier(random_state=5), a déjà été ajusté sur vos données d’entraînement, et X_train, y_train, X_test, y_test sont disponibles.
Cet exercice fait partie du cours
Détection de fraude en Python
Instructions
- Importez le rapport de classification, la matrice de confusion et le score ROC depuis
sklearn.metrics. - Obtenez les prédictions binaires depuis votre modèle de forêt aléatoire entraîné
model. - Récupérez les probabilités prédites en exécutant la fonction
predict_proba(). - Obtenez le rapport de classification et la matrice de confusion en comparant
y_testàpredicted.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Import the packages to get the different performance metrics
from sklearn.metrics import ____, ____, ____
# Obtain the predictions from our random forest model
predicted = model.____(X_test)
# Predict probabilities
probs = ____.____(X_test)
# Print the ROC curve, classification report and confusion matrix
print(____(y_test, probs[:,1]))
print(____(____, predicted))
print(____(____, ____))