Оригинальный автор(ы) | Дэвид Курнапо |
---|---|
Первоначальный выпуск | Июнь 2007 г ( 2007-06 ) |
Стабильный релиз | 1.6.1 [1] / 10 января 2025 г. ( 10 января 2025 г. ) |
Репозиторий |
|
Написано в | Python , Cython , C и C++ [2] |
Операционная система | Linux , MacOS , Windows |
Тип | Библиотека для машинного обучения |
Лицензия | Новая лицензия BSD |
Веб-сайт | scikit-learn.org |
scikit-learn (ранее scikits.learn , а также известная как sklearn ) — это бесплатная библиотека машинного обучения с открытым исходным кодом для языка программирования Python . [3] Она включает в себя различные алгоритмы классификации , регрессии и кластеризации , включая машины опорных векторов , случайные леса , градиентный бустинг , k -средние и DBSCAN , и разработана для взаимодействия с числовыми и научными библиотеками Python NumPy и SciPy . Scikit-learn — это проект, спонсируемый NumFOCUS из финансовых средств. [4]
Проект scikit-learn начинался как scikits.learn, проект Google Summer of Code французского специалиста по данным Дэвида Курнапо . Название проекта происходит от понятия, что это «SciKit» (SciPy Toolkit), отдельно разработанное и распространяемое стороннее расширение для SciPy . [5] Оригинальная кодовая база была позже переписана другими разработчиками . В 2010 году участники Фабиан Педрегоса, Гаэль Вароко, Александр Грамфор и Венсан Мишель из Французского института исследований в области компьютерных наук и автоматизации в Сакле , Франция , взяли на себя руководство проектом и выпустили первую публичную версию библиотеки 1 февраля 2010 года. [6] В ноябре 2012 года scikit-learn и scikit-image были описаны как две из «хорошо поддерживаемых и популярных» библиотек scikits [обновлять]. [7] В 2019 году было отмечено, что scikit-learn является одной из самых популярных библиотек машинного обучения на GitHub . [8]
scikit-learn в основном написан на Python и широко использует NumPy для высокопроизводительной линейной алгебры и операций с массивами. Кроме того, некоторые основные алгоритмы написаны на Cython для повышения производительности. Машины опорных векторов реализованы оболочкой Cython вокруг LIBSVM ; логистическая регрессия и линейные машины опорных векторов реализованы аналогичной оболочкой вокруг LIBLINEAR . В таких случаях расширение этих методов с помощью Python может оказаться невозможным.
scikit-learn хорошо интегрируется со многими другими библиотеками Python, такими как Matplotlib и plotly для построения графиков, NumPy для векторизации массивов, Pandas dataframes, SciPy и многими другими.
scikit-learn изначально был разработан Дэвидом Курнапо как проект Google Summer of Code в 2007 году. Позже в том же году к проекту присоединился Матье Брушер и начал использовать его как часть своей диссертационной работы. В 2010 году к проекту присоединился INRIA , Французский институт исследований в области компьютерных наук и автоматизации , и первый публичный релиз (v0.1 beta) был опубликован в конце января 2010 года.