7.12. Principes d'apprentissage supervisé : équilibrage des classes
L'apprentissage supervisé est une approche fondamentale dans le domaine du machine learning, où le modèle est entraîné sur un ensemble de données qui inclut les entrées et sorties souhaitées. L’un des défis les plus courants rencontrés lors de la formation de modèles d’apprentissage supervisé est le déséquilibre des classes. L'équilibrage des classes est crucial pour garantir que le modèle ne développe pas de biais en faveur de la classe majoritaire et n'ignore pas la classe minoritaire, ce qui peut conduire à des résultats trompeurs et à de mauvaises performances sur des données invisibles.
Dans de nombreux ensembles de données réels, la répartition des classes n'est pas uniforme. Par exemple, dans un ensemble de données de détection de fraude, le nombre de transactions légitimes est bien supérieur au nombre de transactions frauduleuses. Si un modèle est formé sur cet ensemble de données sans aucun traitement d'équilibrage des classes, il peut simplement apprendre à prédire la classe majoritaire (transactions légitimes) tout en atteignant une grande précision, simplement parce qu'il s'agit de la classe prédominante.
Il existe plusieurs techniques pour gérer le déséquilibre des classes, et elles peuvent être divisées en trois catégories principales : les méthodes de rééchantillonnage, les méthodes basées sur des algorithmes et les méthodes basées sur les coûts.
Méthodes de rééchantillonnage
Les méthodes de rééchantillonnage ajustent la distribution des classes dans l'ensemble de données. Ils peuvent être divisés en deux types : le suréchantillonnage et le sous-échantillonnage.
- Suréchantillonnage : cette technique consiste à reproduire des exemples de la classe minoritaire pour augmenter sa représentation dans l'ensemble de données. Une approche de suréchantillonnage populaire est la SMOTE (Synthetic Minority Over-sampling Technique), qui crée des exemples synthétiques de la classe minoritaire plutôt que de simplement reproduire ceux existants.
- Sous-échantillonnage : d'un autre côté, le sous-échantillonnage consiste à supprimer des exemples de la classe majoritaire pour réduire sa représentation. Même si cela peut aider à équilibrer les cours, cela peut également entraîner la perte d'informations importantes.
Il est important de noter que le suréchantillonnage et le sous-échantillonnage présentent tous deux des inconvénients. Le suréchantillonnage peut augmenter le risque de surajustement, car le modèle peut finir par mémoriser des exemples répliqués. Le sous-échantillonnage peut éliminer des informations précieuses qui pourraient être cruciales pour l'apprentissage du modèle.
Méthodes basées sur des algorithmes
Certains algorithmes d'apprentissage automatique peuvent être modifiés pour mieux gérer le déséquilibre des classes. Par exemple, les arbres de décision et les algorithmes basés sur des arbres tels que Random Forest et Gradient Boosting vous permettent de pondérer les classes pendant l'entraînement, ce qui peut aider à atténuer les préjugés en faveur de la classe majoritaire. Une autre approche consiste à modifier l'algorithme afin qu'il se concentre davantage sur des exemples issus de la classe minoritaire lors de la formation.
Méthodes basées sur les coûts
Les méthodes basées sur les coûts attribuent un coût plus élevé à une mauvaise classification de la classe minoritaire. L'idée est que le modèle sera pénalisé plus sévèrement en cas d'erreurs dans la classe minoritaire que dans la classe majoritaire, l'incitant à accorder plus d'attention à la classe minoritaire lors de la formation.
Quelle que soit la méthode choisie, il est crucial d'évaluer le modèle sur un ensemble de données de test qui reflète la répartition réelle des classes. Cela peut être fait en utilisant des mesures d'évaluation qui prennent en compte le déséquilibre des classes, telles que la matrice de confusion, la précision, le rappel, le score F1 et l'aire sous la courbe ROC (Receiver Operating Characteristic).
En outre, il est important d'effectuer une analyse minutieuse du problème et de l'ensemble de données pour comprendre la nature du déséquilibre des classes. Dans certains cas, la classe minoritaire peut être plus importante et mérite donc une plus grande attention lors de la formation des modèles. Dans d'autres cas, il peut être plus approprié de collecter davantage de données sur la classe minoritaire, si possible.
En résumé, l'équilibrage des classes est un aspect essentiel de l'apprentissage supervisé en Machine Learning. Cela nécessite une approche prudente et réfléchie, et le choix de la technique d’équilibrage doit être guidé par le contexte spécifique du problème à résoudre. En s'attaquant correctement au déséquilibre des classes, il est possible de développer des modèles plus justes, plus précis et plus robustes qui fonctionnent bien sur tous les segments de l'ensemble de données et fournissent des informations précieuses pour la prise de décision basée sur les données.