scikit-learn

Scikit-learn (formerly scikits.learn and also known as sklearn) is a free software machine learning library for the Python programming language.[3] It features various classification, regression and clustering algorithms including support vector machines, random forests, gradient boosting, k-means and DBSCAN, and is designed to interoperate with the Python numerical and scientific libraries NumPy and SciPy.

scikit-learn
Original author(s)David Cournapeau
Initial releaseJune 2007 (2007-06)
Stable release
0.24.0[1] / 22 December 2020 (22 December 2020)
Repository
Written inPython, Cython, C and C++ [2]
Operating systemLinux, macOS, Windows
TypeLibrary for machine learning
LicenseNew BSD License
Websitescikit-learn.org

Overview

The scikit-learn project started as scikits.learn, a Google Summer of Code project by David Cournapeau. Its name stems from the notion that it is a "SciKit" (SciPy Toolkit), a separately-developed and distributed third-party extension to SciPy.[4] The original codebase was later rewritten by other developers. In 2010 Fabian Pedregosa, Gael Varoquaux, Alexandre Gramfort and Vincent Michel, all from the French Institute for Research in Computer Science and Automation in Rocquencourt, France, took leadership of the project and made the first public release on February the 1st 2010.[5] Of the various scikits, scikit-learn as well as scikit-image were described as "well-maintained and popular" in November 2012.[6] Scikit-learn is one of the most popular machine learning libraries on GitHub.[7]

Implementation

Scikit-learn is largely written in Python, and uses numpy extensively for high-performance linear algebra and array operations. Furthermore, some core algorithms are written in Cython to improve performance. Support vector machines are implemented by a Cython wrapper around LIBSVM; logistic regression and linear support vector machines by a similar wrapper around LIBLINEAR. In such cases, extending these methods with Python may not be possible.

Scikit-learn integrates well with many other Python libraries, such as matplotlib and plotly for plotting, numpy for array vectorization, pandas dataframes, scipy, and many more.

Version history

Scikit-learn was initially developed by David Cournapeau as a Google summer of code project in 2007. Later Matthieu Brucher joined the project and started to use it as a part of his thesis work. In 2010 INRIA, the French Institute for Research in Computer Science and Automation, got involved and the first public release (v0.1 beta) was published in late January 2010.

  • Jan 2021. scikit-learn 0.24[8]
  • May 2020. scikit-learn 0.23.0[9]
  • December 2019. scikit-learn 0.22.0[10]
  • May 2019. scikit-learn 0.21.0[11]
  • September 2018. scikit-learn 0.20.0[12]
  • July 2017. scikit-learn 0.19.0
  • September 2016. scikit-learn 0.18.0
  • November 2015. scikit-learn 0.17.0[13]
  • March 2015. scikit-learn 0.16.0[13]
  • July 2014. scikit-learn 0.15.0[13]
  • August 2013. scikit-learn 0.14[13]


The timeline of releases is depicted in the following chart.

See also

References

  1. "Release 0.24.0". 22 December 2020. Retrieved 23 December 2020.
  2. "The scikit-learn Open Source Project on Open Hub: Languages Page". Open Hub. Retrieved 14 July 2018.
  3. Fabian Pedregosa; Gaël Varoquaux; Alexandre Gramfort; Vincent Michel; Bertrand Thirion; Olivier Grisel; Mathieu Blondel; Peter Prettenhofer; Ron Weiss; Vincent Dubourg; Jake Vanderplas; Alexandre Passos; David Cournapeau; Matthieu Perrot; Édouard Duchesnay (2011). "Scikit-learn: Machine Learning in Python". Journal of Machine Learning Research. 12: 2825–2830.
  4. Dreijer, Janto. "scikit-learn".
  5. "About us — scikit-learn 0.20.1 documentation". scikit-learn.org.
  6. Eli Bressert (2012). SciPy and NumPy: an overview for developers. O'Reilly. p. 43.
  7. "The State of the Octoverse: machine learning". The GitHub Blog. GitHub. 2019-01-24. Retrieved 2019-10-17.
  8. scikit-learn: A set of python modules for machine learning and data mining, retrieved 2021-02-08
  9. "Release History - 0.23.0 documentation". scikit-learn. Retrieved 7 June 2020.
  10. "Release History - 0.22.0 documentation". scikit-learn. Retrieved 7 June 2020.
  11. "Release History - 0.21.0 documentation". scikit-learn. Retrieved 5 May 2019.
  12. "Release History - 0.20.0 documentation". scikit-learn. Retrieved 6 November 2018.
  13. "Release history — scikit-learn 0.19.dev0 documentation". scikit-learn.org. Retrieved 2017-02-27.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.