Improving the Learnability of Machine Learning APIs by Semi-Automated API Wrapping
Lars Reimann, G\"unter Kniesel-W\"unsche

TL;DR
This paper explores enhancing the learnability of machine learning APIs, specifically scikit-learn, by analyzing usage patterns and applying semi-automated wrapping to improve usability without losing expressiveness.
Contribution
It introduces a semi-automated API wrapping approach to simplify ML APIs, based on empirical analysis of scikit-learn's usage by the Kaggle community.
Findings
Identification of unused API parts that can be eliminated
Design improvements for usability in remaining API parts
Implementation of semi-automated API wrapping
Abstract
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.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
