Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

scikit-learn

From Wikipedia, the free encyclopedia
Python library for machine learning
scikit-learn
Original author(s)David Cournapeau
Initial releaseJune 2007; 17 years ago (2007-06)
Stable release
1.6.1[1] / 10 January 2025; 3 months ago (10 January 2025)
Repository
Written inPython,Cython,C andC++[2]
Operating systemLinux,macOS,Windows
TypeLibrary formachine learning
LicenseNew BSD License
Websitescikit-learn.org

scikit-learn (formerlyscikits.learn and also known assklearn) is afree and open-sourcemachine learninglibrary for thePythonprogramming language.[3]It features variousclassification,regression andclusteringalgorithms includingsupport-vector machines,random forests,gradient boosting,k-means andDBSCAN, and is designed to interoperate with thePython numerical and scientific librariesNumPy andSciPy. Scikit-learn is aNumFOCUS fiscally sponsored project.[4]

Overview

[edit]

The scikit-learn project started as scikits.learn, aGoogle Summer of Code project by Frenchdata scientistDavid Cournapeau. The name of the project stems from the notion that it is a "SciKit" (SciPy Toolkit), a separately developed and distributed third-party extension toSciPy.[5] The originalcodebase was later rewritten by otherdevelopers.[who?] In 2010, contributors Fabian Pedregosa, Gaël Varoquaux, Alexandre Gramfort and Vincent Michel, from theFrench Institute for Research in Computer Science and Automation inSaclay,France, took leadership of the project and released the first public version of the library on February 1, 2010.[6] In November 2012, scikit-learn as well asscikit-image were described as two of the "well-maintained and popular" scikits libraries[update].[7] In 2019, it was noted that scikit-learn is one of the most popular machine learning libraries onGitHub.[8]

Features

[edit]
  • Large catalogue of well-established machine learning algorithms and data pre-processing methods (i.e.feature engineering)
  • Utility methods for common data-science tasks, such as splitting data intotrain and test sets,cross-validation andgrid search
  • Consistent way of running machine learning models (estimator.fit() andestimator.predict()), which libraries can implement
  • Declarative way of structuring a data science process (thePipeline), including data pre-processing and model fitting

Examples

[edit]

Fitting arandom forest classifier:

>>>fromsklearn.ensembleimportRandomForestClassifier>>>classifier=RandomForestClassifier(random_state=0)>>>X=[[1,2,3],# 2 samples, 3 features...[11,12,13]]>>>y=[0,1]# classes of each sample>>>classifier.fit(X,y)RandomForestClassifier(random_state=0)

Implementation

[edit]

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

scikit-learn integrates well with many other Python libraries, such asMatplotlib andplotly for plotting,NumPy for array vectorization,Pandas dataframes,SciPy, and many more.

Version history

[edit]

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

  • August 2013. scikit-learn 0.14[9]
  • July 2014. scikit-learn 0.15.0[9]
  • March 2015. scikit-learn 0.16.0[9]
  • November 2015. scikit-learn 0.17.0[9]
  • September 2016. scikit-learn 0.18.0
  • July 2017. scikit-learn 0.19.0
  • September 2018. scikit-learn 0.20.0[10]
  • May 2019. scikit-learn 0.21.0[11]
  • December 2019. scikit-learn 0.22[12]
  • May 2020. scikit-learn 0.23.0[13]
  • Jan 2021. scikit-learn 0.24[14]
  • September 2021. scikit-learn 1.0.0[15]
  • October 2021. scikit-learn 1.0.1[16]
  • December 2021. scikit-learn 1.0.2[17]
  • May 2022. scikit-learn 1.1.0[18]
  • May 2022. scikit-learn 1.1.1[19]
  • August 2022. scikit-learn 1.1.2[20]
  • October 2022. scikit-learn 1.1.3[21]
  • December 2022. scikit-learn 1.2.0[22]
  • January 2023. scikit-learn 1.2.1[23]
  • March 2023. scikit-learn 1.2.2[24]

Awards

[edit]
  • 2019 Inria-French Academy of Sciences-Dassault Systèmes Innovation Prize[25]
  • 2022 Open Science Award for Open Source Research Software[26]

scikit-learn alternatives

[edit]

References

[edit]
  1. ^"Release 1.6.1". 10 January 2025. Retrieved29 January 2025.
  2. ^"The scikit-learn Open Source Project on Open Hub: Languages Page".Open Hub. Retrieved14 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.arXiv:1201.0490.Bibcode:2011JMLR...12.2825P.
  4. ^"NumFOCUS Sponsored Projects". NumFOCUS. Retrieved2021-10-25.
  5. ^Dreijer, Janto."scikit-learn".
  6. ^"About us — scikit-learn 0.20.1 documentation".scikit-learn.org.
  7. ^Eli Bressert (2012).SciPy and NumPy: an overview for developers. O'Reilly. p. 43.ISBN 978-1-4493-6162-4.
  8. ^"The State of the Octoverse: machine learning".The GitHub Blog.GitHub. 2019-01-24. Retrieved2019-10-17.
  9. ^abcd"Release history — scikit-learn 0.19.dev0 documentation".scikit-learn.org. Retrieved2017-02-27.
  10. ^"Release History - 0.20.0 documentation".scikit-learn. Retrieved6 November 2018.
  11. ^"Release History - 0.21.0 documentation".scikit-learn. Retrieved5 May 2019.
  12. ^"Release History - 0.22 documentation".scikit-learn. Retrieved7 June 2020.
  13. ^"Release History - 0.23.0 documentation".scikit-learn. Retrieved7 June 2020.
  14. ^"Release History - 0.24 documentation",scikit-learn, retrieved2021-02-08
  15. ^"Release History - 1.0.0 documentation".scikit-learn.
  16. ^"Release History - 1.0.1 documentation".scikit-learn.
  17. ^"Release History - 1.0.2 documentation".scikit-learn.
  18. ^"Release History - 1.1.0 documentation".scikit-learn.
  19. ^"Release History - 1.1.1 documentation".scikit-learn.
  20. ^"Release History - 1.1.2 documentation".scikit-learn.
  21. ^"Release History - 1.1.3 documentation".scikit-learn.
  22. ^"Release History - 1.2.0 documentation".scikit-learn.
  23. ^"Release History - 1.2.1 documentation".scikit-learn.
  24. ^"Release History - 1.2.2 documentation".scikit-learn.
  25. ^"The 2019 Inria-French Academy of Sciences-Dassault Systèmes Innovation Prize : scikit-learn , a success story for machine learning free software | Inria".www.inria.fr. Retrieved2025-03-19.
  26. ^Badolato, Anne-Marie (2022-02-07)."Open Science Awards for Open Source Research Software".Ouvrir la Science. Retrieved2025-03-19.

External links

[edit]
Scientific software inPython
Differentiable computing
General
Hardware
Software libraries
Retrieved from "https://en.wikipedia.org/w/index.php?title=Scikit-learn&oldid=1286024941"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp