Context. The adoption of Machine Learning (ML)--enabled systems is steadily increasing. Nevertheless, there is a shortage of ML-specific quality assurance approaches, possibly because of the limited knowledge of how quality-related concerns emerge and evolve in ML-enabled systems. Objective. We aim to investigate the emergence and evolution of specific types of quality-related concerns known as ML-specific code smells, i.e., sub-optimal implementation solutions applied on ML pipelines that may significantly decrease both the quality and maintainability of ML-enabled systems. More specifically, we present a plan to study ML-specific code smells by empirically analyzing (i) their prevalence in real ML-enabled systems, (ii) how they are introduced and removed, and (iii) their survivability. Method. We will conduct an exploratory study, mining a large dataset of ML-enabled systems and analyzing over 400k commits about 337 projects. We will track and inspect the introduction and evolution of ML smells through CodeSmile, a novel ML smell detector that we will build to enable our investigation and to detect ML-specific code smells.
翻译:背景. 采用机器学习赋能的系统正在稳步增长。然而,缺乏针对机器学习的质量保证方法,这可能是由于对机器学习赋能系统中质量相关问题如何出现和演变的了解有限所致。目标. 我们旨在研究特定类型的质量相关问题(即机器学习特定代码异味)的出现和演变,这些代码异味是应用于机器学习流水线的次优实现解决方案,可能显著降低机器学习赋能系统的质量和可维护性。更具体地说,我们提出了一项通过实证分析来研究机器学习特定代码异味的计划,包括:(i) 它们在真实机器学习赋能系统中的普遍性,(ii) 它们如何被引入和消除,以及 (iii) 它们的存活率。方法. 我们将进行一项探索性研究,挖掘一个包含大量机器学习赋能系统数据集,并分析涉及337个项目的超过40万次提交。我们将通过CodeSmile(一种我们将构建的新型机器学习异味检测器)来追踪和检查机器学习异味的引入和演变,该检测器旨在支持我们的研究并检测机器学习特定的代码异味。