HackerPapers

arXiv:1309.0238cs.LG

API design for machine learning software: experiences from the scikit-learn project

Lars Buitinck, Gilles Louppe, Mathieu Blondel, Fabian Pedregosa, Andreas Mueller, Olivier Grisel, Vlad Niculae, Peter Prettenhofer, Alexandre Gramfort, Jaques Grobler, Robert Layton, Jake Vanderplas, Arnaud Joly, Brian Holt, Gaël Varoquaux

Early discovery. Linked by one identifiable commenter. This paper is outside the main ranking; a mention is not an endorsement.

Abstract

Scikit-learn is an increasingly popular machine learning li- brary. Written in Python, it is designed to be simple and efficient, accessible to non-experts, and reusable in various contexts. In this paper, we present and discuss our design choices for the application programming interface (API) of the project. In particular, we describe the simple and elegant interface shared by all learning and processing units in the library and then discuss its advantages in terms of composition and reusability. The paper also comments on implementation details specific to the Python ecosystem and analyzes obstacles faced by users and developers of the library.

arXiv comments
Journal reference
European Conference on Machine Learning and Principles and Practices of Knowledge Discovery in Databases (2013)
DOI
Subjects
cs.LGMachine Learning cs.MSMathematical Software

On Hacker News

Linked by 1 identifiable commenter in 1 comment across 1 thread, from Nov 2025 to Nov 2025. Found in 2 HN submissions from Nov 2018 to Mar 2019. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments1 thread

Submitted to Hacker News

  • Show HN: Machine Learning on JVM or a piece of cake

    Hello, people of HN. Let me first say that this post is about promoting an open source project which I've been working on for the past 10 months or so. I'm leaving it here with hopes of getting in touch with other devs who might be interested in machine learning, Scala or both. Those of you who have stumbled upon ML before will know that Python is the go-to language for data-related things. It has high-quality libraries for analysis, modeling, and visualization. scikit-learn is a notable…

  • API design for machine learning software: experiences from the sk-learn project

Connected through shared HN threads, not inferred similarity or a recommendation.