Within-project and cross-project just-in-time defect prediction based on denoising autoencoder and convolutional neural network

被引:39
作者
Zhu, Kun [1 ]
Zhang, Nana [1 ]
Ying, Shi [1 ]
Zhu, Dandan [2 ]
机构
[1] Wuhan Univ, Sch Comp Sci, 299 Bayi Rd, Wuhan, Peoples R China
[2] Shanghai Jiao Tong Univ, Artificial Intelligence Inst, 800 Dongchuan Rd, Shanghai, Peoples R China
基金
美国国家科学基金会;
关键词
neural nets; learning (artificial intelligence); denoising autoencoder; software defect prediction; basic defect features; mainstream deep learning techniques; just-in-time defect prediction model; autoencoder convolutional neural network; convolution neural network; cross-project defect prediction experiments; CODE CHURN; COMPLEXITY;
D O I
10.1049/iet-sen.2019.0278
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Just-in-time defect prediction is an important and useful branch in software defect prediction. At present, deep learning is a research hotspot in the field of artificial intelligence, which can combine basic defect features into deep semantic features and make up for the shortcomings of machine learning algorithms. However, the mainstream deep learning techniques have not been applied yet in just-in-time defect prediction. Therefore, the authors propose a novel just-in-time defect prediction model named DAECNN-JDP based on denoising autoencoder and convolutional neural network in this study, which has three main advantages: (i) Different weights for the position vector of each dimension feature are set, which can be automatically trained by adaptive trainable vector. (ii) Through the training of denoising autoencoder, the input features that are not contaminated by noise can be obtained, thus learning more robust feature representation. (iii) The authors leverage a powerful representation-learning technique, convolution neural network, to construct the basic change features into the abstract deep semantic features. To evaluate the performance of the DAECNN-JDP model, they conduct extensive within-project and cross-project defect prediction experiments on six large open source projects. The experimental results demonstrate that the superiority of DAECNN-JDP on five evaluation metrics.
引用
收藏
页码:185 / 202
页数:18
相关论文
共 40 条
  • [1] Combining Deep Learning with Information Retrieval to Localize Buggy Files for Bug Reports
    An Ngoc Lam
    Anh Tuan Nguyen
    Hoan Anh Nguyen
    Nguyen, Tien N.
    [J]. 2015 30TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE), 2015, : 476 - 481
  • [2] SMOTE: Synthetic minority over-sampling technique
    Chawla, Nitesh V.
    Bowyer, Kevin W.
    Hall, Lawrence O.
    Kegelmeyer, W. Philip
    [J]. 2002, American Association for Artificial Intelligence (16)
  • [3] Denoising Autoencoder Self-Organizing Map (DASOM)
    Ferles, Christos
    Papanikolaou, Yannis
    Naidoo, Kevin J.
    [J]. NEURAL NETWORKS, 2018, 105 : 112 - 131
  • [4] Revisiting Unsupervised Learning for Defect Prediction
    Fu, Wei
    Menzies, Tim
    [J]. ESEC/FSE 2017: PROCEEDINGS OF THE 2017 11TH JOINT MEETING ON FOUNDATIONS OF SOFTWARE ENGINEERING, 2017, : 72 - 83
  • [5] Fukushima T., 2014, P 11 WORK C MIN SOFT
  • [6] Predicting fault incidence using software change history
    Graves, TL
    Karr, AF
    Marron, JS
    Siy, H
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2000, 26 (07) : 653 - 661
  • [7] Deep API Learning
    Gu, Xiaodong
    Zhang, Hongyu
    Zhang, Dongmei
    Kim, Sunghun
    [J]. FSE'16: PROCEEDINGS OF THE 2016 24TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON FOUNDATIONS OF SOFTWARE ENGINEERING, 2016, : 631 - 642
  • [8] Semantically Enhanced Software Traceability Using Deep Learning Techniques
    Guo, Jin
    Cheng, Jinghui
    Cleland-Huang, Jane
    [J]. 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2017, : 3 - 14
  • [9] Predicting Faults Using the Complexity of Code Changes
    Hassan, Ahmed E.
    [J]. 2009 31ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, PROCEEDINGS, 2009, : 78 - 88
  • [10] Hoang T., 2019, IEEE INT WORK C MIN