A Large-Scale Study of Model Integration in ML-Enabled Software Systems
The rise of machine learning (ML) and its embedding in systems has drastically changed the engineering of software-intensive systems. Traditionally, software engineering focuses on manually created artifacts such as source code and the process of creating them, as well as best practices for integrat...
Gespeichert in:
Hauptverfasser: | , , , |
---|---|
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | The rise of machine learning (ML) and its embedding in systems has
drastically changed the engineering of software-intensive systems.
Traditionally, software engineering focuses on manually created artifacts such
as source code and the process of creating them, as well as best practices for
integrating them, i.e., software architectures. In contrast, the development of
ML artifacts, i.e. ML models, comes from data science and focuses on the ML
models and their training data. However, to deliver value to end users, these
ML models must be embedded in traditional software, often forming complex
topologies. In fact, ML-enabled software can easily incorporate many different
ML models. While the challenges and practices of building ML-enabled systems
have been studied to some extent, beyond isolated examples, little is known
about the characteristics of real-world ML-enabled systems. Properly embedding
ML models in systems so that they can be easily maintained or reused is far
from trivial. We need to improve our empirical understanding of such systems,
which we address by presenting the first large-scale study of real ML-enabled
software systems, covering over 2,928 open source systems on GitHub. We
classified and analyzed them to determine their characteristics, as well as
their practices for reusing ML models and related code, and the architecture of
these systems. Our findings provide practitioners and researchers with insight
into practices for embedding and integrating ML models, bringing data science
and software engineering closer together. |
---|---|
DOI: | 10.48550/arxiv.2408.06226 |