Mesures de performance pour le modèle RF
Dans les exercices précédents, vous avez obtenu un score d'exactitude pour votre modèle de forêt aléatoire. Cette fois, nous savons que l'exactitude peut être trompeuse en détection de fraude. Avec des données de fraude très déséquilibrées, la courbe AUROC est une mesure de performance plus fiable, utilisée pour comparer différents classificateurs. 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 chercher ces mesures de performance.
Vous allez poursuivre avec 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.
Cette activité fait partie du cours
Détection de fraude en Python
Instructions de l’exercice
- Importez le rapport de classification, la matrice de confusion et le score ROC à partir de
sklearn.metrics. - Obtenez les prédictions binaires de votre modèle de forêt aléatoire entraîné
model. - Récupérez les probabilités prévues en appelant la fonction
predict_proba(). - Générez le rapport de classification et la matrice de confusion en comparant
y_testàpredicted.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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(____(____, ____))