TY - GEN
T1 - An Empirical Study on Bugs Inside PyTorch
T2 - 39th IEEE International Conference on Software Maintenance and Evolution, ICSME 2023
AU - Yin Ho, Sharon Chee
AU - Majdinasab, Vahid
AU - Islam, Mohayeminul
AU - Costa, Diego Elias
AU - Shihab, Emad
AU - Khomh, Foutse
AU - Nadi, Sarah
AU - Raza, Muhammad
N1 - Publisher Copyright:
© 2023 IEEE.
PY - 2023
Y1 - 2023
N2 - Software systems are increasingly relying on deep learning components, due to their remarkable capability of identifying complex data patterns and powering intelligent behaviour. A core enabler of this change in software development is the availability of easy-to-use deep learning libraries. Libraries like PyTorch and TensorFlow empower a large variety of intelligent systems, offering a multitude of algorithms and configuration options, applicable to numerous domains of systems. However, bugs in those popular deep learning libraries also may have dire consequences for the quality of systems they enable; thus, it is important to understand how bugs are identified and fixed in those libraries.Inspired by a study of Jia et al., which investigates the bug identification and fixing process at TensorFlow, we characterize bugs in the PyTorch library, a very popular deep learning framework. We investigate the causes and symptoms of bugs identified during PyTorch's development, and assess their locality within the project, and extract patterns of bug fixes. Our results highlight that PyTorch bugs are more like traditional software projects bugs, than related to deep learning characteristics. Finally, we also compare our results with the study on TensorFlow, highlighting similarities and differences across the bug identification and fixing process.
AB - Software systems are increasingly relying on deep learning components, due to their remarkable capability of identifying complex data patterns and powering intelligent behaviour. A core enabler of this change in software development is the availability of easy-to-use deep learning libraries. Libraries like PyTorch and TensorFlow empower a large variety of intelligent systems, offering a multitude of algorithms and configuration options, applicable to numerous domains of systems. However, bugs in those popular deep learning libraries also may have dire consequences for the quality of systems they enable; thus, it is important to understand how bugs are identified and fixed in those libraries.Inspired by a study of Jia et al., which investigates the bug identification and fixing process at TensorFlow, we characterize bugs in the PyTorch library, a very popular deep learning framework. We investigate the causes and symptoms of bugs identified during PyTorch's development, and assess their locality within the project, and extract patterns of bug fixes. Our results highlight that PyTorch bugs are more like traditional software projects bugs, than related to deep learning characteristics. Finally, we also compare our results with the study on TensorFlow, highlighting similarities and differences across the bug identification and fixing process.
KW - Bug Analysis
KW - Deep Learning
KW - Empirical Study
KW - PyTorch
KW - Software Library Defect
UR - http://www.scopus.com/inward/record.url?scp=85181538300&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85181538300&partnerID=8YFLogxK
U2 - 10.1109/ICSME58846.2023.00031
DO - 10.1109/ICSME58846.2023.00031
M3 - Conference contribution
AN - SCOPUS:85181538300
T3 - Proceedings - 2023 IEEE International Conference on Software Maintenance and Evolution, ICSME 2023
SP - 220
EP - 231
BT - Proceedings - 2023 IEEE International Conference on Software Maintenance and Evolution, ICSME 2023
PB - Institute of Electrical and Electronics Engineers Inc.
Y2 - 1 October 2023 through 6 October 2023
ER -