Towards a Change Taxonomy for Machine Learning Systems
Machine Learning (ML) research publications commonly provide open-source implementations on GitHub, allowing their audience to replicate, validate, or even extend machine learning algorithms, data sets, and metadata. However, thus far little is known about the degree of collaboration activity happening on such ML research repositories, in particular regarding (1) the degree to which such repositories receive contributions from forks, (2) the nature of such contributions (i.e., the types of changes), and (3) the nature of changes that are not contributed back to forks, which might represent missed opportunities. In this paper, we empirically study contributions to 1,346 ML research repositories and their 67,369 forks, both quantitatively and qualitatively (by building on Hindle et al.'s seminal taxonomy of code changes). We found that while ML research repositories are heavily forked, only 9% of the forks made modifications to the forked repository. 42% of the latter sent changes to the parent repositories, half of which (52%) were accepted by the parent repositories. Our qualitative analysis on 539 contributed and 378 local (fork-only) changes, extends Hindle et al.'s taxonomy with one new top-level change category related to ML (Data), and 15 new sub-categories, including nine ML-specific ones (input data, output data, program data, sharing, change evaluation, parameter tuning, performance, pre-processing, model training). While the changes that are not contributed back by the forks mostly concern domain-specific customizations and local experimentation (e.g., parameter tuning), the origin ML repositories do miss out on a non-negligible 15.4% of Documentation changes, 13.6% of Feature changes and 11.4% of Bug fix changes. The findings in this paper will be useful for practitioners, researchers, toolsmiths, and educators.
Code (0)
등록된 구현이 없습니다.
Tasks
BIG-bench Machine LearningSimilar Papers 제목 키워드 기반
Shadow operator: Effective dynamic load change operation training in air separation processes based on industrial nonlinear MPC and Bloom's taxonomy
A novel human-machine interactive training method for dynamic load change operation in air separation processes (ASPs) is proposed. A shadow operator (SO) is developed in this method to train ASP operators through indust…
Model Predictive ControlAutomated Market Makers in Cryptoeconomic Systems: A Taxonomy and Archetypes
Designing automated market makers (AMMs) is crucial for decentralized token exchanges in cryptoeconomic systems. At the intersection of software engineering and economics, AMM design is complex and, if done incorrectly, …
Informed Machine Learning -- A Taxonomy and Survey of Integrating Knowledge into Learning Systems
Despite its great success, machine learning can have its limits when dealing with insufficient training data. A potential solution is the additional integration of prior knowledge into the training process which leads to…
BIG-bench Machine LearningGeneral ClassificationText2Node: a Cross-Domain System for Mapping Arbitrary Phrases to a Taxonomy
Electronic health record (EHR) systems are used extensively throughout the healthcare domain. However, data interchangeability between EHR systems is limited due to the use of different coding standards across systems. E…
Word EmbeddingsThreats, Vulnerabilities, and Controls of Machine Learning Based Systems: A Survey and Taxonomy
In this article, we propose the Artificial Intelligence Security Taxonomy to systematize the knowledge of threats, vulnerabilities, and security controls of machine-learning-based (ML-based) systems. We first classify th…