Réduire la taille du groupe majoritaire
Plutôt que d'augmenter le nombre de cas de fraude dans l'ensemble de données, vous pouvez retirer au hasard des cas légitimes pour équilibrer l'ensemble de données. Effectuons un sous-échantillonnage de la classe majoritaire (Class = 0) dans l'ensemble creditcard. Vous pouvez utiliser table() dans la console pour connaître le nombre de transactions frauduleuses et légitimes présentes dans l'ensemble de données.
Cette activité fait partie du cours
Détection de la fraude en R
Instructions de l’exercice
- Chargez la bibliothèque ROSE.
- Indiquez
n_newcomme le nombre de cas requis dans l'ensemble sous-échantillonné de façon à ce que le nouvel ensemble contienne 40 % de cas de fraude. Pour ce faire, divisez le nombre de cas de fraude par le pourcentage de fraude souhaité dans l'ensemble sous-échantillonné. - Effectuez le sous-échantillonnage de l'ensemble de données.
- Utilisez
table()etprop.table()pour vérifier l'équilibre des classes de l'ensemble sous-échantillonné.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Load ROSE
___
# Calculate the required number of cases in the over-sampled dataset
n_new <- ___
# Under-sample
undersampling_result <- ___(formula = ___, data = ___,
___ = ___, ___ = ___, seed = 2018)
# Verify the Class-balance of the under-sampled dataset
undersampled_credit <- undersampling_result$___
___(___(___))