Abstract
Software fault prediction is an essential task for the researchers and software testers to determine the faulty modules in the software in early stages. This early identification of faulty modules improves the software quality and thus the software produced will be of higher quality and cost effective. The use of imbalanced dataset hinders in the performance of the software fault prediction model. The model gets biased towards the majority class and thus the worthy results may not be produced. Moreover, the class overlap problem in the data results in the incorrect prediction. This class overlap problem needs to be addressed as the available datasets are highly imbalanced and overlapped. Many fault predictions models have been proposed in the literature using machine learning classifiers but there is always a room for improvement. In this study, the main objective is to utilize the balanced and non-overlapping data in the training of our model, thus improving the prediction capability of the model. In this study, we have used the two staged preprocessing of the dataset before training of our model. Firstly, class overlap problem is addressed using neighborhood cleaning method and then secondly, data is balanced using random oversampling technique. Five publicly available datasets from PROMISE repository are utilized in this study. The four base learners are used and then the results of these base learners are ensembled using the model averaging method. The results are then compared with the use of overlapping method only and using the resampling technique only, to determine the usefulness of the proposed approach. Moreover, the results of the proposed approach are also compared with the existing approach of handling imbalanced data. Through experiments it is seen that the proposed technique has outperformed the prediction capability. For evaluation purpose, the performance measure used is area under the curve (AUC). To avoid the randomness and biasness, results are cross validated using k-fold (k = 10) cross validation.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.