arrow
返回

Bug characterization in machine learning-based systems

delete2023-12-05
delete10
PRE
AI
M
Mohammad Mehdi Morovati *
A
Amin Nikanjam
F
Florian Tambon
F
Foutse Khomh
Z
Zhen Ming Jiang
DOI:10.1007/s10664-023-10400-0delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
The rapid growth of applying Machine Learning (ML) in different domains, especially in safety-critical areas, increases the need for reliable ML components, i.e., a software component operating based on ML. Since corrective maintenance, i.e. identifying and resolving systems bugs, is a key task in the software development process to deliver reliable software components, it is necessary to investigate the usage of ML components, from the software maintenance perspective. Understanding the bugs' characteristics and maintenance challenges in ML-based systems can help developers of these systems to identify where to focus maintenance and testing efforts, by giving insights into the most error-prone components, most common bugs, etc. In this paper, we investigate the characteristics of bugs in ML-based software systems and the difference between ML and non-ML bugs from the maintenance viewpoint. We extracted 447,948 GitHub repositories that used one of the three most popular ML frameworks, i.e., TensorFlow, Keras, and PyTorch. After multiple filtering steps, we select the top 300 repositories with the highest number of closed issues. We manually investigate the extracted repositories to exclude non-ML-based systems. Our investigation involved a manual inspection of 386 sampled reported issues in the identified ML-based systems to indicate whether they affect ML components or not. Our analysis shows that nearly half of the real issues reported in ML-based systems are ML bugs, indicating that ML components are more error-prone than non-ML components. Next, we thoroughly examined 109 identified ML bugs to identify their root causes, and symptoms, and calculate their required fixing time. The results also revealed that ML bugs have significantly different characteristics compared to non-ML bugs, in terms of the complexity of bug-fixing (number of commits, changed files, and changed lines of code). Based on our results, fixing ML bugs is more costly and ML components are more error-prone, compared to non-ML bugs and non-ML components respectively. Hence, paying significant attention to the reliability of the ML components is crucial in ML-based systems. These results deepen the understanding of ML bugs and we hope that our findings help shed light on opportunities for designing effective tools for testing and debugging ML-based systems.
Keyword:
Software bug
Software testing
ML-based systems
ML bug
Deep learning
Software maintenance
Empirical study

期刊

Empirical Software Engineering 封面图
Empirical Software Engineering
IF:
3.6
论文数:
2.0K
被引数:
5.3K

机构

U
universite de montreal
学者数:
4.6W
论文数: 3.8W
被引数: 46
P
Polytechnique Montreal
学者数:
3.7K
论文数: 3.4K
被引数: 42
引用论文

引用论文

Neural representation of goal direction in the monarch butterfly brain
err
IF0
err2022-10-18
err0
errOAAI
errM. Jerome Beetz; Christian Kraus; Basil el Jundi
err分享
err收藏
err
IF0
err
err0
PREAI
err
err分享
err收藏
A multi-layer and multi-ensemble stock trader using deep learning and deep reinforcement learning使用深度学习和深度强化学习的多层和多集成股票交易者
err2020-09-07
err78
PREAI
errCarta, Salvatore; Corriga, Andrea; Ferreira, Anselmo; Podda, Alessandro Sebastian; Recupero, Diego Reforgiato
err分享
err收藏
Orthotopic heart transplantation: two parts of the heart with two different arrhythmias
err2011-03-01
err0
PREAI
errMichele D'Alto; Stephen Lord; John Bourke; Giuseppe Santarpia; Berardo Sarubbi; Maria Giovanna Russo; Raffaele Calabrò
err分享
err收藏
err分享
err收藏
Artificial Urinary Sphincters around Intestinal Segments—Are they Safe?
err2008-11-26
err0
PREAI
errP. M. T. WESTON; J. D. T. MORGAN; J. HUSSAIN; T. P. STEPHENSON
err分享
err收藏
err分享
err收藏
Revisiting reopened bugs in open source software systems重新审视开源软件系统中重新打开的错误
err2022-04-25
err12
PREAI
errTagra, Ankur; Zhang, Haoxiang; Rajbahadur, Gopi Krishnan; Hassan, Ahmed E.
err分享
err收藏
Analyzing bug fix for automatic bug cause classification自动bug原因分类的bug修复分析
err2020-05-01
err33
PREAI
errNi, Zhen; Li, Bin; Sun, Xiaobing; Chen, Tianhao; Tang, Ben; Shi, Xinchen
err分享
err收藏
学者 查看更多内容