Équilibrage de classes
Dans un problème de classification binaire, il se peut qu'il existe davantage de données collectées pour une des deux classes. Ce déséquilibre entre les classes conduit le modèle à en apprendre plus sur la classe majoritaire que sur la classe minoritaire. Vous pouvez utiliser l'équilibrage de classes pour améliorer le modèle.
En quoi consiste l'équilibrage de classes
Dans un ensemble de données utilisé pour une classification binaire, il existe deux classes. L'équilibrage de classes est la fréquence relative de ces classes.
Si vous retournez une pièce de monnaie parfaitement aléatoire un nombre suffisant de fois, vous obtiendrez un ensemble de deux classes (pile et face) parfaitement équilibré. Dans une situation parfaitement équilibrée (où une classe est 1 et l'autre classe est 0), la valeur de classe moyenne est égale à 0.5.
Dans de nombreux cas, les classes ne seront pas équilibrées. Cela peut conduire le modèle à en apprendre plus sur la classe majoritaire que sur la classe minoritaire.
Biais proportionnel
Un modèle peut s'avérer extrêmement exact en devinant la classe majoritaire de données déséquilibrées. Par exemple, si 95 % des visiteurs d'un site Web n'achètent rien, un modèle peut être exact à 95 % en déclarant que personne n'achètera rien. Le modèle apprend de la classe majoritaire, alors qu'il est souvent plus important d'apprendre de la classe minoritaire. Par exemple, pourquoi les 5 % restants des visiteurs du site Web achètent-ils quelque chose ?
Effets de l'équilibrage de classes
En appliquant un équilibrage de classes à vos données, vous pouvez peut-être obtenir un modèle davantage axé sur les caractéristiques et qui en a appris davantage sur la classe minoritaire. Effets potentiels sur le modèle :
-
Score F1 supérieur en raison de l'augmentation du poids de la classe minoritaire.
-
Score d'exactitude général marginalement inférieur, car il ne s'appuie pas autant sur le biais proportionnel.
-
Modèle plus informatif, car il s'appuie davantage sur les caractéristiques et sur la manière de distinguer les classes comme étant séparées. Dans un modèle avec des classes équilibrées, il se peut que les valeurs de Shapley soient plus informatives.
Notez que, dans les petits ensembles de données, l'équilibrage de classes peut entraîner une perte de données de caractéristiques. En outre, la modification des proportions de l'ensemble de données peut entraîner une perte d'informations, ce qui peut fausser les prédictions du modèle.
Comment équilibrer les classes
Pour équilibrer les classes des données, vous devez commencer par rechercher quel serait l'équilibre idéal pour votre cas d'utilisation spécifique. Cet équilibre peut varier de 80/20 à 50/50. Équilibrez juste les charges de sorte à obtenir ce dont vous avez besoin ; en effet, si vous affinez trop l'équilibrage de classes, vous risquez d'entraîner un surapprentissage du modèle. Ensuite, testez le modèle via des rétentions manuelles.
La méthode d'équilibrage de classes la plus courante consiste à sous-échantillonner. Ainsi, en échantillonnant la classe majoritaire de manière aléatoire, vous parvenez à mieux l'équilibrer par rapport à la classe minoritaire. La figure illustre la manière dont les échantillons sont prélevés de la classe majoritaire de l'ensemble de données d'origine pour obtenir un ensemble de données avec des classes équilibrées.