Insights on the Use of Software Design Principles in Machine Learning Pipelines
摘要
The rapid expansion of Artificial Intelligence has driven a surge in the development of Machine Learning (ML) pipelines, essential for constructing and maintaining ML models. Despite the growing recognition of the importance of high-quality ML pipelines, there is limited actionable guidance on improving pipelines quality at the implementation level. The Object-Oriented (OO) paradigm and software design principles have been used in software engineering to enhance software system quality. In this context, this work explores the coverage of existing ML pipelines in relation to OO concepts and software design principles. Our findings reveal a limited use of OO mechanisms and minimal adherence to software design principles. Specifically, issues such as poor code organization and deficient levels of coupling and cohesion were observed. Our results can shed some light on the development of strategies to overcome these deficiencies for improving ML pipelines quality.