banner

A cross-item defect prediction method using adversarial learning

Jie Ma, Jasni Mohamad Zain, Dan Wang, Jilong Shi

Abstract


In today’s information society, the rapid growth of information technology has resulted in software products being integrated into every aspect of people’s lives. Consequently, the ability to accurately identify software modules that may cause problems within a specified time frame has become crucial for determining software development progress. This is because ensuring software dependability is a critical component of software development. In this paper, the enhanced abstract continuous generative adversarial network (AC-GAN) technique covers data processing and model construction. Three levels: (1) convert the code of the source project and the target project into the form of an abstract syntax tree (Unified Abstract Syntax Tree, UAST), then traverse the abstract syntax tree in a depth-first manner to obtain a node sequence, and then use continuous recursion to replace the nodes in the node sequence; (2) the processed numerical vectors are sent to the GAN-based model; (3) the GAN-based model generates the final word vectors. The network structure model is utilized for feature extraction and data transfer, and a binary classifier is then employed to determine if the target item code file is flawed. 15 sets of source-target item pairings are used to evaluate the AC-GAN approach. The experimental findings demonstrate the usefulness of the technique.


Keywords


AC-GAN; UAST; GAN

Full Text:

PDF

References


1. Gray J. Why do computers stop and what can be done about it? In: Symposium on Reliability in Distributed Software and Database Systems; 13–15 January1986; Los Angeles, USA. pp. 3–12.

2. Hall T, Beecham S. Bowes D, et al. A systematic literature review on fault prediction performance in software engineering. IEEE Transactions on Software Engineering 2012; 38(6): 1276–1304. doi: 10.1109/TSE.2011.103

3. Punitha K, Chitra S. Software defect prediction using software metrics-A survey. In: 2013 International Conference on Information Communication and Embedded Systems (ICICES); 21–22 February2013; Chennai. pp. 555–558.

4. Yang X, Lo D, Xia X, et al. Deep learning for just-in-time defect prediction. In: 2015 IEEE International Conference on Software Quality, Reliability and Security; 3–5 August 2015; Vancouver. pp. 17–26.

5. Wang S, Liu T, Tan L. Automatically learning semantic features for defect prediction. In: 2016 IEEE/ACM 38th International Conference on Software Engineering (ICSE); 14–22 May 2016; Austin. p. 297.

6. Qiao L, Li G, Yu D, Liu, H. Deep feature learning to quantitative prediction of software defects. In: 2021 IEEE 45th Annual Computers, Software, and Applications Conference (COMPSAC); 12–16 July 2021; Madrid. pp. 1401–1402.

7. Gray D, Bowes D, Davey N, et al. Software defect prediction using static code metrics underestimates defect-proneness. In: The 2010 International Joint Conference on Neural Networks (IJCNN); 18–23 July 2010; Barcelona. pp. 1–7.

8. Hosseini S, Turhan B, Gunarathna D. A systematic literature review and meta-analysis on cross project defect prediction. IEEE Transactions on Software Engineering 2019; 45(2): 111–147. doi: 10.1109/TSE.2017.2770124

9. Jin C. Cross-project software defect prediction based on domain adaptation learning and optimization. Expert Systems with Applications 2021; 171(1): 114637. doi: 10.1016/j.eswa.2021.114637

10. Wang K, Gou C, Duan Y, et al. Generative adversarial networks: Introduction and outlook. IEEE/CAA Journal of Automatica Sinica 2017; 4(4): 588–598. doi: 10.1109/JAS.2017.7510583

11. Ganin Y, Ustinova E, Ajakan, et al. Domain-adversarial training of neural networks. The Journal of Machine Learning Research 2020; 17(1): 2096–2030. doi :10.1109/TNNLS.2020.3025954

12. Zhu JY, Park T, Isola P, Efros AA. Unpaired image-to-image translation using cycle consistent adversarial networks. In: Proceedings of the IEEE International Conference on Computer Vision; 22–29 October 2017; Venice. pp. 2223–2232.

13. Azadi S, Fisher M, Kim VG, et al. Multi-content GAN for few-shot font style transfer. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition; 18–23 June 2018; Salt Lake. pp. 7564–7573.

14. Choi Y, Choi M, Kim M, et al. Stargan: Unified generative adversarial networks for multi-domain image-to-image translation. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition; 18–23 June 2018; Salt Lake. pp. 8789–8797.

15. Engel J, Agrawal KK, Chen S, et al. Gansynth: Adversarial neural audio synthesis. arXiv:1902.08710; 2019. doi: 10.48550/arXiv.1902.08710

16. Chang CP. Integrating action-based defect prediction to provide recommendations for defect action correction. International Journal of Software Engineering and Knowledge Engineering 2012; 23(2): 147–172. doi: 10.1142/S0218194013500022

17. Singh P, Pal NR, Verma, S, Vyas OP. Fuzzy rule-based approach for software fault prediction. IEEE Transactions on Systems, Man, and Cybernetics: Systems 2017; 47(5): 826–837. doi: 10.1109/TSMC.2016.2521840

18. Laradji IH, Alshayeb M, Ghouti L. Software defect prediction using ensemble learning on selected features. Information and Software Technology 2015; 58: 388–402. doi: 10.1016/j.infsof.2014.07.005

