Code Smells for Machine Learning Applications

Conference Paper (2022)
Author(s)

Haiyin Zhang (ING Bank)

Luís Cruz (TU Delft - Software Engineering)

Arie Van Deursen (TU Delft - Software Technology)

Department
Software Technology
Copyright
© 2022 H. Zhang, Luis Cruz, A. van Deursen
DOI related publication
https://doi.org/10.1145/3522664.3528620
More Info
expand_more
Publication Year
2022
Language
English
Copyright
© 2022 H. Zhang, Luis Cruz, A. van Deursen
Department
Software Technology
Bibliographical Note
Green Open Access added to TU Delft Institutional Repository ‘You share, we take care!’ – Taverne project https://www.openaccess.nl/en/you-share-we-take-care Otherwise as indicated in the copyright section: the publisher is the copyright holder of this work and the author uses the Dutch legislation to make this work public. @en
Pages (from-to)
217-228
ISBN (electronic)
978-1-4503-9275-4
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

The popularity of machine learning has wildly expanded in recent years. Machine learning techniques have been heatedly studied in academia and applied in the industry to create business value. However, there is a lack of guidelines for code quality in machine learning applications. In particular, code smells have rarely been studied in this domain. Although machine learning code is usually integrated as a small part of an overarching system, it usually plays an important role in its core functionality. Hence ensuring code quality is quintessential to avoid issues in the long run. This paper proposes and identifies a list of 22 machine learning-specific code smells collected from various sources, including papers, grey literature, GitHub commits, and Stack Overflow posts. We pinpoint each smell with a description of its context, potential issues in the long run, and proposed solutions. In addition, we link them to their respective pipeline stage and the evidence from both academic and grey literature. The code smell catalog helps data scientists and developers produce and maintain high-quality machine learning application code. ACM Reference Format: Haiyin Zhang, Luís Cruz, and Arie van Deursen. 2022. Code Smells for Machine Learning Applications. In 1st Conference on AI Engineering - Software Engineering for AI (CAIN'22), May 16-24, 2022, Pittsburgh, PA, USA. ACM, New York, NY, USA, 12 pages. https://doi.org/10.1145/3522664.3528620

Files

Code_Smells_for_Machine_Learni... (pdf)
(pdf | 0.414 Mb)
- Embargo expired in 02-01-2023
License info not available