Techniques de rééchantillonnage
Dans le dernier exercice, vous avez vu comment un déséquilibre des classes peut influencer les résultats de votre matrice de confusion. Dans cet exercice, vous allez mettre en pratique des techniques de rééchantillonnage pour examiner les effets que différents styles de rééchantillonnage peuvent avoir sur un jeu de données déséquilibré comme loan_data. Avec la fonction resample() de sklearn, faire correspondre le nombre de lignes de la classe majoritaire s'appelle un suréchantillonnage (upsampling), tandis que faire correspondre le nombre de lignes de la classe minoritaire s'appelle un sous-échantillonnage (downsampling).
Vous allez créer une version suréchantillonnée et une version sous-échantillonnée du jeu de données loan_data, y ajuster une régression logistique, puis évaluer la performance des deux modèles. Les données d'entraînement et leurs étiquettes correspondant à deny sont sous-échantillonnées pour ne contenir que la classe minoritaire, et celles correspondant à approve pour la classe majoritaire.
Un objet de test issu d'une séparation entraînement/test pour effectuer les prédictions a été enregistré dans l'espace de travail sous le nom X_test pour que vous puissiez l'utiliser dans les exercices.
Cette activité fait partie du cours
S'exercer aux questions d'entrevue en Machine Learning avec Python
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Upsample minority and combine with majority
loans_upsampled = ____(deny, replace=True, n_samples=len(____), random_state=123)
upsampled = pd.concat([approve, loans_upsampled])
# Downsample majority and combine with minority
loans_downsampled = ____(____, replace = False, n_samples = len(deny), random_state = 123)
downsampled = pd.concat([loans_downsampled, deny])