Date de publication : 15 juin 2024
Contributeur : Jacob Murel Ph.D.
Le sous-échantillonnage réduit le nombre d’échantillons de données dans un jeu de données. Ce faisant, il vise à corriger les données déséquilibrées et à améliorer ainsi les performances du modèle.
Le sous-échantillonnage est une technique courante de traitement de données qui, en supprimant les déséquilibres d’un jeu de données, consiste à supprimer les données de la classe majoritaire pour qu’elles correspondent à la taille de la classe majoritaire. Cette approche s’oppose au suréchantillonnage, qui consiste à rééchantillonner les points de classe majoritaire. Python scikit-learn et Matlab contiennent tous deux des fonctions intégrées pour mettre en œuvre des techniques de sous-échantillonnage.
Le sous-échantillonnage pour la science des données est souvent confondu avec le sous-échantillonnage dans le traitement du signal numérique (DSP). Les deux sont similaires dans l'esprit. Le sous-échantillonnage pour le traitement du signal numérique (également appelé décimation) est le processus qui consiste à réduire la bande passante et le taux d’échantillonnage de l’échantillonneur, supprimant ainsi une partie des données d’origine du signal d’origine. Le processus de diminution de la fréquence d’échantillonnage consiste souvent à réduire le taux d’échantillonnage d’un facteur entier, en ne conservant qu’un échantillon sur énième . Pour ce faire, on utilise un filtre passe-bas, également appelé filtre anti-aliasing, pour réduire les composantes haute fréquence/bruit d'un signal en temps discret par le facteur entier mentionné précédemment.
Le sous-échantillonnage visant à rééquilibrer les données est parfois confondu avec le sous-échantillonnage utilisé dans le traitement d’images. Lorsque les données contiennent de nombreuses caractéristiques, comme dans le cas des images IRM de haute résolution, les calculs peuvent s’avérer coûteux. Le sous-échantillonnage employé dans le traitement d’images permet de réduire la dimensionnalité de chaque point de données par convolution. Contrairement au rééquilibrage des jeux de données, cette technique d’optimisation nécessite par la suite une interpolation pour récupérer les données d’origine.
Découvrez les obstacles à l’adoption de l’IA, en particulier le manque de solutions de gouvernance de l’IA et de gestion des risques.
Obtenir le guide sur les modèles de fondation
Le sous-échantillonnage est un moyen efficace de remédier aux déséquilibres d'un jeu de données. Un jeu de données déséquilibré est défini comme un jeu de données dans lequel une classe est fortement sous-représentée par rapport à la population réelle, ce qui crée un biais involontaire. Imaginez, par exemple, qu'un modèle soit formé pour classer les images selon qu'elles représentent un chat ou un chien. Le jeu de données utilisé est composé de 90 % de chats et de 10 % de chiens. Dans ce scénario, les chats sont surreprésentés, et si nous avons un classificateur qui prédit des chats à chaque fois, il obtiendra une précision de 90 % pour la classification des chats, mais une précision de 0 % pour la classification des chiens. Dans ce cas, le jeu de données déséquilibré amènera les classificateurs à favoriser la précision de la classe majoritaire au détriment de la classe minoritaire. Le même problème peut se poser avec les jeux de données multi-classes.1
Le processus de sous-échantillonnage permet de remédier au problème des jeux de données déséquilibrés. Il identifie les points de classe majoritaire à supprimer en fonction de critères spécifiés. Ces critères peuvent changer avec la technique de sous-échantillonnage choisie. Cette méthode permet d’équilibrer le jeu de données en diminuant efficacement le nombre d’échantillons pour une classe de majorité surreprésentée, jusqu’à ce que le jeu de données contienne un rapport égal de points dans toutes les classes.
Si les déséquilibres peuvent être observés en traçant simplement le nombre de points de données dans chaque classe, cela ne nous permet pas de savoir s'ils auront une incidence importante sur le modèle. Heureusement, nous pouvons utiliser des indicateurs de performance pour évaluer dans quelle mesure une technique de sous-échantillonnage corrige le déséquilibre des classes. La plupart de ces indicateurs seront destinées à la classification binaire, où il n'y a que deux classes : une positive et une négative. En général, la classe positive est la classe de la minorité, tandis que la classe négative est la classe de la majorité. Deux indicateurs populaires sont les courbes ROC (Receiver Operating Characteristic) et les courbes de précision et de rappel.1
Le sous-échantillonnage aléatoire est une technique de suppression qui consiste à choisir des points aléatoires dans la classe majoritaire sans remplacement et supprimés du jeu de données jusqu’à ce que la taille de la classe majoritaire soit égale à la taille de la classe majoritaire. Il s’agit d’un moyen simple de supprimer de manière aléatoire un sous-ensemble de données à des fins d’équilibrage. Cependant, cette technique peut faire disparaître des modèles ou des distributions importants dans la classe majoritaire, ce qui affecte négativement les performances du classificateur.2
Le sous-échantillonnage évité de justesse est une technique qui consiste à rééquilibrer la distribution des classes en éliminant au hasard certains exemples de classes majoritaires.
Conceptuellement, Near Miss fonctionne sur le principe selon lequel les données doivent être conservées dans des endroits où les classes majoritaires et présidées sont très proches, car ces endroits nous fournissent des informations clés pour distinguer les deux classes.3 Ces points sont généralement connus sous le nom de points de données « difficiles » à apprendre. Le sous-échantillonnage Near Miss s'opère généralement en deux étapes :
Il existe trois variantes de l’algorithme de Near Miss qui offrent un moyen plus simple de sélectionner les instances de classe majoritaire à supprimer.
Les plus proches voisins condensé (CNN, à ne pas confondre avec les réseaux neuronaux convolutifs) cherchent à trouver un sous-ensemble d’un jeu de données qui peut être utilisé pour un entraînement sans perte de performance du modèle. Pour ce faire, on identifie un sous-ensemble de données qui peut être utilisé pour former un modèle qui prédit correctement l'ensemble des données.
Le sous-échantillonnage CNN peut être décomposé en plusieurs étapes :5
Comme Near Miss, ce processus supprime essentiellement toutes les instances de la classe majoritaire situées loin de la limite de décision, qui, encore une fois, sont des points faciles à classer. Elle garantit également que chaque donnée de notre jeu de données original peut être correctement prédite en utilisant uniquement les données de S. De cette façon, le jeu de données peut être réduit de manière significative tout en préservant raisonnablement la limite de décision.
Cette image montre un exemple d'application des plus proches voisins condensés en utilisant 1 plus proche voisin et 21 plus proches voisins à deux jeux de données. Les deux images du premier sont avant l'application des plus proches voisins condensés tandis que les deux du bas sont après. Comme on peut le voir, la limite de décision est raisonnablement bien conservée.
Le sous-échantillonnage Tomek Link consiste à réduire le bruit dans les données en supprimant les points proches de la limite de décision et à augmenter la séparation des classes. Il s’agit d’identifier les « liens Tomek », c’est-à-dire un regroupement de deux points provenant de différentes classes, sans troisième point existant qui soit le plus proche de l’un ou de l’autre.2
Pour toutes les liaisons de tomek, le point de la classe majoritaire est supprimé. En supprimant un point de classe majoritaire qui est proche d’un point de classe majoritaire, la séparation des classes augmente. L'inconvénient de cette méthode est la complexité de calcul de toutes les distances par paires entre les points des classes majoritaires et des classes minoritaires.2 Le sous-échantillonnage de Tomek Link est plus efficace lorsqu'il est combiné à d'autres techniques.
Le sous-échantillonnage Edited Nearest Nearest Neighbors (ENN) est similaire au sous-échantillonnage de Tomek Link, où l'objectif est de supprimer les exemples situés près de la limite de décision afin d'améliorer la séparation des classes. En général, cette méthode supprime les points de données dont la classe diffère de celle d'une majorité de leurs voisins.2 Cela signifie que le processus supprime les points de données de la classe majoritaire dont la majorité des voisins les plus proches appartiennent à la classe minoritaire, et vice versa. Dans ce contexte, la majorité peut être définie librement : elle peut signifier qu'au moins un voisin appartient à une classe différente ou que la proportion de voisins appartenant à une classe différente dépasse un certain seuil.
Le sous-échantillonnage ENN est généralement effectué avec les 3 plus proches voisins, comme illustré ci-dessous.
Il s’agit d’une stratégie à granularité plus grossière, puisqu’elle consiste à examiner le voisinage des points, et non un seul voisin, et qui s’avère efficace pour éliminer le bruit dans les données. Le sous-échantillonnage ENN est plus efficace lorsqu’il est combiné à d’autres techniques.
Les développements actuels en matière de sous-échantillonnage s’articulent autour des intégrations d’apprentissage profond. Elle est utilisée dans des domaines tels que le traitement d’images et les données médicales, qui impliquent l’utilisation de neural networks pour sous-échantillonner les données.6 Un exemple de ceci est le SOM-US, qui utilise un Neural Networks à deux couches.7 Ces dernières années, l’apprentissage actif a également été appliqué au sous-échantillonnage pour essayer d’atténuer les effets des données déséquilibrées.8 Les expérimentations ont montré que ces modèles sont nettement plus performants que les techniques traditionnelles.
Les recherches actuelles sur le sous-échantillonnage visent également à le combiner avec d'autres techniques afin de créer des techniques hybrides. Une des combinaisons consiste à sous-échantillonner et à suréchantillonner les données pour bénéficier des avantages des deux systèmes : SMOTE+Tomek Link, Agglomerative Hierarchical Clustering (AHC) et SPIDER en sont quelques exemples.9 Les techniques au niveau de l’algorithme peuvent également incorporer les idées des techniques traditionnelles de sous-échantillonnage, comme le Hard Example Mining, où l’entraînement se concentre uniquement sur les points de données « les plus difficiles ».2 Tous montrent de meilleures performances que l'utilisation de chaque technique individuellement.
Le sur-échantillonnage augmente le nombre d’échantillons de données dans un jeu de données. Ce faisant, il vise à corriger les données déséquilibrées et à améliorer ainsi les performances du modèle.
Les réseaux neuronaux convolutifs utilisent des données tridimensionnelles pour les tâches de classification d’images et de reconnaissance d’objets.
La segmentation d’instances est une tâche de vision par ordinateur alimentée par l’apprentissage profond qui prédit les limites exactes par pixel de chaque instance d’objet individuel dans une image.
1 Haobo He et Edwardo Garcia, Learning from Imbalanced Data, IEEE, septembre 2009, https://ieeexplore.ieee.org/document/5128907 (lien externe à ibm.com).
2 Kumar Abhishek et Mounir Abdelaziz, Machine Learning for Imbalanced Data, Packt, novembre 2023
3 Ajinkya More, Survey of resampling techniques for improving classification performance in unbalanced datasets, 22 août 2016, https://arxiv.org/pdf/1608.06048 (lien externe à ibm.com).
4 Jianping Zhang et Inderjeet Mani, kNN Approach to Unbalanced Data Distributions : A Case Study involving Information Extraction, 2003, https://www.site.uottawa.ca/~nat/Workshop2003/jzhang.pdf (lien externe à ibm.com).
5 More, Survey of resampling techniques for improving calssification performance in unbalanced datasets, 22 août 2016, https://arxiv.org/pdf/1608.06048 (lien externe à ibm.com). Alberto Fernandez, et al., Learning from Imbalanced Data Sets, Springer, 2018.
6 Md Adnan Arefeen, Sumaiya Tabassum Nimi et M. Sohel Rahman, Neural Network-Based Undersampling Techniques, IEEE, 2 septembre 2020, https://ieeexplore.ieee.org/abstract/document/9184909?casa_token=RnLRvnqyiF8AAAAA:iyxPWT06HX6a9g8X1nhShrllo_ht9ZM1cqHMWjET5wOopeR5dqizBF29cSSmFMRPo9V1D7XBIwg (lien externe à ibm.com).
7 Ajay Kumar, SOM-US : A Novel Under-Sampling Technique for Handling Class Imbalance Problem, hrcak, 30 janvier 2024, https://hrcak.srce.hr/clanak/454006 (lien externe à ibm.com).
8 Wonjae Lee and Kangwon Seo, Downsampling for Binary Classification with a Highly Imbalanced Dataset Using Active Learning, Science Direct, 26 avril 2022, https://www.sciencedirect.com/science/article/pii/S2214579622000089 (lien externe à ibm.com).
9 Alberto Fernandez, et al., Learning from Imbalanced Data Sets, Springer, 2018.