Share your thoughts, 1 month free Claude Pro on usSee more
WorkDL logo mark

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

About

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.

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\"el Varoquaux• 2013

Related benchmarks

TaskDatasetResultRank
Image ClassificationCIFAR-100 (test)--
3518
Image ClassificationCIFAR-10 (test)--
906
Image ClassificationSVHN (test)--
470
Minimum Cost Vertex CoverPDH Real-life (test)
Mean Regret6.1
20
Minimum Cost Vertex CoverPOLSKA Artificial (test)
Mean Regret115.7
20
Minimum Cost Vertex CoverPDH Artificial (test)
Mean Regret55.15
20
Minimum Cost Vertex CoverPOLSKA Real-life (test)
Mean Regret3.09
20
Minimum Cost Flow Problem (MCFP)USANet Artificial Size 300
Mean Regret1.71e+3
10
Minimum Cost Flow Problem (MCFP)GÉANT Artificial Size 300
Mean Regret743.2
10
Minimum Cost Flow Problem (MCFP)USANet Real-life Size 100
Mean Regret177.6
10
Showing 10 of 17 rows

Other info

Follow for update