A Software Engineering Perspective on Engineering Machine Learning
Systems: State of the Art and Challenges
- URL: http://arxiv.org/abs/2012.07919v2
- Date: Sun, 2 May 2021 15:36:40 GMT
- Title: A Software Engineering Perspective on Engineering Machine Learning
Systems: State of the Art and Challenges
- Authors: G\"orkem Giray
- Abstract summary: Advancements in machine learning (ML) lead to a shift from the traditional view of software development, where algorithms are hard-coded by humans, to ML systems materialized through learning from data.
We need to revisit our ways of developing software systems and consider the particularities required by these new types of systems.
- Score: 0.0
- License: http://creativecommons.org/licenses/by-sa/4.0/
- Abstract: Context: Advancements in machine learning (ML) lead to a shift from the
traditional view of software development, where algorithms are hard-coded by
humans, to ML systems materialized through learning from data. Therefore, we
need to revisit our ways of developing software systems and consider the
particularities required by these new types of systems. Objective: The purpose
of this study is to systematically identify, analyze, summarize, and synthesize
the current state of software engineering (SE) research for engineering ML
systems. Method: I performed a systematic literature review (SLR). I
systematically selected a pool of 141 studies from SE venues and then conducted
a quantitative and qualitative analysis using the data extracted from these
studies. Results: The non-deterministic nature of ML systems complicates all SE
aspects of engineering ML systems. Despite increasing interest from 2018
onwards, the results reveal that none of the SE aspects have a mature set of
tools and techniques. Testing is by far the most popular area among
researchers. Even for testing ML systems, engineers have only some tool
prototypes and solution proposals with weak experimental proof. Many of the
challenges of ML systems engineering were identified through surveys and
interviews. Researchers should conduct experiments and case studies, ideally in
industrial environments, to further understand these challenges and propose
solutions. Conclusion: The results may benefit (1) practitioners in foreseeing
the challenges of ML systems engineering; (2) researchers and academicians in
identifying potential research questions; and (3) educators in designing or
updating SE courses to cover ML systems engineering.
Related papers
- A Systematic Literature Review on the Use of Machine Learning in Software Engineering [0.0]
The study was carried out following the objective and the research questions to explore the current state of the art in applying machine learning techniques in software engineering processes.
The review identifies the key areas within software engineering where ML has been applied, including software quality assurance, software maintenance, software comprehension, and software documentation.
arXiv Detail & Related papers (2024-06-19T23:04:27Z) - Model-driven Engineering for Machine Learning Components: A Systematic
Literature Review [8.810090413018798]
We analyzed studies with respect to several areas of interest and identified the key motivations behind using MDE4ML.
We also discuss the gaps in existing literature and provide recommendations for future work.
arXiv Detail & Related papers (2023-11-01T04:29:47Z) - Machine Learning for Software Engineering: A Tertiary Study [13.832268599253412]
Machine learning (ML) techniques increase the effectiveness of software engineering (SE) lifecycle activities.
We systematically collected, quality-assessed, summarized, and categorized 83 reviews in ML for SE published between 2009-2022, covering 6,117 primary studies.
The SE areas most tackled with ML are software quality and testing, while human-centered areas appear more challenging for ML.
arXiv Detail & Related papers (2022-11-17T09:19:53Z) - Tiny Robot Learning: Challenges and Directions for Machine Learning in
Resource-Constrained Robots [57.27442333662654]
Machine learning (ML) has become a pervasive tool across computing systems.
Tiny robot learning is the deployment of ML on resource-constrained low-cost autonomous robots.
Tiny robot learning is subject to challenges from size, weight, area, and power (SWAP) constraints.
This paper gives a brief survey of the tiny robot learning space, elaborates on key challenges, and proposes promising opportunities for future work in ML system design.
arXiv Detail & Related papers (2022-05-11T19:36:15Z) - Enabling Automated Machine Learning for Model-Driven AI Engineering [60.09869520679979]
We propose a novel approach to enable Model-Driven Software Engineering and Model-Driven AI Engineering.
In particular, we support Automated ML, thus assisting software engineers without deep AI knowledge in developing AI-intensive systems.
arXiv Detail & Related papers (2022-03-06T10:12:56Z) - Technology Readiness Levels for Machine Learning Systems [107.56979560568232]
Development and deployment of machine learning systems can be executed easily with modern tools, but the process is typically rushed and means-to-an-end.
We have developed a proven systems engineering approach for machine learning development and deployment.
Our "Machine Learning Technology Readiness Levels" framework defines a principled process to ensure robust, reliable, and responsible systems.
arXiv Detail & Related papers (2021-01-11T15:54:48Z) - Software engineering for artificial intelligence and machine learning
software: A systematic literature review [6.681725960709127]
This study aims to investigate how software engineering has been applied in the development of AI/ML systems.
Main challenges faced by professionals are in areas of testing, AI software quality, and data management.
arXiv Detail & Related papers (2020-11-07T11:06:28Z) - Machine Learning in Nano-Scale Biomedical Engineering [77.75587007080894]
We review the existing research regarding the use of machine learning in nano-scale biomedical engineering.
The main challenges that can be formulated as ML problems are classified into the three main categories.
For each of the presented methodologies, special emphasis is given to its principles, applications, and limitations.
arXiv Detail & Related papers (2020-08-05T15:45:54Z) - Technology Readiness Levels for AI & ML [79.22051549519989]
Development of machine learning systems can be executed easily with modern tools, but the process is typically rushed and means-to-an-end.
Engineering systems follow well-defined processes and testing standards to streamline development for high-quality, reliable results.
We propose a proven systems engineering approach for machine learning development and deployment.
arXiv Detail & Related papers (2020-06-21T17:14:34Z) - Machine Learning for Software Engineering: A Systematic Mapping [73.30245214374027]
The software development industry is rapidly adopting machine learning for transitioning modern day software systems towards highly intelligent and self-learning systems.
No comprehensive study exists that explores the current state-of-the-art on the adoption of machine learning across software engineering life cycle stages.
This study introduces a machine learning for software engineering (MLSE) taxonomy classifying the state-of-the-art machine learning techniques according to their applicability to various software engineering life cycle stages.
arXiv Detail & Related papers (2020-05-27T11:56:56Z) - Engineering AI Systems: A Research Agenda [9.84673609667263]
We provide a conceptualization of the typical evolution patterns that companies experience when employing machine learning.
The main contribution of the paper is a research agenda for AI engineering that provides an overview of the key engineering challenges surrounding ML solutions.
arXiv Detail & Related papers (2020-01-16T20:29:48Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.