Face à un dataset déséquilibré, le réflexe SMOTE n'est pas toujours la bonne réponse. Le choix dépend du volume de données, du cas d'usage et du coût métier des erreurs — et une mauvaise validation peut rendre n'importe quelle méthode trompeuse.
Avant de choisir une technique de rééquilibrage, il faut comprendre pourquoi un classifieur entraîné sur des données déséquilibrées échoue. Un modèle qui prédit systématiquement la classe majoritaire obtient une accuracy excellente tout en étant inutilisable. Pour la détection de fraude à 0,2% de positifs, prédire "pas de fraude" pour tout le monde donne 99,8% d'accuracy et un rappel nul. Ce paradoxe se retrouve dans des jeux de données réels : un modèle prédisant l'absence de fraude atteint 99,83% d'accuracy sur un jeu de données tout en étant inutile.
La première erreur de production n'est donc pas méthodologique mais métrique : continuer à piloter un projet fraude ou churn sur l'accuracy. Il faut privilégier le PR-AUC plutôt que le ROC-AUC, car pour des données fortement déséquilibrées, le PR-AUC reflète mieux la performance sur la classe minoritaire. Le rappel, la précision, le F1-score et, surtout, un coût métier explicite (coût d'un faux négatif vs coût d'un faux positif) doivent remplacer l'accuracy comme boussole de décision.
Les trois familles de solutions n'attaquent pas le problème de la même manière. SMOTE et les class weights sont deux des fixes les plus populaires : l'un modifie les données, l'autre modifie la fonction de perte.
Les pondérations de classe pénalisent davantage les erreurs sur la classe rare, sans toucher aux données. Les poids inverse-fréquence sont un défaut raisonnable, mais s'ils ne sont pas sacrés : si un faux négatif coûte dix fois plus qu'un faux positif, il faut pondérer la classe positive par ce ratio de coût directement — le bon poids encode l'économie du métier, pas une formule de manuel. Cette approche présente un avantage opérationnel décisif en production : elles sont l'option à plus faible friction : pas de lignes supplémentaires, pas de risque de fuite lié à l'ordre du rééchantillonnage, et un seul argument dans la plupart des fonctions de modélisation.
Pour les modèles de gradient boosting très utilisés en fraude, cette logique est souvent déjà native et plus performante que le rééchantillonnage post-hoc. Une étude récente sur des jeux de données réels de fraude observe que la gestion native du déséquilibre par l'algorithme (auto_class_weights de CatBoost, scale_pos_weight de XGBoost) surpasse systématiquement le SMOTE appliqué a posteriori, le mécanisme de repondération itérative du gradient boosting s'accommodant naturellement du déséquilibre.
SMOTE génère des exemples synthétiques de la classe minoritaire par interpolation entre voisins proches, plutôt que par simple duplication. Au lieu de copier, SMOTE génère de nouveaux exemples minoritaires en interpolant entre exemples existants, ce qui entraîne moins de surapprentissage et des données plus réalistes — en théorie. Dans les faits, l'efficacité de SMOTE dépend fortement du volume et de la dimensionnalité des données. Ce n'est pas fiable de façon systématique : SMOTE repose sur les distances aux plus proches voisins, et en haute dimension, la malédiction de la dimensionnalité rend ces distances dénuées de sens — tous les points deviennent à peu près équidistants ; SMOTE fonctionne mieux après une réduction de dimension ou lorsque seules quelques variables pilotent réellement la classification.
Sur des cas de fraude à très forte dimensionnalité catégorielle, plusieurs praticiens déconseillent carrément l'approche : le réflexe de rééchantillonnage (SMOTE, sur-échantillonnage aléatoire, sous-échantillonnage) dégrade presque toujours la performance en production, car les minorités synthétiques créées par interpolation dans un espace de variables catégorielles à haute dimension génèrent des exemples de fraude qui ne correspondent à aucun schéma d'attaque réel, et les modèles entraînés dessus généralisent mal quand les fraudeurs changent de tactique. Une analyse comparative récente sur un pipeline de fraude confirme ce constat empiriquement : dans leur pipeline fraude, SMOTE a dégradé un gradient boosting pourtant performant.
SMOTE garde néanmoins sa pertinence dans des contextes précis. Il faut y recourir quand la classe minoritaire est éparse : si la classe rare occupe une région fine et sous-échantillonnée, l'interpolation synthétique peut donner au modèle plus de détail sur la frontière de décision qu'une simple repondération. À l'inverse, il faut éviter SMOTE sur des classes bruitées ou qui se chevauchent : interpoler à travers les frontières de classe fabrique des points ambigus. Sur du churn B2C avec des variables comportementales continues et peu de chevauchement de classes, le contexte est plus favorable qu'en fraude bancaire à variables catégorielles éparses.
Le sous-échantillonnage réduit la classe majoritaire plutôt que de gonfler la minoritaire. Son principal atout est opérationnel sur les gros volumes : cette méthode réduit le nombre d'observations de la classe majoritaire pour équilibrer le jeu de données ; elle est particulièrement adaptée quand le jeu de données est volumineux, car réduire le nombre d'exemples d'entraînement améliore le temps de calcul et les contraintes de stockage. C'est typiquement le cas sur des bases de transactions ou de logs client comptant plusieurs dizaines de millions de lignes, où entraîner sur l'intégralité de la classe majoritaire n'apporte plus de gain de performance proportionnel au coût de calcul.
Son inconvénient est symétrique : le retrait d'observations peut faire perdre des informations importantes relatives à la classe majoritaire. Sur des volumes plus modestes (quelques dizaines de milliers de lignes), ce coût d'information devient problématique, ce qui explique pourquoi churn et crédit scoring sur base PME s'orientent plus souvent vers les class weights ou SMOTE que vers l'undersampling pur.
Il n'existe pas de technique universellement supérieure ; la littérature récente converge vers une démarche séquentielle plutôt qu'un choix figé. La logique recommandée est de corriger le déséquilibre par les class weights d'abord, l'ajustement du seuil ensuite, le SMOTE ou le sur/sous-échantillonnage en dernier recours. Une synthèse récente formalise ce même ordre de priorité : il faut remplacer le réflexe "SMOTE systématique" par un flux de travail structuré — démarrer avec une baseline solide et le PR-AUC, puis ajuster le seuil, ajouter de la sensibilité au coût, essayer des ensembles équilibrés, et envisager la détection d'anomalies pour les cas très rares.
En pratique, trois critères structurent le choix :
Pour les modèles à base d'arbres et de gradient boosting, qui dominent aujourd'hui les cas fraude et churn en production, les class weights sont le choix privilégié pour les petits jeux de données, les modèles à base d'arbres et quand les ressources de calcul sont limitées, car ils équilibrent précision et rappel sans modifier les données, tandis que SMOTE est plus pertinent pour les jeux de données volumineux et modérément déséquilibrés, où il augmente le rappel de la classe minoritaire mais au risque de surapprentissage et avec un coût de calcul plus élevé.
Quelle que soit la technique choisie, une erreur de protocole revient systématiquement dans les projets audités : appliquer le rééchantillonnage avant la séparation train/test ou avant le découpage en folds de validation croisée. Le mécanisme est bien documenté : une fuite d'information se produit parce que SMOTE est réalisé avant la validation croisée, ce qui signifie que des données "dupliquées" peuvent apparaître simultanément dans l'ensemble d'entraînement et de validation.
Une étude comparative sur un jeu de données de fraude par carte bancaire a quantifié cet effet : bien que les stratégies de rééchantillonnage améliorent la performance du modèle, la fiabilité des résultats dépend fortement du moment où elles sont appliquées ; les modèles XGBoost entraînés sur des données rééchantillonnées avant la séparation train/test peuvent afficher des métriques de performance artificiellement gonflées. Le même constat ressort d'une étude sur la détection de fraude en 2026 : pour éviter la fuite de données dans le traitement du déséquilibre des classes — une source fréquente mais sous-documentée d'estimations de performance gonflées — SMOTE et le sous-échantillonnage aléatoire doivent être appliqués exclusivement à l'intérieur de chaque fold d'entraînement, après la séparation des folds.
La correction technique est connue et outillée : utiliser un pipeline qui encapsule le rééchantillonnage pour qu'il ne s'applique qu'au fold d'entraînement de chaque itération de validation croisée. Pour éviter la fuite, SMOTE doit être appliqué strictement à l'intérieur de chaque fold d'entraînement pendant la validation croisée, en laissant le fold de validation totalement intact et aligné sur la distribution réelle ; lorsqu'on passe ce pipeline à la validation croisée, SMOTE ne sur-échantillonne que le sous-fold d'entraînement, le sous-fold de validation n'est jamais rééchantillonné, et l'appel de prédiction sur l'ensemble de test contourne automatiquement SMOTE.
Un retour d'expérience sur un projet de scoring crédit illustre concrètement l'ampleur de la correction à apporter une fois ce biais éliminé : une fois le rééchantillonnage correctement isolé au fold d'entraînement, l'AUC-ROC et le KS (indépendants du seuil) sont restés stables ou se sont améliorés, tandis que le F1, la précision et le rappel ont chuté, car l'ancien seuil avait été ajusté sur les mêmes données que celles utilisées ensuite pour le scorer. C'est précisément ce type d'écart qui sépare un prototype prometteur en notebook d'un modèle qui tient ses promesses en production.
Pour les cas d'usage réglementés — scoring de crédit, lutte anti-fraude en secteur bancaire —, le choix de la technique de rééquilibrage n'est pas qu'une question de performance. Les autorités attendent une documentation du modèle et de ses choix méthodologiques. La CNIL a publié en 2026 une recommandation actualisant son cadre sur le scoring de solvabilité : le 7 mai 2026, elle a publié une recommandation sur l'utilisation des données personnelles dans l'évaluation de la solvabilité des candidats à un crédit, abrogeant l'ancienne autorisation unique AU-005 de 2008 et instaurant un cadre détaillé pour les pratiques de scoring. La détection de fraude bénéficie d'un statut distinct au titre de l'AI Act : la détection de fraude financière est expressément exclue de l'annexe III §5(b), mais cette exception doit être documentée avec rigueur, avec une finalité de fraude explicite et une séparation des chaînes de traitement avec le scoring d'octroi. Dans ce contexte, un modèle appuyé sur des class weights explicites, traçables et justifiables économiquement, est souvent plus défendable face à un superviseur qu'un pipeline SMOTE dont les échantillons synthétiques sont difficiles à auditer a posteriori.
Mettre en place une méthode de décision robuste pour le déséquilibre de classes suppose de documenter à la fois le choix technique et le protocole de validation retenu. C'est un prérequis que nous intégrons systématiquement dans nos missions de conseil en data science, en particulier sur les projets fraude et churn où l'écart entre performance mesurée en développement et performance observée en production reste la première cause d'échec des déploiements.
Nos équipes accompagnent les directions data sur la structuration de ces pipelines de validation et sur l'arbitrage technique entre ces approches ; retrouvez le détail de notre expertise en machine learning ou contactez-nous pour un audit de vos modèles en production.
Nous utilisons des cookies de mesure d'audience et de suivi publicitaire pour comprendre la fréquentation du site et l'efficacité de nos annonces. Rien n'est déposé sans votre accord. En savoir plus