19. He Q, Shen B, Chen Y. Software defect prediction using semi-supervised learning with change burst information. In: 2016 IEEE 40th Annual Computer Software and Applications Conference (COMPSAC); 10–14 June 2016; Atlanta. pp. 113–122.

20. Yang X, Lo D, Xia X, Sun J. TLEL: A two-layer ensemble learning approach for just-in-time defect prediction. Information and Software Technology 2017; 87(87): 206–220. doi: 10.1016/j.infsof.2017.03.00

21. Wu F, Jing XY, Dong X, et al. Cross-project and within-project semi-supervised software defect prediction problems study using a unified solution. In: 2017 IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C); 20–28 May 2017; Buenos. pp. 195–197.

22. Hinton GE, Osindero S, Teh YW. A fast learning algorithm for deep belief nets. Neural Computation 2006; 18(7): 1527–1554. doi: 10.1162/neco.2006.18.7.1527

23. Li J, He P, Zhu J, Lyu MR. Software defect prediction via convolutional neural network. In: 2017 IEEE International Conference on Software Quality, Reliability and Security (QRS); 25–29 July 2017; Prague. pp. 318–328.

24. Nam J, Pan SJ, Kim S. Transfer defect learning. In: 2013 35th International Conference on Software Engineering (ICSE); 18–26 May 2013; San Francisco. pp. 382–391.

25. Long M, Wang J, Ding G, et al. Transfer feature learning with joint distribution adaptation. In: Proceedings of the IEEE International Conference on Computer Vision; 1–8 December 2013; Sydney. pp. 2200–2207.

26. Turhan B, Menzies T, Bener AB, Di Stefano J. On the relative value of cross-company and within-company data for defect prediction. Empirical Software Engineering 2009; 14(5): 540–578. doi: 10.1007/s10664-008-9103-7

27. Xu Z, Pang S, Zhang T, et al. Cross project defect prediction via balanced distribution adaptation based transfer learning. Journal of Computer Science and Technology 2019; 34(5): 1039–1062. doi: 10.1007/s11390-019-1959-z

28. Xia X, Lo D, Pan SJ, et al. Hydra: Massively compositional model for cross-project defect prediction. IEEE Transactions on Software Engineering 2016; 42(10): 977–998. doi: 10.1109/TSE.2016.2543218

29. Ryu D, Jang JI, Baik J. A transfer cost-sensitive boosting approach for cross-project defect prediction. Software Quality Journal 2017; 25(1): 235–272. doi: 10.1007/s11219-015-9287-1

30. Wu F, Jing XY, Sun Y, et al. Cross-project and within-project semisupervised software defect prediction: A unified approach. IEEE Transactions on Reliability 2018; 67(2): 581–597. doi: 10.1109/TR.2018.2804922

31. Zhong S, Khoshgoftaar TM, Seliya N. Unsupervised learning for expert-based software quality estimation. In: HASE; 25–26 March 2004; Tampa. pp. 149–155.

32. Zhang F, Zheng Q, Zou Y, Hassan AE. Cross-project defect prediction using a connectivity-based unsupervised classifier. In: 2016 IEEE/ACM 38th International Conference on Software Engineering (ICSE); 14–22 May 2016; Austin. pp. 309–320.

33. Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need. In: 31st Conference on Neural Information Processing Systems; 4–9 December 2017; Long Beach. pp. 6000–6010.

34. Graves A, Schmidhuber J. Framewise phoneme classification with bidirectional LSTM and other neural network architectures. Neural Networks 2005; 18(5–6): 602–610. doi: 10.1109/IJCNN.2005.1556215

35. De Boer PT, Kroese DP, Mannor S, Rubinstein RY. A tutorial on the cross-entropy method. Annals of Operations Research 2005; 134(1): 19–67. doi: 10.1007/s10479-005-5724-z.

36. Jiang L, Su Z. Automatic mining of functionally equivalent code fragments via random testing. In: Proceedings of the Eighteenth International Symposium on Software Testing and Analysis; 19 July 2009; Chicago. pp. 81–92.

37. Hochreiter S, Schmidhuber J. Long short-term memory. Neural Computation 1997; 9(8): 1735–1780. doi: 10.1162/neco.1997.9.8.1735

38. Ray A, Rajeswar S, Chaudhury S. Text recognition using deep BLSTM networks. In: 2015 Eighth International Conference on Advances in Pattern Recognition (ICAPR); 4–7 January 2015; Kolkata. pp. 1–6.

39. Cramer JS. The origins of logistic regression. Tinbergen Institute Working Paper 2002; 119. doi: 10.2139/ssrn.360300

40. Degtyarenko KN, North AC, Findlay JB. PROMISE: A database of bioinorganic motifs. Nucleic Acids Research 1999; 27(1): 233–236. doi: 10.1093/nar/27.1.233




DOI: https://doi.org/10.32629/jai.v7i4.641

Refbacks

  • There are currently no refbacks.


Copyright (c) 2024 Jie Ma, Jasni Mohamad Zain, Dan Wang, Jilong Shi

License URL: https://creativecommons.org/licenses/by-nc/4.0/