Enhancing Software Defect Prediction under Class Imbalance: A Comparative Study of Resampling Techniques and Ensemble Learning Models
Abstract
Software Defect Prediction (SDP) is important for making software more reliable and getting the most out of quality assurance efforts. However, in most practical defect sets there is a significant class imbalance, a few modules are defective, and many are not. This imbalance results in an imbalance of the learning and the difficulty to find modules that are likely to have bugs. This paper presents a thorough comparative study of three popular oversampling methods: SMOTE, ADASYN and Random Over-Sampling (ROS) combined with different machine learning classifiers such as K-Nearest Neighbours, Decision Tree, Support Vector Classifier, AdaBoost and Gradient Boosting. In this study, MC1 and PC4 datasets are used for empirical assessment from the PROMISE repository. In respect of the assessment of minority classes, accuracy, precision, recall and F1 score are used. Experimental results also suggest that sampling from a large pool of outliers gives better recall in any module with fault, thus GB+ADASYN+ROS is better than other modules in ensemble classifiers in terms of well-balanced recall.