Software bug prediction is essential for improving software’s quality with cost reduction in testing. The objective of software bug prediction is to find software’s flaws. This research describes software bug prediction based on an ensemble model that integrates various classifiers of machine learning. The suggested model uses a three-step prediction procedure to identify bugs. At the first stage, feature selection by the genetic algorithm is applied to the datasets. At the second step, the following machine learning classifiers are utilized: Artificial Neural Network, Gradient Boosting, Support Vector Machine, and Random Forest. These machine learning techniques are optimized iteratively using parameters to gain the highest accuracy achievable. In the third step, the individual classifier’s guessing accuracy is combined into a vote based on an ensemble to generate the final forecast. The approach based on an ensemble also improves the robustness and accuracy of the bug forecasting. Four empirical bug datasets from the NASA MDP repository, PC1, JM1, PC3, and CM1, were used to apply and test the bug forecasting system alleged in this paper. Results show that the suggested intelligent system for each dataset performed extremely accurately, outperforming eighteen top-performing techniques of forecasting bugs, including machine learning species and ensemble.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Enhanced Software Bug Prediction Using Ensemble Learning and Genetic Algorithm-Based Feature Selection

  • Naman Anand Gupta,
  • Raju Pal,
  • Harsh Anand Gupta

摘要

Software bug prediction is essential for improving software’s quality with cost reduction in testing. The objective of software bug prediction is to find software’s flaws. This research describes software bug prediction based on an ensemble model that integrates various classifiers of machine learning. The suggested model uses a three-step prediction procedure to identify bugs. At the first stage, feature selection by the genetic algorithm is applied to the datasets. At the second step, the following machine learning classifiers are utilized: Artificial Neural Network, Gradient Boosting, Support Vector Machine, and Random Forest. These machine learning techniques are optimized iteratively using parameters to gain the highest accuracy achievable. In the third step, the individual classifier’s guessing accuracy is combined into a vote based on an ensemble to generate the final forecast. The approach based on an ensemble also improves the robustness and accuracy of the bug forecasting. Four empirical bug datasets from the NASA MDP repository, PC1, JM1, PC3, and CM1, were used to apply and test the bug forecasting system alleged in this paper. Results show that the suggested intelligent system for each dataset performed extremely accurately, outperforming eighteen top-performing techniques of forecasting bugs, including machine learning species and ensemble.