Taux de réussite naturel
Dans cet exercice, vous allez de nouveau utiliser des données de transactions par carte de crédit. Les caractéristiques et les étiquettes sont semblables à celles du chapitre précédent, et les données sont fortement déséquilibrées. Nous vous avons déjà fourni les caractéristiques X et les étiquettes y, qui sont toutes deux des tableaux numpy.
Vous devez d'abord examiner la prévalence de la fraude dans l'ensemble de données afin de comprendre quelle est l'« exactitude naturelle » si l'on prédit tout comme non frauduleux. Il est important de savoir quel niveau d'« exactitude » vous devez dépasser pour obtenir une meilleure prédiction que de ne rien faire. Dans les exercices qui suivent, vous allez créer un premier classifieur de forêt aléatoire pour la détection de la fraude. Il servira de modèle « de référence » que vous chercherez à améliorer dans les prochains exercices.
Cette activité fait partie du cours
Détection de fraude en Python
Instructions de l’exercice
- Comptez le nombre total d'observations en prenant la longueur de vos étiquettes
y. - Comptez les cas non frauduleux dans nos données en utilisant une compréhension de liste sur
y; rappelez-vous queyest un tableau NumPy, donc.value_counts()ne peut pas être utilisé ici. - Calculez l'exactitude naturelle en divisant le nombre de cas non frauduleux par le nombre total d'observations.
- Affichez le pourcentage.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Count the total number of observations from the length of y
total_obs = ____
# Count the total number of non-fraudulent observations
non_fraud = [i for ____ ____ ____ if i == 0]
count_non_fraud = non_fraud.count(0)
# Calculate the percentage of non fraud observations in the dataset
percentage = (float(____)/float(____)) * 100
# Print the percentage: this is our "natural accuracy" by doing nothing
____(____)