Manifesting Bugs in Machine Learning Code: An Explorative Study with Mutation Testing

被引:24
|
作者
Cheng, Dawei [1 ]
Cao, Chun [1 ]
Xu, Chang [1 ]
Ma, Xiaoxing [1 ]
机构
[1] Nanjing Univ, Inst Comp Software, State Key Lab Novel Software Technol, Nanjing, Peoples R China
来源
2018 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY AND SECURITY (QRS 2018) | 2018年
基金
国家重点研发计划;
关键词
machine learning programs; mutation testing; explorative study;
D O I
10.1109/QRS.2018.00044
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Nowadays statistical machine learning is widely adopted in various domains such as data mining, image recognition and automated driving. However, software quality assurance for machine learning is still in its infancy. While recent efforts have been put into improving the quality of training data and trained models, this paper focuses on code-level bugs in the implementations of machine learning algorithms. In this explorative study we simulated program bugs by mutating Weka implementations of several classification algorithms. We observed that 8%-40% of the logically non-equivalent executable mutants were statistically indistinguishable from their golden versions. Moreover, other 15%-36% of the mutants were stubborn, as they performed not significantly worse than a reference classifier on at least one natural data set. We also experimented with several approaches to killing those stubborn mutants. Preliminary results indicate that bugs in machine learning code may have negative impacts on statistical properties such as robustness and learning curves, but they could be very difficult to detect, due to the lack of effective oracles.
引用
收藏
页码:313 / 324
页数:12
相关论文
共 50 条
  • [1] Mantra: Mutation Testing of Hardware Design Code Based on Real Bugs
    Wu, Jiang
    Lei, Yan
    Zhang, Zhuo
    Meng, Xiankai
    Yang, Deheng
    Li, Pan
    He, Jiayu
    Mao, Xiaoguang
    2023 60TH ACM/IEEE DESIGN AUTOMATION CONFERENCE, DAC, 2023,
  • [2] Machine Learning Based Prediction of Complex Bugs in Source Code
    Uqaili, Ishrat-Un-Nisa
    Ahsan, Syed Nadeem
    INTERNATIONAL ARAB JOURNAL OF INFORMATION TECHNOLOGY, 2020, 17 (01) : 26 - 37
  • [3] Smoke testing for machine learning: simple tests to discover severe bugs
    Herbold, Steffen
    Haar, Tobias
    EMPIRICAL SOFTWARE ENGINEERING, 2022, 27 (02)
  • [4] Smoke testing for machine learning: simple tests to discover severe bugs
    Steffen Herbold
    Tobias Haar
    Empirical Software Engineering, 2022, 27
  • [5] Smoke testing for machine learning: simple tests to discover severe bugs
    Institute of Software and Systems Engineering, TU Clausthal, Clausthal-Zellerfeld, Germany
    不详
    Empir Software Eng, 2022, 2
  • [6] An Empirical Study of Bugs in Quantum Machine Learning Frameworks
    Zhao, Pengzhan
    Wu, Xiongfei
    Luo, Junjie
    Li, Zhuo
    Zhao, Jianjun
    2023 IEEE INTERNATIONAL CONFERENCE ON QUANTUM SOFTWARE, QSW, 2023, : 68 - 75
  • [7] An Empirical Study on Real Bugs for Machine Learning Programs
    Sun, Xiaobing
    Zhou, Tianchi
    Li, Genjie
    Hu, Jiajun
    Yang, Hui
    Li, Bin
    2017 24TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2017), 2017, : 348 - 357
  • [8] Testing Machine Learning Code using Polyhedral Region
    Ahmed, Md Sohel
    Ishikawa, Fuyuki
    Sugiyama, Mahito
    PROCEEDINGS OF THE 28TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE '20), 2020, : 1533 - 1536
  • [9] Finding Compiler Bugs via Live Code Mutation
    Sun, Chengnian
    Vu Le
    Su, Zhendong
    ACM SIGPLAN NOTICES, 2016, 51 (10) : 849 - 863
  • [10] EXTENDING MUTATION TESTING TO FIND ENVIRONMENTAL BUGS
    SPAFFORD, EH
    SOFTWARE-PRACTICE & EXPERIENCE, 1990, 20 (02): : 181 - 189