Software metrics play a key role in predicting software defects. Various types of metrics have been proposed, such as software complexity and object-oriented metrics. Considering the above, this chapter presents a comparative analysis of several traditional machine learning algorithms, such as K Nearest Neighbors (KNN), Vector Support Machines (SVM), Random Forest (RF), and a multilayer perceptron (MLP). They were trained with various software metrics. Three experiments were conducted. In the first, the algorithms were trained with software complexity metrics. In the second, object-oriented metrics were used, and finally, in the third, the combination of software complexity and object-oriented metrics was used. Our results demonstrate that using the combination of object-oriented and complexity software metrics allows defects to be predicted more accurately than using a single type of metric. The algorithms with the best performance for each experiment, respectively, were KNN with an accuracy of 80.26% and F1-Score of 0.8332 and G-Mean of 0.7994, KNN with an accuracy of 80.76% and F1-Score of 0.8309 and G-Mean of 0.8013 and finally, RF with an accuracy of 85.52% and F1-Score of 0.8667 and G-Mean of 0.8726.

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

Comparative Evaluation of Machine Learning Algorithms for Predicting Defects Using Object-Oriented and Software Complexity Metrics

  • Yaretxy Arely Pelayo Lomeli,
  • Juan Pablo García Vázquez,
  • María Angélica Astorga-Vargas,
  • Jorge Eduardo Ibarra Esquer,
  • Jesus Eduardo Soto Vega,
  • Araceli Celina Justo López

摘要

Software metrics play a key role in predicting software defects. Various types of metrics have been proposed, such as software complexity and object-oriented metrics. Considering the above, this chapter presents a comparative analysis of several traditional machine learning algorithms, such as K Nearest Neighbors (KNN), Vector Support Machines (SVM), Random Forest (RF), and a multilayer perceptron (MLP). They were trained with various software metrics. Three experiments were conducted. In the first, the algorithms were trained with software complexity metrics. In the second, object-oriented metrics were used, and finally, in the third, the combination of software complexity and object-oriented metrics was used. Our results demonstrate that using the combination of object-oriented and complexity software metrics allows defects to be predicted more accurately than using a single type of metric. The algorithms with the best performance for each experiment, respectively, were KNN with an accuracy of 80.26% and F1-Score of 0.8332 and G-Mean of 0.7994, KNN with an accuracy of 80.76% and F1-Score of 0.8309 and G-Mean of 0.8013 and finally, RF with an accuracy of 85.52% and F1-Score of 0.8667 and G-Mean of 0.8726.