中文

面向 ML 与非 ML Python 项目的性能气味:一项比较研究

软件工程 2025-04-30 v1

摘要

Python 广泛应用于各种领域,尤其是机器学习(ML)和传统软件项目中。尽管 Python 功能多样,但仍易受性能气味的影响,即次优编码实践可能降低应用程序效率。本研究提供了 ML 与非 ML 项目之间性能气味的比较分析,旨在评估这些不效率的发生情况,同时探讨其在 ML 管线各阶段的分布情况。为此,我们对 300 个基于 Python 的 GitHub 项目进行了实证研究,项目分布在 ML 与非 ML 项目之间,依据 RIdiom 工具对性能气味进行分类。我们的结果表明,ML 项目更容易受到性能气味的影响,可能是由于 ML 工作流程的计算和数据密集性所致。我们还观察到,ML 管线中的性能气味主要影响数据处理阶段。然而,这些气味在模型部署阶段的存在表明,这些气味并非仅限于管线的早期阶段。我们的发现为开发人员提供了可操作的见解,强调针对 ML 项目中常见的气味进行针对性优化的重要性。此外,本研究强调需要针对 ML 项目的独特特征制定性能优化策略,尤其关注受性能气味影响最大的管线阶段。

关键词

引用

@article{arxiv.2504.20224,
  title  = {Performance Smells in ML and Non-ML Python Projects: A Comparative Study},
  author = {François Belias and Leuson Da Silva and Foutse Khomh and Cyrine Zid},
  journal= {arXiv preprint arXiv:2504.20224},
  year   = {2025}
}