Abstract
Software testing is an important task in software development activities, and it requires most of the resources, namely, time, cost and effort. To minimize this fatigue, software bug prediction (SBP) models are applied to improve the software quality assurance (SQA) processes by predicting buggy components. The bug prediction models use machine learning classifiers so that bugs can be predicted in software components in some software metrics. These classifiers are characterized by some configurable parameters, called hyper-parameters that need to be optimized to ensure better performance. Many methods have been proposed by researchers to predict the defective components but these classifiers sometimes not perform well when default settings are used for machine learning classifiers. In this paper, software bug prediction model is proposed which uses machine learning classifiers in conjunction with the Artificial Immune Network (AIN) to improve bug prediction accuracy through its hyper-parameter optimization. For this purpose, seven machine learning classifiers, such as support vector machine Radial base function (SVM-RBF), K-nearest neighbor (KNN) (Minkowski metric), KNN (Euclidean metric), Naive Bayes (NB), Decision Tree (DT), Linear discriminate analysis (LDA), Random forest (RF) and adaptive boosting (AdaBoost), were used. The experiment was carried out on bug prediction dataset. The results showed that hyper-parameter optimization of machine learning classifiers, using AIN and its applications for software bug prediction, performed better than when classifiers with their default hyper-parameters were used.
Highlights
A software bug is a defect, an error or fault due to which incorrect or unpredictable results are produced
The contributions made in this paper is to investigate the impact of hyper-parameter optimization of machine learning classifiers using opt-aiNet on the performance of software bug prediction (SBP) on 2 performance measures
PROPOSED OPT-AINET FOR PARAMETER OPTIMIZATION OF CLASSIFIERS We have proposed an opt-aiNet algorithm to optimize the parameters of classifiers, such as SVM, K-nearest neighbor (KNN), Naive Bayes (NB), Decision Tree (DT), Linear discriminate analysis (LDA), Random forest (RF), and AdaBoost
Summary
A software bug is a defect, an error or fault due to which incorrect or unpredictable results are produced. The presence of these software bugs directly affects the quality and maintenance cost of software systems. To overcome resource allocation problems SBP models have been designed to identify bug-prone software modules using machine learning classification techniques. We have used KNN with two distance metrics namely Euclidean and Minkowski metric. A distance metric or function provides the distance between two elements of a class. The distance function varies from different distance metrics. In the Euclidean metric, the distance between two data points is calculated in a plane. The function used for the Euclidean metric is: d(x, x ) =
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.