Context: An increasing demand is observed in various domains to employ Machine Learning (ML) for solving complex problems. ML models are implemented as software components and deployed in Machine Learning Software Systems (MLSSs). Problem: There is a strong need for ensuring the serving quality of MLSSs. False or poor decisions of such systems can lead to malfunction of other systems, significant financial losses, or even threats to human life. The quality assurance of MLSSs is considered a challenging task and currently is a hot research topic. Objective: This paper aims to investigate the characteristics of real quality issues in MLSSs from the viewpoint of practitioners. This empirical study aims to identify a catalog of quality issues in MLSSs. Method: We conduct a set of interviews with practitioners/experts, to gather insights about their experience and practices when dealing with quality issues. We validate the identified quality issues via a survey with ML practitioners. Results: Based on the content of 37 interviews, we identified 18 recurring quality issues and 24 strategies to mitigate them. For each identified issue, we describe the causes and consequences according to the practitioners' experience. Conclusion: We believe the catalog of issues developed in this study will allow the community to develop efficient quality assurance tools for ML models and MLSSs. A replication package of our study is available on our public GitHub repository.
翻译:背景:各领域日益需要采用机器学习(ML)解决复杂问题。ML模型被实现为软件组件,并部署于机器学习软件系统(MLSSs)中。问题:确保MLSSs的服务质量具有强烈必要性。此类系统的错误或欠佳决策可能导致其他系统故障、重大经济损失甚至威胁人类生命安全。MLSSs的质量保证被视为一项具有挑战性的任务,目前是研究热点。目标:本文旨在从从业者视角探究MLSSs中真实质量问题的特征。本实证研究旨在整理MLSSs的质量问题目录。方法:我们对从业者/专家进行了一系列访谈,收集他们在处理质量问题时的经验与实践洞察。随后通过面向ML从业者的问卷调查验证所识别的质量问题。结果:基于37次访谈内容,我们识别出18个反复出现的质量问题及24种缓解策略。针对每个问题,我们根据从业者经验描述了其成因与后果。结论:我们相信本研究开发的问题目录将有助于学术界为ML模型和MLSSs开发高效的质量保证工具。本研究的可复现数据包已公开于我们的GitHub仓库。