# Improving the Learnability of Machine Learning APIs by Semi-Automated API Wrapping

arXiv: https://arxiv.org/abs/2203.15491 · HTML: https://mlsanity.com/paper/2203.15491/

## Key facts

- Cited by 1 papers in the map (data through 14 Oct 2026).
- Builds on 4 of its 29 references that are in the map.
- First posted on arXiv 29 Mar 2022.

## Builds on (most cited first, 4 of 4)

- [MLlib: Machine Learning in Apache Spark](https://mlsanity.com/paper/1505.06807/) (2015)
- [Code Smells and Refactoring: A Tertiary Systematic Review of Challenges and Observations](https://mlsanity.com/paper/2004.10777/) (2020)
- [Simple-ML: Towards a Framework for Semantic Data Analytics Workflows](https://mlsanity.com/paper/1909.05859/) (2019)
- [Designing Machine Learning Toolboxes: Concepts, Principles and Patterns](https://mlsanity.com/paper/2101.04938/) (2021)

## Built on by (most cited first, 1 of 1)

- [Safe-DS: A Domain Specific Language to Make Data Science Safe](https://mlsanity.com/paper/2302.14548/) (2023)

## Abstract (arXiv)

A major hurdle for students and professional software developers who want to enter the world of machine learning (ML), is mastering not just the scientific background but also the available ML APIs. Therefore, we address the challenge of creating APIs that are easy to learn and use, especially by novices. However, it is not clear how this can be achieved without compromising expressiveness. We investigate this problem for scikit-learn, a widely used ML API. In this paper, we analyze its use by the Kaggle community, identifying unused and apparently useless parts of the API that can be eliminated without affecting client programs. In addition, we discuss usability issues in the remaining parts, propose related design improvements and show how they can be implemented by semi-automated wrapping of the existing third-party API.
