Deep Learning and Explainable AI for Accurate and Interpretable Software Defect Prediction
摘要
Software defect prediction is an essential aspect of software development process as defects significantly impact software reliability and usability. Several methods have been studied to predict the defects in software, but most of the time, the prediction result lack of transparancy about which features actually contributes to the prediction results. In this study, we adopt the Convolutional Neural Network (CNN) model for defect prediction, then apply the Local Interpretable Model-Agnostic Explanations (LIME) to gain interpretability on the prediction result. In order to address the data imbalance issue, we apply the Synthetic Minority Over-sampling Technique (SMOTE). Experiments on the NASA Promise repository datasets (CM1, JM1, KC1, KC2, and PC1) shows that the model achieve accuracy ranging from 81 to 92% across the dataset. Furthermore, through the LIME analysis, some metrics such as Lines of Code (LoC) and Effort (e) give more substantial influence in the defect predictions.