Auto-diagnostic IA
Accéder à notre auto-diagnostic en intelligence artificielle, spécialement conçu pour les décideurs.
Découvrez en 10 minutes le niveau de maturité de votre entreprise vis à vis de l’IA.
Under-sampling
L’undersampling, ou sous-échantillonnage, est une technique de rééquilibrage des classes utilisée en machine learning, essentielle lorsque vous travaillez avec des données déséquilibrées, un problème fréquent dans le monde des affaires. Imaginez que votre entreprise souhaite prédire la probabilité qu’un client se désabonne (churn). Vous constaterez souvent que le nombre de clients qui ne se désabonnent pas est bien supérieur à ceux qui le font, créant ainsi un déséquilibre dans votre jeu de données. Ce déséquilibre peut biaiser les modèles de machine learning, les amenant à être performants sur la classe majoritaire (les non-churners) et très mauvais sur la classe minoritaire (les churners), ce qui est problématique car c’est précisément cette dernière qui vous intéresse. L’undersampling vise à résoudre ce problème en réduisant la taille de la classe majoritaire, c’est-à-dire en supprimant des exemples afin d’obtenir un équilibre plus acceptable avec la classe minoritaire. Il existe plusieurs méthodes d’undersampling, allant de la sélection aléatoire d’échantillons à des approches plus sophistiquées basées sur la proximité ou des critères de densité. Par exemple, on pourrait choisir aléatoirement un sous-ensemble de clients n’ayant pas churné, dont la taille se rapproche de celle des clients ayant churné, ou bien utiliser des techniques avancées qui éliminent des exemples redondants ou peu informatifs de la classe majoritaire. L’objectif n’est pas de simplement réduire la quantité de données, mais bien d’optimiser le signal pour l’algorithme de machine learning, en éliminant les informations potentiellement superflues de la classe majoritaire qui pourraient l’empêcher d’apprendre correctement les caractéristiques de la classe minoritaire. Cependant, l’undersampling comporte des risques, notamment la perte d’informations potentiellement utiles, car en supprimant des données, on risque de ne pas capturer toute la complexité de la classe majoritaire. Il est crucial de bien comprendre ce compromis et d’utiliser les bonnes techniques pour limiter cette perte d’information. L’undersampling est donc un outil puissant dans la panoplie du data scientist, mais il doit être utilisé avec discernement et souvent en combinaison avec d’autres techniques de rééquilibrage, comme l’oversampling ou encore des méthodes de pondération des classes, afin de garantir la performance et la fiabilité des modèles de prédiction dans vos projets business. Comprendre l’undersampling, ses avantages et ses limites, est essentiel pour quiconque manipule des données déséquilibrées en entreprise, qu’il s’agisse d’analyse de churn, de détection de fraude, de prédiction de défaillance ou de tout autre problème où les données sont inégalement réparties.
L’under-sampling, ou sous-échantillonnage, est une technique de rééquilibrage de données cruciale dans le machine learning, particulièrement pertinente lorsqu’il s’agit de résoudre des problèmes de classification où les classes sont déséquilibrées. Dans un contexte d’entreprise, cela se traduit par de nombreuses applications concrètes. Par exemple, imaginez une société de commerce électronique qui souhaite détecter les transactions frauduleuses. Historiquement, les transactions légitimes sont bien plus nombreuses que les frauduleuses. Un modèle d’IA entraîné sur ces données brutes aurait tendance à être biaisé, favorisant la prédiction de transactions légitimes et manquant potentiellement des fraudes importantes. L’under-sampling intervient ici en réduisant le nombre d’exemples de la classe majoritaire (transactions légitimes), par exemple en sélectionnant aléatoirement un sous-ensemble, ou en utilisant des techniques plus avancées comme NearMiss qui suppriment les exemples les plus proches des exemples de la classe minoritaire (transactions frauduleuses), jusqu’à obtenir un équilibre plus satisfaisant entre les deux classes. Cette approche améliore significativement la performance du modèle en matière de détection de fraude. Autre exemple, une entreprise de télécommunications qui cherche à identifier les clients susceptibles de résilier leur abonnement (churn). La majorité des clients restent fidèles, tandis que seul un petit pourcentage résilie. Avec un under-sampling appliqué à la classe des clients fidèles, en réduisant par exemple aléatoirement le nombre d’exemples, ou bien en utilisant des méthodes plus ciblées qui sélectionnent les clients fidèles les moins représentatifs de cette catégorie (par exemple ceux qui ont des comportements d’achat qui les rapproche des clients qui partent), l’entreprise obtient un ensemble de données plus équilibré, permettant à son modèle de mieux apprendre les caractéristiques des clients à risque de départ et d’anticiper ainsi les besoins pour mettre en place des actions de rétention ciblées. Dans le secteur de la santé, une entreprise fabriquant des dispositifs médicaux pourrait utiliser l’under-sampling pour améliorer le diagnostic de maladies rares. Les données relatives aux maladies rares sont, par nature, peu nombreuses, tandis que les données relatives aux patients sains sont abondantes. Un sous-échantillonnage de la population saine, réalisé par exemple de manière à conserver les profils les plus susceptibles d’être confondus avec des profils de patients malades, permettrait de mieux entraîner un modèle de diagnostic et d’accroître sa précision. Ce principe s’applique également dans le domaine de la maintenance prédictive, où les pannes d’équipements sont beaucoup moins fréquentes que leur fonctionnement normal. Un modèle de prédiction de panne, entraîner avec un sous-échantillonage de la classe “pas de panne” permettrait une meilleure identification des signaux faibles annonçant une défaillance, améliorant ainsi l’efficacité de la maintenance et réduisant les coûts d’arrêt non planifiés. Dans le marketing, l’under-sampling peut être utilisé pour améliorer la pertinence des campagnes publicitaires. Par exemple, si une entreprise cible des utilisateurs susceptibles d’acheter un produit, mais que la majorité des utilisateurs n’achètent pas, il est possible de sous-échantillonner la population des non-acheteurs pour mieux identifier les profils de ceux qui sont réceptifs au produit. On peut utiliser un sous-échantillonnage qui met en avant les individus ayant des comportements d’achat similaires aux acheteurs, pour mieux comprendre leur profil et optimiser le ciblage de campagne marketing. De plus, dans le domaine de l’analyse de sentiments, lors de l’analyse d’avis clients, les avis positifs peuvent être bien plus nombreux que les avis négatifs. Un under-sampling de ces avis positifs, en sélectionnant par exemple ceux qui sont les moins pertinents pour l’analyse d’insatisfaction, permet d’améliorer la capacité du modèle à détecter les sentiments négatifs qui sont souvent la source d’opportunités d’amélioration pour l’entreprise. Ces cas d’études démontrent que l’under-sampling n’est pas seulement une technique théorique, mais une pratique indispensable dans de nombreux scénarios d’entreprise où les données déséquilibrées sont monnaie courante. L’utilisation des mots-clés comme “rééquilibrage des données”, “classes déséquilibrées”, “techniques de rééchantillonnage”, “modèle d’IA biaisé” et “performance du modèle” dans ce texte illustre comment l’under-sampling permet de surmonter les limitations des jeux de données déséquilibrées.
FAQ sur l’Under-sampling : Guide Complet pour les Entreprises
Q1 : Qu’est-ce que l’under-sampling et pourquoi une entreprise devrait-elle s’en préoccuper?
L’under-sampling, ou sous-échantillonnage en français, est une technique de rééquilibrage des données utilisée en apprentissage automatique, spécifiquement lorsqu’on travaille avec des ensembles de données déséquilibrés. Un ensemble de données est dit déséquilibré lorsqu’une classe, souvent appelée la classe majoritaire, est beaucoup plus représentée que les autres classes, appelées classes minoritaires. Dans un tel scénario, un algorithme d’apprentissage automatique risque de privilégier la classe majoritaire, car il apprendra plus efficacement à identifier les schémas présents dans cette classe, au détriment des classes minoritaires. Cela peut engendrer des modèles avec des performances médiocres, notamment en termes de rappel (la capacité à identifier tous les exemples positifs), pour les classes minoritaires.
L’under-sampling répond à ce problème en réduisant la taille de la classe majoritaire. Cela se fait en sélectionnant aléatoirement un sous-ensemble d’instances de cette classe et en les conservant pour l’entraînement, tout en gardant toutes les instances des classes minoritaires. L’idée derrière cette approche est d’équilibrer le nombre d’instances entre les classes et d’obliger ainsi l’algorithme à accorder plus d’attention aux classes minoritaires.
Pour une entreprise, l’under-sampling est essentiel car les problèmes de données déséquilibrées sont omniprésents dans divers cas d’usage : détection de fraudes où les transactions frauduleuses sont bien moins nombreuses que les transactions légitimes, la détection de pannes dans des machines industrielles où les pannes sont rares, la classification de documents médicaux où les diagnostics de maladies rares sont minoritaires par rapport aux diagnostics de maladies fréquentes, le diagnostic de la maintenance prédictive où les événements nécessitant la maintenance sont rares par rapport aux opérations normales, la detection de spams où les mails légitimes sont beaucoup plus nombreux que les spams etc. Ignorer ce déséquilibre peut conduire à des modèles prédictifs inefficaces, ce qui a un impact direct sur les opérations, la rentabilité et la prise de décision stratégique de l’entreprise. L’under-sampling permet d’améliorer la précision et la fiabilité des modèles d’apprentissage automatique, ce qui permet à l’entreprise de prendre des décisions plus éclairées.
Q2 : Quelles sont les différentes méthodes d’under-sampling courantes et comment choisir celle qui convient le mieux à mon projet?
Il existe plusieurs techniques d’under-sampling, chacune ayant ses propres avantages et inconvénients :
Under-sampling aléatoire : C’est la méthode la plus simple. Elle consiste à supprimer de manière aléatoire des instances de la classe majoritaire jusqu’à obtenir un équilibre (ou un ratio souhaité) avec les classes minoritaires. C’est une méthode rapide à implémenter, mais elle peut entraîner une perte d’informations potentiellement précieuses, car des exemples représentatifs de la classe majoritaire sont retirés de l’ensemble d’entraînement. Il est important de ne pas sous-échantillonner de manière excessive, ce qui pourrait nuire à la capacité du modèle à bien généraliser et conduire à une sous-représentation de la variabilité de la classe majoritaire.
Under-sampling avec Tomek Links : Les Tomek Links sont des paires d’instances de classes différentes, qui sont les plus proches les unes des autres. L’under-sampling avec Tomek Links supprime de la classe majoritaire les instances qui forment un Tomek Link, c’est-à-dire celles qui sont à la limite entre les différentes classes et qui peuvent embrouiller l’algorithme d’apprentissage. Cette technique vise à rendre les frontières entre classes plus claires, ce qui peut améliorer les performances du modèle. Néanmoins, cette méthode nécessite un temps de calcul plus long que l’under-sampling aléatoire et ne garantit pas toujours un équilibrage parfait des classes.
Under-sampling par NearMiss : Cette technique sélectionne les instances de la classe majoritaire qui sont les plus proches des instances de la classe minoritaire. NearMiss comprend plusieurs versions, dont NearMiss-1, NearMiss-2 et NearMiss-3, qui diffèrent dans la façon dont les instances majoritaires les plus proches sont définies. NearMiss peut conduire à une amélioration du modèle dans certains scénarios, notamment en mettant l’accent sur les exemples “difficiles” à classifier de la classe majoritaire. Cependant, la performance de NearMiss dépend fortement de la distribution des données et peut ne pas être efficace dans tous les cas. De plus, NearMiss peut être sensible au bruit ou aux outliers.
Under-sampling par les centroïdes : Cette méthode consiste à remplacer les instances de la classe majoritaire par les centroïdes de leurs clusters. Cette approche réduit la taille de la classe majoritaire tout en conservant une représentation de ses caractéristiques principales. Elle est utile lorsque la classe majoritaire présente des groupes distincts. Elle demande un certain temps de calcul et la performance est dépendante de la qualité du clustering utilisé.
Le choix de la meilleure méthode d’under-sampling dépend de plusieurs facteurs spécifiques à votre projet :
Taille de l’ensemble de données : Pour de grands ensembles de données, des méthodes simples comme l’under-sampling aléatoire ou par centroïdes peuvent être plus rapides. Pour les ensembles plus petits, on peut se permettre des techniques plus complexes.
Nature du déséquilibre : Si le déséquilibre est très prononcé, des méthodes plus agressives peuvent être nécessaires, mais il faut aussi tenir compte du risque de perte d’informations.
Complexité du modèle : Si vous utilisez un modèle très complexe, vous pouvez être plus tolérant à une petite perte d’informations, car il a une plus grande capacité à apprendre.
Caractéristiques des données : Si vos données présentent des liens ou des frontières de décision bien identifiées, les techniques basées sur ces aspects peuvent être plus appropriées.
Contraintes de temps : Certaines méthodes sont plus gourmandes en temps de calcul, ce qui peut être un facteur limitant.
Il est recommandé de tester différentes méthodes sur un ensemble de validation et d’évaluer leurs performances (précision, rappel, score F1, etc.) avant de choisir celle qui convient le mieux à votre problème. Il n’y a pas de solution universelle, l’expérimentation est clé.
Q3 : Quels sont les avantages et les inconvénients majeurs de l’under-sampling par rapport à d’autres techniques de gestion des données déséquilibrées, comme l’over-sampling?
L’under-sampling et l’over-sampling sont deux approches principales pour traiter les données déséquilibrées. Chacune a des avantages et des inconvénients :
Avantages de l’under-sampling:
Réduction de la complexité du modèle: En diminuant la taille de l’ensemble d’entraînement, l’under-sampling peut accélérer l’entraînement des modèles d’apprentissage automatique et réduire les exigences en matière de ressources de calcul.
Moins de risque de surapprentissage: Les modèles peuvent être moins susceptibles de surapprendre, en particulier si la classe majoritaire est très grande. En réduisant la taille de la classe majoritaire, on évite que le modèle se focalise trop sur les schémas présents dans cette classe.
Efficacité dans certains cas de figure: L’under-sampling est particulièrement efficace dans les cas où la classe majoritaire contient de nombreuses instances redondantes ou non pertinentes.
Inconvénients de l’under-sampling:
Perte d’information potentielle: L’inconvénient majeur est la perte d’informations. En supprimant des exemples de la classe majoritaire, on peut perdre des informations potentiellement importantes pour la capacité du modèle à généraliser et à correctement identifier toutes les instances de cette classe.
Sous-représentation de la variabilité de la classe majoritaire: Si l’under-sampling est trop agressif, cela peut conduire à une sous-représentation de la variabilité de la classe majoritaire, ce qui nuit à la qualité du modèle.
Instabilité des modèles: Le choix aléatoire des instances à supprimer peut conduire à des modèles instables, où de petites variations dans les données d’entraînement peuvent mener à des performances différentes.
Avantages de l’over-sampling (exemples : SMOTE, ADASYN):
Préservation de l’information: L’over-sampling ne supprime pas d’information, il génère de nouvelles instances de la classe minoritaire. Cela peut être avantageux dans le cas où cette classe est petite et que l’on souhaite exploiter au mieux les données disponibles.
Diversification de l’ensemble d’entraînement: Les techniques d’over-sampling, notamment les plus sophistiquées comme SMOTE (Synthetic Minority Oversampling Technique) et ADASYN (Adaptive Synthetic Sampling), permettent de diversifier les exemples de la classe minoritaire, en générant de nouvelles instances qui varient légèrement de celles déjà présentes.
Inconvénients de l’over-sampling:
Risque de surapprentissage: L’over-sampling peut augmenter le risque de surapprentissage si les instances synthétiques sont trop similaires ou ne reflètent pas la véritable distribution de la classe minoritaire.
Augmentation de la complexité de l’entraînement: L’augmentation de la taille de l’ensemble de données peut augmenter le temps d’entraînement et la demande en ressources de calcul.
Potentielle introduction de bruit: Les techniques d’over-sampling peuvent introduire des instances de mauvaise qualité qui peuvent perturber l’entraînement.
Quand choisir l’under-sampling vs l’over-sampling ?
Choisissez l’under-sampling si la classe majoritaire est très large et que sa réduction n’entraîne pas de perte significative d’informations. C’est une approche plus efficace lorsque l’on est confronté à des contraintes de ressources de calcul. De plus, si la classe majoritaire présente beaucoup de redondance, il est judicieux de la réduire via l’under-sampling.
Choisissez l’over-sampling si la classe minoritaire est petite et qu’il est essentiel de maximiser l’information qu’elle apporte. Privilégiez cette méthode lorsque la classe minoritaire est complexe et que la génération d’instances est souhaitable.
Dans certains cas, une combinaison des deux techniques (appelée “hybrid sampling”) peut être la plus appropriée. Il est conseillé d’expérimenter et d’évaluer différentes approches pour identifier celle qui donne les meilleurs résultats dans votre situation.
Q4 : Comment l’under-sampling peut-il être intégré dans un pipeline d’apprentissage automatique complet en entreprise?
L’intégration de l’under-sampling dans un pipeline d’apprentissage automatique doit être faite de manière réfléchie. Voici les étapes à suivre pour un processus structuré :
1. Analyse et préparation des données : Avant d’appliquer l’under-sampling, il est primordial de comprendre la distribution des classes de vos données. Visualisez-les, calculez les ratios de déséquilibre, et identifiez les variables pertinentes. Cette phase permet d’identifier les classes majoritaires et d’évaluer la nécessité d’utiliser des techniques de rééquilibrage. Faites attention au traitement des données manquantes, des valeurs aberrantes et de la normalisation.
2. Division des données : Séparez votre ensemble de données en trois parties : un ensemble d’entraînement, un ensemble de validation et un ensemble de test. L’under-sampling doit être appliqué uniquement à l’ensemble d’entraînement pour éviter de biaiser l’évaluation des performances du modèle. Les ensembles de validation et de test doivent refléter la distribution réelle de vos données.
3. Choix de la méthode d’under-sampling : En fonction de l’analyse des données (voir Q2) et du contexte de votre entreprise, choisissez la méthode d’under-sampling appropriée. N’hésitez pas à essayer plusieurs méthodes pour évaluer leurs performances.
4. Application de l’under-sampling : Appliquez la méthode d’under-sampling choisie uniquement à l’ensemble d’entraînement. Conservez la distribution d’origine pour les ensembles de validation et de test.
5. Entraînement du modèle : Entraînez votre modèle d’apprentissage automatique sur l’ensemble d’entraînement rééquilibré. Utilisez l’ensemble de validation pour ajuster les hyperparamètres de votre modèle.
6. Évaluation du modèle : Évaluez les performances de votre modèle sur l’ensemble de test. Utilisez des métriques adaptées aux données déséquilibrées, telles que le rappel (recall), la précision, le score F1, la courbe ROC, et l’AUC. N’évaluez pas le modèle uniquement sur la base de la précision car elle est peu révélatrice en cas de données déséquilibrées.
7. Itération et affinage : Si les performances de votre modèle ne sont pas satisfaisantes, revenez à l’étape 3 et essayez d’autres méthodes d’under-sampling ou ajustez les hyperparamètres de votre modèle. Un processus itératif et expérimental est primordial.
8. Déploiement et monitoring: Une fois que vous êtes satisfait des performances du modèle, vous pouvez le déployer et le suivre en temps réel. Le suivi régulier permet de vérifier si le modèle continue de bien fonctionner et d’identifier la nécessité de le réentraîner ou d’effectuer d’autres ajustements.
L’under-sampling doit être utilisé comme une étape avant l’entraînement du modèle, et après la séparation des données. Il est important de ne pas appliquer cette technique à l’ensemble de test, car cela fausserait l’évaluation des performances. La bibliothèque Python `imbalanced-learn` offre de nombreuses implémentations de méthodes d’under-sampling, ce qui facilite son intégration dans un pipeline.
Q5 : Quels sont les pièges à éviter lors de l’utilisation de l’under-sampling en entreprise?
L’under-sampling, bien que bénéfique dans de nombreux cas, peut conduire à des problèmes si elle est mal utilisée. Voici quelques pièges à éviter :
Perte excessive d’informations : Un sous-échantillonnage trop agressif peut supprimer des informations importantes contenues dans les instances de la classe majoritaire, notamment si celles-ci ne sont pas redondantes. Cela peut mener à des modèles performants sur l’ensemble d’entraînement, mais ayant des difficultés à généraliser sur de nouvelles données. Il faut donc trouver un bon équilibre et ne pas sous-échantillonner plus que nécessaire.
Application sur l’ensemble de test : L’under-sampling doit uniquement être appliqué à l’ensemble d’entraînement. L’appliquer aux ensembles de validation ou de test conduit à une surévaluation des performances et à une évaluation biaisée. L’ensemble de test doit rester le reflet de la distribution réelle des données.
Utilisation de métriques d’évaluation inappropriées : En présence de données déséquilibrées, il est essentiel d’utiliser des métriques adaptées, comme le rappel, le score F1, la précision ou l’aire sous la courbe ROC (AUC). Utiliser uniquement la précision peut être trompeur et ne pas permettre d’évaluer correctement la performance du modèle sur la classe minoritaire.
Manque d’expérimentation : Il n’existe pas de méthode d’under-sampling universelle. Il est important d’expérimenter différentes approches et d’évaluer leurs performances avant de choisir la plus adaptée à votre problème. Testez les paramètres des différentes méthodes et évaluez les compromis entre précision et perte d’informations.
Mauvaise gestion des données : Une mauvaise gestion des données (erreurs d’encodage, données manquantes, etc.) peut nuire à l’efficacité des techniques d’under-sampling. Prenez soin de préparer correctement les données avant d’appliquer ces techniques.
Sous-échantillonnage trop local: Certaines techniques d’under-sampling, comme le NearMiss, peuvent se concentrer sur des instances très locales à proximité des frontières de décision, ce qui peut les rendre sensibles au bruit ou aux outliers. Il faut être conscient de ce risque et évaluer attentivement si ces approches sont adaptées.
Négliger l’importance du contexte métier: Le choix d’une méthode d’under-sampling ne doit pas se faire uniquement sur la base de métriques techniques. Il faut tenir compte du contexte métier et des implications de chaque décision. Par exemple, si l’identification des instances de la classe minoritaire (par exemple, les fraudes) est prioritaire, il faut privilégier les approches qui maximisent le rappel.
En évitant ces pièges, vous maximiserez l’efficacité de l’under-sampling et obtiendrez des modèles plus robustes et plus fiables pour votre entreprise.
Q6 : Comment l’under-sampling interagit-il avec les algorithmes d’apprentissage automatique? Y a-t-il des algorithmes qui fonctionnent mieux avec cette technique ?
L’under-sampling influence directement l’apprentissage d’un algorithme car il modifie la distribution de l’ensemble d’entraînement. Les algorithmes d’apprentissage automatique apprennent des modèles à partir de cette distribution. Les algorithmes d’apprentissage basés sur des méthodes d’optimisation (comme la descente de gradient) sont notamment affectés car ils cherchent à minimiser une fonction de coût, et la fonction de coût est influencée par la distribution des données d’entraînement.
En général, l’under-sampling peut améliorer les performances d’un large éventail d’algorithmes, en particulier ceux qui sont sensibles aux données déséquilibrées. Cependant, il y a des considérations à prendre en compte spécifiques pour certains types d’algorithmes :
Arbres de décision (et forêts aléatoires, Gradient Boosting Machines) : Les arbres de décision, ainsi que les algorithmes d’ensemble basés sur des arbres, sont souvent performants en présence de données déséquilibrées. Cependant, en cas de déséquilibre très prononcé, ils peuvent être biaisés et privilégier la classe majoritaire. L’under-sampling peut aider à atténuer ce biais en offrant une représentation plus équilibrée des classes. Les modèles construits sur un ensemble sous-échantillonné ont tendance à avoir une meilleure capacité de généralisation. La méthode aléatoire d’under-sampling peut être particulièrement efficace pour ces algorithmes.
Machines à vecteurs de support (SVM) : Les SVM ont la particularité d’être efficaces lorsqu’il y a un grand nombre de variables et peuvent fonctionner correctement même sur des ensembles de données déséquilibrés. Toutefois, l’under-sampling peut aider à accélérer l’apprentissage en réduisant la taille de l’ensemble d’entraînement. Les techniques d’under-sampling basées sur les liens de Tomek peuvent améliorer la qualité des frontières de décision apprises par les SVM.
Régression logistique : L’under-sampling peut aider à améliorer la performance de la régression logistique, en particulier dans le cas de déséquilibres extrêmes. L’under-sampling peut rendre la fonction de coût plus sensible aux instances minoritaires, ce qui améliore la performance du modèle en termes de rappel. Cependant, une perte d’informations trop importante due à l’under-sampling pourrait nuire à la capacité du modèle à identifier les cas majoritaires.
Réseaux de neurones : Les réseaux de neurones peuvent également bénéficier de l’under-sampling, notamment en réduisant le temps d’entraînement. L’under-sampling peut aussi conduire à une meilleure généralisation des modèles. Il est nécessaire d’être prudent car les réseaux de neurones sont particulièrement gourmands en données et l’under-sampling pourrait les priver d’une information utile.
En général, il n’y a pas d’algorithme qui fonctionne mieux que les autres avec l’under-sampling. La meilleure approche consiste à expérimenter avec différents algorithmes et différentes méthodes d’under-sampling pour déterminer la combinaison optimale pour vos données et votre problème. Il est possible d’utiliser une recherche systématique des hyperparamètres afin d’optimiser non seulement les paramètres du modèle mais aussi les paramètres des techniques d’under-sampling.
Q7 : Quelles sont les alternatives à l’under-sampling si celle-ci ne donne pas de résultats satisfaisants?
Si l’under-sampling ne produit pas les résultats escomptés, plusieurs alternatives peuvent être envisagées :
Over-sampling : Comme mentionné précédemment, l’over-sampling consiste à augmenter la taille de la classe minoritaire en générant de nouvelles instances synthétiques ou en dupliquant les instances existantes. Les méthodes les plus populaires incluent SMOTE (Synthetic Minority Oversampling Technique), ADASYN (Adaptive Synthetic Sampling) ou des approches basées sur des GANs. Celles-ci préservent l’information disponible et peuvent conduire à de meilleures performances en termes de rappel, notamment pour les données très déséquilibrées où la classe minoritaire est très petite.
Combinaison d’under-sampling et d’over-sampling : Les techniques hybrides combinent l’under-sampling sur la classe majoritaire et l’over-sampling sur la classe minoritaire. Cela permet de réduire le déséquilibre tout en préservant l’information, en évitant la perte d’information liée au sous-échantillonnage et le surapprentissage potentiel lié à un sur-échantillonnage excessif. Des exemples de méthodes hybrides sont SMOTE-ENN (SMOTE avec Edited Nearest Neighbors) et SMOTE-Tomek.
Algorithmes spécifiques pour données déséquilibrées : Il existe des algorithmes spécifiquement conçus pour gérer les données déséquilibrées, notamment les algorithmes “cost-sensitive learning” (apprentissage sensible aux coûts), qui pondèrent différemment les erreurs de classification en fonction de la classe. L’idée est de pénaliser plus fortement les erreurs sur les classes minoritaires. Des exemples sont des techniques basées sur les SVM à coût asymétrique, des fonctions de coût asymétriques, etc.
Augmentation des données : L’augmentation des données consiste à générer de nouvelles données à partir des données existantes, en appliquant des transformations (rotations, translations, etc.). Cette approche est particulièrement efficace pour les données d’images ou de texte et permet d’augmenter la variabilité des données minoritaires et d’améliorer la performance des modèles.
Transfer learning : Lorsque la quantité de données de la classe minoritaire est insuffisante pour entraîner correctement un modèle, le transfer learning peut être une bonne alternative. Le transfer learning consiste à utiliser un modèle pré-entraîné sur un ensemble de données volumineux, puis à l’affiner sur votre ensemble de données plus petit. Cette approche est efficace pour les données où la classe minoritaire est peu représentée.
Choix de métriques de performance : Si l’under-sampling ne produit pas les résultats souhaités, il faut veiller à utiliser des métriques d’évaluation appropriées pour le problème. L’utilisation de métriques comme le rappel, la précision ou le score F1 est primordiale en cas de données déséquilibrées. Il est possible de comparer plusieurs méthodes pour sélectionner celle qui optimise la métrique d’intérêt.
Regroupement des classes minoritaires : Dans certaines situations, il peut être judicieux de regrouper les classes minoritaires en une seule classe pour simplifier le problème et atténuer le déséquilibre. Cette approche est acceptable si les classes minoritaires présentent une similarité sémantique.
Il est important de se rappeler qu’il n’y a pas de solution universelle à la gestion des données déséquilibrées. La meilleure approche dépend du problème et des caractéristiques des données. Il est essentiel d’expérimenter avec différentes méthodes et d’évaluer leurs performances en fonction des métriques appropriées pour identifier la solution optimale.
Livres:
“Applied Predictive Modeling” par Max Kuhn et Kjell Johnson: Ce livre aborde en profondeur les techniques de modélisation prédictive, y compris le sous-échantillonnage, avec des explications théoriques et des exemples pratiques en R. Il est particulièrement utile pour comprendre comment le sous-échantillonnage s’intègre dans un flux de travail plus large.
“Feature Engineering for Machine Learning” par Alice Zheng et Amanda Casari: Bien que ne se concentrant pas uniquement sur le sous-échantillonnage, ce livre offre une excellente perspective sur la préparation des données, y compris les défis posés par les ensembles de données déséquilibrés. Il explore les techniques de sélection de caractéristiques et d’ingénierie qui peuvent être utilisées conjointement avec le sous-échantillonnage.
“Hands-On Machine Learning with Scikit-Learn, Keras & TensorFlow” par Aurélien Géron: Ce livre est une introduction très pratique à l’apprentissage automatique. Bien qu’il ne se concentre pas exclusivement sur le sous-échantillonnage, il couvre l’importance de la gestion des données déséquilibrées et présente des techniques de base de sous-échantillonnage à l’aide de bibliothèques Python populaires.
“Data Mining: Concepts and Techniques” par Jiawei Han, Micheline Kamber et Jian Pei: Ce livre de référence aborde les fondements du data mining, y compris les techniques de traitement des données déséquilibrées. Il offre une vue d’ensemble complète des concepts pertinents et des méthodes associées. Bien qu’il ne soit pas axé business, la compréhension approfondie des concepts fondamentaux est cruciale.
“The Elements of Statistical Learning” par Trevor Hastie, Robert Tibshirani et Jerome Friedman: Un classique de l’apprentissage statistique qui offre un cadre théorique rigoureux pour la compréhension des algorithmes utilisés en apprentissage automatique, y compris les implications des données déséquilibrées. Les aspects théoriques peuvent aider à mieux comprendre pourquoi et comment fonctionne le sous-échantillonnage.
“Machine Learning Engineering” par Andriy Burkov: Bien qu’il ne détaille pas toutes les méthodes de sous-échantillonnage, ce livre offre une perspective précieuse sur le déploiement de modèles en production et les défis associés, notamment la robustesse des modèles face à la variabilité des données. Il met en lumière l’importance de la gestion du déséquilibre dans un contexte opérationnel.
Sites Internet et Blogs:
Towards Data Science (towardsdatascience.com): Ce site héberge d’innombrables articles écrits par des professionnels et des passionnés de science des données, y compris des articles dédiés au sous-échantillonnage, ses nuances, ses implémentations, et son application à différents cas d’usage. Faites des recherches avec des mots-clés comme “undersampling”, “imbalanced data”, “class imbalance”.
Machine Learning Mastery (machinelearningmastery.com): Tenue par Jason Brownlee, ce site propose des tutoriels très pratiques et axés sur le code, avec de nombreux articles sur les techniques de traitement des données déséquilibrées, y compris les différentes formes de sous-échantillonnage.
Analytics Vidhya (analyticsvidhya.com): Un site riche en tutoriels, articles et concours liés à la science des données. De nombreux articles traitent des défis posés par les données déséquilibrées et des approches, comme le sous-échantillonnage, pour les atténuer.
Medium (medium.com): Une plateforme ouverte où vous pouvez trouver des articles de fond, des études de cas, et des réflexions sur le sous-échantillonnage et son impact business. Explorez les publications sur des sujets liés au data science et à l’apprentissage automatique.
Scikit-learn documentation (scikit-learn.org): La documentation officielle de la bibliothèque scikit-learn contient des exemples d’implémentation du sous-échantillonnage et une explication de la manière de l’intégrer dans votre flux de travail de modélisation.
Imbalanced-learn documentation (imbalanced-learn.org): Cette bibliothèque Python est spécialisée dans le traitement des ensembles de données déséquilibrés et propose de nombreuses méthodes de sous-échantillonnage (random, cluster centroid, Tomek links, NearMiss, etc.). Leur documentation est exhaustive et précise.
Kaggle (kaggle.com): Explorez les carnets de code (kernels) et les discussions liées aux compétitions sur les ensembles de données déséquilibrés. De nombreux experts partagent leurs stratégies et leurs expériences avec différentes techniques de sous-échantillonnage.
Forums et Communautés en ligne:
Stack Overflow (stackoverflow.com): Un forum incontournable pour les questions techniques. Cherchez les questions et réponses liées à la mise en œuvre du sous-échantillonnage, aux erreurs courantes et aux astuces pour l’utiliser efficacement.
Reddit (reddit.com): Des communautés comme r/MachineLearning, r/datascience, r/learnmachinelearning sont de bonnes sources pour poser des questions, partager des articles pertinents, et discuter des dernières avancées en la matière.
Cross Validated (stats.stackexchange.com): La partie Stack Exchange dédiée aux statistiques, où vous trouverez des questions plus théoriques sur l’impact du sous-échantillonnage sur les distributions de données et sur les résultats des modèles.
LinkedIn Groups: Rejoignez des groupes liés à la science des données, l’apprentissage automatique ou l’analyse business pour participer à des discussions professionnelles et partager des cas d’usage concrets.
TED Talks:
Recherchez sur le site TED (ted.com): Il n’y a pas de TED Talks spécifiquement axés sur le sous-échantillonnage. Cependant, cherchez des conférences qui abordent les thématiques connexes comme l’importance de la qualité des données, les biais algorithmiques, les enjeux éthiques de l’IA et l’interprétabilité des modèles. Ces éléments sont essentiels pour comprendre pourquoi et comment le sous-échantillonnage doit être utilisé avec précaution.
Conférences sur l’IA, le Big Data et l’Analytique: Recherchez des conférences données par des spécialistes de ces domaines qui parlent des défis spécifiques que représentent les données déséquilibrées et des solutions pour y faire face.
Articles Académiques et Journaux:
IEEE Transactions on Knowledge and Data Engineering: Ce journal publie des articles de recherche de pointe sur les techniques de gestion et d’analyse des données, y compris les approches de traitement des données déséquilibrées.
Journal of Machine Learning Research: Une référence pour les recherches sur l’apprentissage automatique. Les publications peuvent offrir des éclairages théoriques et méthodologiques sur l’impact du sous-échantillonnage sur les performances des modèles.
ACM Transactions on Knowledge Discovery from Data: Ce journal se concentre sur la découverte de connaissances à partir des données et inclut des articles sur la gestion des données et les biais, des thèmes en relation directe avec le sous-échantillonnage.
Google Scholar (scholar.google.com): Effectuez des recherches ciblées en utilisant des mots-clés tels que “undersampling techniques”, “class imbalance problem”, “imbalanced data learning” pour trouver des articles de recherche pertinents.
Journaux et Magazines Business:
Harvard Business Review (hbr.org): Explorez les articles sur l’application de l’IA et des algorithmes d’apprentissage automatique en contexte business. Même si le sous-échantillonnage n’est pas le thème principal, vous trouverez des informations sur l’importance des données de qualité pour une IA efficace.
MIT Sloan Management Review (sloanreview.mit.edu): Ce magazine explore l’impact des technologies, y compris l’IA, sur les organisations et les processus business. Cherchez les articles qui abordent les défis liés à l’implémentation de solutions basées sur l’IA, notamment les biais dans les données.
Forbes (forbes.com) et The Wall Street Journal (wsj.com): Bien qu’ils ne publient pas d’articles très techniques, ces journaux peuvent offrir des perspectives business importantes sur les enjeux et les risques liés à l’utilisation de l’IA et des données, notamment en ce qui concerne les biais et le traitement des données déséquilibrées.
Publications spécialisées par industrie: Selon votre secteur d’activité, recherchez des publications spécialisées dans votre domaine (finance, marketing, santé…) qui peuvent proposer des études de cas sur l’application du sous-échantillonnage à des problématiques spécifiques.
Points d’attention:
Comprendre le compromis: Le sous-échantillonnage peut améliorer les performances d’un modèle sur la classe minoritaire, mais peut entraîner une perte d’information de la classe majoritaire. Il est important de bien comprendre ce compromis.
Évaluation rigoureuse: Évaluez soigneusement vos modèles après le sous-échantillonnage en utilisant des métriques pertinentes (précision, rappel, score F1, AUC) et des techniques de validation croisée.
Considérer d’autres approches: Le sous-échantillonnage n’est pas toujours la meilleure solution. Il est important d’explorer d’autres approches, comme le sur-échantillonnage, les méthodes basées sur le coût, les algorithmes robustes aux données déséquilibrées, et de les comparer.
L’importance du contexte business: Le choix de la technique de sous-échantillonnage (et même la décision d’en utiliser ou non) dépend du problème business spécifique et des objectifs de votre modèle. Ne faites pas de sous-échantillonnage sans bien comprendre les implications pour votre projet.
L’importance du domaine: L’impact du sous-échantillonnage peut varier selon le domaine d’application. Ce qui fonctionne bien dans le domaine de la détection de fraude peut ne pas fonctionner dans le domaine de la prédiction médicale, par exemple.
En explorant ces ressources, vous obtiendrez une compréhension approfondie du sous-échantillonnage, de ses avantages, de ses inconvénients et de sa pertinence dans un contexte business. Vous pourrez ainsi l’utiliser de manière éclairée et efficace dans vos projets d’apprentissage automatique.
Cabinet de Conseil – SASU Demarretonaventure.com – Copyright 2025
Accéder à notre auto-diagnostic en intelligence artificielle, spécialement conçu pour les décideurs.
Découvrez en 10 minutes le niveau de maturité de votre entreprise vis à vis de l’IA.