DocumentCode :
588636
Title :
An Empirical Study of Bugs in Machine Learning Systems
Author :
Thung, Ferdian ; Shaowei Wang ; Lo, Daniel ; Lingxiao Jiang
Author_Institution :
Sch. of Inf. Syst., Singapore Manage. Univ., Singapore, Singapore
fYear :
2012
fDate :
27-30 Nov. 2012
Firstpage :
271
Lastpage :
280
Abstract :
Many machine learning systems that include various data mining, information retrieval, and natural language processing code and libraries are used in real world applications. Search engines, internet advertising systems, product recommendation systems are sample users of these algorithm-intensive code and libraries. Machine learning code and toolkits have also been used in many recent studies on software mining and analytics that aim to automate various software engineering tasks. With the increasing number of important applications of machine learning systems, the reliability of such systems is also becoming increasingly important. A necessary step for ensuring reliability of such systems is to understand the features and characteristics of bugs occurred in the systems. A number of studies have investigated bugs and fixes in various software systems, but none focuses on machine learning systems. Machine learning systems are unique due to their algorithm-intensive nature and applications to potentially large-scale data, and thus deserve a special consideration. In this study, we fill the research gap by performing an empirical study on the bugs in machine learning systems. We analyze three systems, Apache Mahout, Lucene, and OpenNLP, which are data mining, information retrieval, and natural language processing tools respectively. We look into their bug databases and code repositories, analyze a sample set of bugs and corresponding fixes, and label the bugs into various categories. Our study finds that 22.6% of the bugs belong to the algorithm/method category, 15.6% of the bugs belong to the non-functional category, and 13% of the bugs belong to the assignment/initialization category. We also report the relationship between bug categories and bug severities, the time and effort needed to fix the bugs, and bug impacts. We highlight several bug categories that deserve attention in future research.
Keywords :
data mining; information retrieval; learning (artificial intelligence); natural language processing; program debugging; software reliability; Apache Mahout; Internet advertising systems; Lucene; OpenNLP; algorithm-intensive code; algorithm-intensive nature; bug categories; bug databases; code repositories; data mining; information retrieval; machine learning systems; natural language processing code; recommendation systems; search engines; software engineering tasks; software mining; system reliability; Software reliability;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Reliability Engineering (ISSRE), 2012 IEEE 23rd International Symposium on
Conference_Location :
Dallas, TX
ISSN :
1071-9458
Print_ISBN :
978-1-4673-4638-2
Type :
conf
DOI :
10.1109/ISSRE.2012.22
Filename :
6405375
Link To Document :
بازگشت