Improving imbalanced learning through a heuristic oversampling method based on k-means and SMOTE

Research output: Contribution to journalArticlepeer-review

649 Citations (Scopus)
244 Downloads (Pure)


Learning from class-imbalanced data continues to be a common and challenging problem in supervised learning as standard classification algorithms are designed to handle balanced class distributions. While different strategies exist to tackle this problem, methods which generate artificial data to achieve a balanced class distribution are more versatile than modifications to the classification algorithm. Such techniques, called oversamplers, modify the training data, allowing any classifier to be used with class-imbalanced datasets. Many algorithms have been proposed for this task, but most are complex and tend to generate unnecessary noise. This work presents a simple and effective oversampling method based on k-means clustering and SMOTE (synthetic minority oversampling technique), which avoids the generation of noise and effectively overcomes imbalances between and within classes. Empirical results of extensive experiments with 90 datasets show that training data oversampled with the proposed method improves classification results. Moreover, k-means SMOTE consistently outperforms other popular oversampling methods. An implementation1 is made available in the Python programming language.

Original languageEnglish
Pages (from-to)1-20
Number of pages20
JournalInformation Sciences
Publication statusPublished - 1 Oct 2018


  • Class-imbalanced learning
  • Classification
  • Clustering
  • Oversampling
  • Supervised learning
  • Within-class imbalance


Dive into the research topics of 'Improving imbalanced learning through a heuristic oversampling method based on k-means and SMOTE'. Together they form a unique fingerprint.

Cite this