# scikit-learn

> machine learning library for the Python programming language

**Wikidata**: [Q1026367](https://www.wikidata.org/wiki/Q1026367)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Scikit-learn)  
**Source**: https://4ort.xyz/entity/scikit-learn

## Summary
Scikit-learn is a free and open-source machine learning library specifically designed for the Python programming language. It provides various algorithms and statistical models that enable computer systems to perform tasks without explicit instructions. As a Python package, it is widely used for machine learning applications.

## Key Facts
*   **Classification:** Free software, software library, Python package
*   **Primary Use:** Machine learning
*   **Programming Languages:** Python, Cython
*   **Creator:** David Cournapeau
*   **License:** 3-clause BSD License
*   **Operating Systems:** Linux, Microsoft Windows
*   **Funded by:** Chan Zuckerberg Initiative (through the Essential Open Source Software for Science program grant)
*   **Awarded:** Open Science Award for Open Source Research Software (2022)
*   **Official Website:** https://scikit-learn.org
*   **Source Code Repository:** https://github.com/scikit-learn/scikit-learn

## FAQs
### Q: What is scikit-learn?
A: Scikit-learn is a free and open-source machine learning library for the Python programming language. It offers various algorithms and statistical models for machine learning tasks.

### Q: Who created scikit-learn?
A: Scikit-learn was initially created by David Cournapeau as a Google Summer of Code project in 2007.

### Q: What programming languages does scikit-learn use or support?
A: Scikit-learn is primarily written in Python and also utilizes Cython, a programming language compatible with Python, for performance-critical sections.

### Q: What license is scikit-learn released under?
A: Scikit-learn is distributed under the terms of the 3-clause BSD License, making it free software.

### Q: What operating systems does scikit-learn run on?
A: Scikit-learn is compatible with and runs on operating systems such as Linux and Microsoft Windows.

## Why It Matters
Scikit-learn holds significant importance in the field of machine learning by making advanced algorithms accessible to a broad audience of Python developers. As a free and open-source library, it democratizes access to powerful tools for data analysis, prediction, and pattern recognition, fostering innovation and collaboration within the scientific and engineering communities. Its comprehensive suite of machine learning models, coupled with its user-friendly interface, allows researchers, students, and professionals to implement complex machine learning workflows without needing to build algorithms from scratch. The library's reliance on established scientific computing libraries like NumPy and SciPy ensures efficiency and reliability. Furthermore, its recognition through funding from organizations like the Chan Zuckerberg Initiative and awards such as the Open Science Award underscores its critical role in advancing open science and reproducible research. Scikit-learn has become a de facto standard for machine learning in Python, enabling countless applications from academic research to industrial solutions.

## Notable For
*   Being a comprehensive, free, and open-source machine learning library for the Python programming language.
*   Its initial development by David Cournapeau as a Google Summer of Code project in 2007.
*   Being a recipient of the Open Science Award for Open Source Research Software in 2022.
*   Receiving funding support from the Chan Zuckerberg Initiative's Essential Open Source Software for Science program grant.
*   Its broad compatibility, running on Linux and Microsoft Windows, and being available through various package managers like PyPI, Debian, Arch Linux, and Gentoo.

## Body

### Overview
Scikit-learn is a machine learning library for the Python programming language. It is classified as a software library, a Python package, and free software. Its primary use is in machine learning, providing algorithms and statistical models for various tasks. The library is also known by aliases such as scikits.learn, sklearn, scikit, and scikit.learn.

### Development and Funding
Scikit-learn was initially created by David Cournapeau as a Google Summer of Code project in 2007. Key developers include David Cournapeau, Gaël Varoquaux, Olivier Grisel, Alexandre Gramfort, and Andreas Mueller. The project has received funding from the Chan Zuckerberg Initiative through its Essential Open Source Software for Science program grant. In 2022, scikit-learn was awarded the Open Science Award for Open Source Research Software.

### Technical Specifications
Scikit-learn is primarily written in Python and also uses Cython, a programming language compatible with Python, for performance optimization. It depends on other Python libraries, including NumPy, SciPy, joblib, and threadpoolctl. The library is distributed under the 3-clause BSD License.

Scikit-learn is designed to run on multiple operating systems, including Linux and Microsoft Windows.
Notable stable versions include:
*   0.20.3 (released 2019-03-02)
*   0.20.2 (released 2018-12-20)
*   0.20.1 (released 2018-11-25)
*   0.20.0 (released 2018-09-24)
*   0.19.2 (released 2018-11-22)
*   0.19.1 (released 2017-10-22)
*   0.18.1 (released 2016-11-15)
*   0.18 (released 2016-10-18)
*   0.17.1 (released 2016-04-17)
*   0.17.1-1 (released 2016-04-17)

### Related Entities and Integrations
Scikit-learn is related to the scientific study of machine learning. It integrates with other Python libraries like NumPy for numerical operations. It is available as a package on various systems, including PyPI (pypi_project: scikit-learn), Debian (python3-sklearn), Arch Linux (python-scikit-learn), Gentoo (sci-libs/scikits_learn, dev-python/scikit-learn, sci-libs/scikit-learn), FreeBSD (science/py-scikit-learn), OpenBSD (math/py-scikit-learn), openSUSE (python-scikit-learn), and MacPorts (py-scikit-learn). It also uses blmath and text2term, which are Python libraries.

### Resources
The official website for scikit-learn is https://scikit-learn.org. Its source code repository is hosted on GitHub at https://github.com/scikit-learn/scikit-learn. The project is described by the source "Scikit-learn: Machine Learning in Python".

## Schema Markup
```json
{
  "@context": "https://schema.org",
  "@type": "Thing",
  "name": "scikit-learn",
  "description": "Scikit-learn is a free and open-source machine learning library for the Python programming language.",
  "url": "https://scikit-learn.org",
  "sameAs": ["https://en.wikipedia.org/wiki/Scikit-learn"],
  "additionalType": "https://schema.org/SoftwareLibrary"
}

## References

1. [Source](https://www.ouvrirlascience.fr/remise-des-prix-science-ouverte-du-logiciel-libre-de-la-recherche/)
2. [Source](https://github.com/scikit-learn/scikit-learn)
3. [Source](https://github.com/scikit-learn/scikit-learn/graphs/contributors)
4. [Source](https://github.com/scikit-learn/scikit-learn/blob/0.19.0/COPYING)
5. [The scikit-learn Open Source Project on Open Hub: Licenses Page. Open Hub](https://www.openhub.net/p/scikit-learn/licenses)
6. [The scikit-learn Open Source Project on Open Hub: Languages Page. Open Hub](https://www.openhub.net/p/scikit-learn/analyses/latest/languages_summary)
7. [2025](https://github.com/EvanLi/Github-Ranking/blob/master/Data/github-ranking-2025-07-06.csv)
8. [Release 0.18.1. 2016](https://github.com/scikit-learn/scikit-learn/releases/tag/0.18.1)
9. [Release 0.18. 2016](https://github.com/scikit-learn/scikit-learn/releases/tag/0.18)
10. [Release 0.17.1. 2016](https://github.com/scikit-learn/scikit-learn/releases/tag/0.17.1-1)
11. [Release 0.19.1. 2017](https://github.com/scikit-learn/scikit-learn/releases/tag/0.19.1)
12. [Release 0.17.1-1. 2016](https://github.com/scikit-learn/scikit-learn/releases/tag/0.17.1-1)
13. [Release 0.20.0. 2018](https://github.com/scikit-learn/scikit-learn/releases/tag/0.20.0)
14. [Release 0.19.2. 2018](https://github.com/scikit-learn/scikit-learn/releases/tag/0.19.2)
15. [Release 0.20.1. 2018](https://github.com/scikit-learn/scikit-learn/releases/tag/0.20.1)
16. [Release 0.20.2. 2018](https://github.com/scikit-learn/scikit-learn/releases/tag/0.20.2)
17. [Release 0.20.3. 2019](https://github.com/scikit-learn/scikit-learn/releases/tag/0.20.3)
18. [Release 0.21.0. 2019](https://github.com/scikit-learn/scikit-learn/releases/tag/0.21.0)
19. [Release 0.21.1. 2019](https://github.com/scikit-learn/scikit-learn/releases/tag/0.21.1)
20. [Release 0.21.2. 2019](https://github.com/scikit-learn/scikit-learn/releases/tag/0.21.2)
21. [Release 0.20.4. 2019](https://github.com/scikit-learn/scikit-learn/releases/tag/0.20.4)
22. [Release 0.21.3. 2019](https://github.com/scikit-learn/scikit-learn/releases/tag/0.21.3)
23. [Release 0.22.1. 2020](https://github.com/scikit-learn/scikit-learn/releases/tag/0.22.1)
24. [Release 0.23.0. 2020](https://github.com/scikit-learn/scikit-learn/releases/tag/0.23.0)
25. [Release 0.23.1. 2020](https://github.com/scikit-learn/scikit-learn/releases/tag/0.23.1)
26. [Release 0.23.2. 2020](https://github.com/scikit-learn/scikit-learn/releases/tag/0.23.2)
27. [Release 0.24.0. 2020](https://github.com/scikit-learn/scikit-learn/releases/tag/0.24.0)
28. [Release 0.24.1. 2021](https://github.com/scikit-learn/scikit-learn/releases/tag/0.24.1)
29. [Release 0.24.2. 2021](https://github.com/scikit-learn/scikit-learn/releases/tag/0.24.2)
30. [Release 1.0. 2021](https://github.com/scikit-learn/scikit-learn/releases/tag/1.0)
31. [Release 1.0.1. 2021](https://github.com/scikit-learn/scikit-learn/releases/tag/1.0.1)
32. [Release 1.0.2. 2021](https://github.com/scikit-learn/scikit-learn/releases/tag/1.0.2)
33. [Release 1.1.0. 2022](https://github.com/scikit-learn/scikit-learn/releases/tag/1.1.0)
34. [Release 1.1.1. 2022](https://github.com/scikit-learn/scikit-learn/releases/tag/1.1.1)
35. [Release 1.1.2. 2022](https://github.com/scikit-learn/scikit-learn/releases/tag/1.1.2)
36. [Release 1.1.3. 2022](https://github.com/scikit-learn/scikit-learn/releases/tag/1.1.3)
37. [Release 1.2.0. 2022](https://github.com/scikit-learn/scikit-learn/releases/tag/1.2.0)
38. [Release 1.2.1. 2023](https://github.com/scikit-learn/scikit-learn/releases/tag/1.2.1)
39. [Release 1.2.2. 2023](https://github.com/scikit-learn/scikit-learn/releases/tag/1.2.2)
40. [Release 1.3.0. 2023](https://github.com/scikit-learn/scikit-learn/releases/tag/1.3.0)
41. [Release 1.3.1. 2023](https://github.com/scikit-learn/scikit-learn/releases/tag/1.3.1)
42. [Release 1.3.2. 2023](https://github.com/scikit-learn/scikit-learn/releases/tag/1.3.2)
43. [Release 1.4.1. 2024](https://github.com/scikit-learn/scikit-learn/releases/tag/1.4.1)
44. [Release 1.4.2. 2024](https://github.com/scikit-learn/scikit-learn/releases/tag/1.4.2)
45. [Release 1.5.0. 2024](https://github.com/scikit-learn/scikit-learn/releases/tag/1.5.0)
46. [Release 1.5.1. 2024](https://github.com/scikit-learn/scikit-learn/releases/tag/1.5.1)
47. [Release 1.5.2. 2024](https://github.com/scikit-learn/scikit-learn/releases/tag/1.5.2)
48. [Release 1.6.0. 2024](https://github.com/scikit-learn/scikit-learn/releases/tag/1.6.0)
49. [Release 1.6.1. 2025](https://github.com/scikit-learn/scikit-learn/releases/tag/1.6.1)
50. [Release 1.7.0. 2025](https://github.com/scikit-learn/scikit-learn/releases/tag/1.7.0)