Cross-project Defect Prediction via ASTToken2Vec and BLSTM-based Neural Network
2019 International Joint Conference on Neural Networks (IJCNN)(2019)
摘要
Cross-project defect prediction (CPDP) as a means to focus quality assurance of software projects was under heavy investigation in recent years. In this paper, we propose a novel CPDP approach via deep learning. In particular, we model each program module via simplified abstract syntax tree (S-AST). For each node in S-AST, only the project-independent node type is remained and other project-specific information (such as name of variable and method) is ignored, so that the modeling method is project-independent and suitable for CPDP issue. Then we extract token sequences from program modules modeled as S-AST. In addition, to construct meaningful vector representations for token sequences, we propose a novel unsupervised embedding method ASTToken2Vec, which learns semantic information from S-AST's natural structure. Finally, we use BLSTM (bi-directional long short-term memory) based neural network to automatically learn semantic features from vectorized token sequences and construct CPDP models. In our empirical studies, 10 real large-scale open source Java projects are chosen as our empirical subjects. Final results show that our proposed CPDP approach can perform significantly better than 5 state-of-the-art CPDP baselines in terms of AUC.
更多查看译文
关键词
abstract syntax tree,token sequence extraction,bi-directional long short-term memory,S-AST,project-specific information,project-independent node type,deep learning,software projects,BLSTM-based neural network,cross-project defect prediction,large-scale open source Java projects,CPDP models,vectorized token sequences,unsupervised embedding method ASTToken2Vec,program module
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络