Litcius/Paper detail

Use of Deep Learning Model with Attention Mechanism for Software Fault Prediction

Ting-Yan Yu, Chin‐Yu Huang, Neil C. Fang

20212021 8th International Conference on Dependable Systems and Their Applications (DSA)17 citationsDOI

Abstract

Software defect prediction is a skill in software engineering that can increase program reliability. In the past, most defect prediction studies have been based on size and complexity metrics. In recent years, machine learning based predictive studies have been conducted. To build an accurate prediction model, choosing effective features remains critical. In this paper, we constructed a deep learning model called Defect Prediction via Self-Attention mechanism (DPSAM) to extract semantic features and predict defects automatically. We transferred programs into abstract syntax trees (ASTs) and encoded them into token vectors. With input features, we trained a self-attention mechanism to extract semantic features of programs and predict defects. We evaluated performance on 7 open source projects. In Within-Project Defect Prediction (WPDP), DPSAM achieved 16.8% and 14.4% performance improvement compared to state-of-the-art deep belief network (DBN)-based method and defect prediction via convolutional neural network (DP-CNN)-based method in F1 score, respectively. Besides, in Cross-Project Defect Prediction (CPDP), DPSAM achieve 23% and 60% performance improvement in F1 score compared to DBN-based method and DP-CNN-based method.

Topics & Concepts

Computer scienceArtificial intelligenceDeep learningDeep belief networkMachine learningConvolutional neural networkMechanism (biology)Reliability (semiconductor)Software bugSecurity tokenSoftwarePredictive modellingArtificial neural networkSyntaxComputer securityPower (physics)PhysicsQuantum mechanicsEpistemologyProgramming languagePhilosophySoftware Engineering ResearchSoftware Reliability and Analysis ResearchSoftware System Performance and Reliability
Use of Deep Learning Model with Attention Mechanism for Software Fault Prediction | Litcius