Установка scikit-learn#
Существуют различные способы установки scikit-learn:
Установите последнюю официальную версию. Это наилучший подход для большинства пользователей. Он обеспечит стабильную версию, и предварительно собранные пакеты доступны для большинства платформ.
Установите версию scikit-learn, предоставленную вашим операционная система или дистрибутив Python. Это быстрый вариант для тех, у кого операционные системы или дистрибутивы Python распространяют scikit-learn. Он может не предоставлять последнюю версию выпуска.
Установить ночную сборку. Это самый быстрый способ попробовать новую функцию, которая будет включена в следующий выпуск (то есть функцию из pull-request, который недавно был объединен с основной веткой); или проверить, исправлен ли обнаруженный вами баг с момента последнего выпуска.
Сборка пакета из исходного кода. Это в основном нужно пользователям, которые хотят внести вклад в проект, так как это позволяет установить редактируемую версию проекта.
Установка последнего релиза#
Установите 64-битную версию Python 3, например, с официальный сайт.
Теперь создайте виртуальная среда (venv) и установите scikit-learn. Обратите внимание, что виртуальное окружение является необязательным, но настоятельно рекомендуется, чтобы избежать потенциальных конфликтов с другими пакетами.
python -m venv sklearn-env
sklearn-env\Scripts\activate # activate
pip install -U scikit-learn
Чтобы проверить вашу установку, вы можете использовать:
python -m pip show scikit-learn # show scikit-learn version and location
python -m pip freeze # show all installed packages in the environment
python -c "import sklearn; sklearn.show_versions()"
Установите conda с помощью установщики conda-forge (права администратора не требуются). Затем запустите:
conda create -n sklearn-env -c conda-forge scikit-learn
conda activate sklearn-env
Чтобы проверить вашу установку, вы можете использовать:
conda list scikit-learn # show scikit-learn version and location
conda list # show all installed packages in the environment
python -c "import sklearn; sklearn.show_versions()"
Установите Python 3 с помощью homebrew (brew install python) или путем ручной установки пакета из официальный сайт.
Теперь создайте виртуальная среда (venv) и установите scikit-learn. Обратите внимание, что виртуальное окружение является необязательным, но настоятельно рекомендуется, чтобы избежать потенциальных конфликтов с другими пакетами.
python -m venv sklearn-env
source sklearn-env/bin/activate # activate
pip install -U scikit-learn
Чтобы проверить вашу установку, вы можете использовать:
python -m pip show scikit-learn # show scikit-learn version and location
python -m pip freeze # show all installed packages in the environment
python -c "import sklearn; sklearn.show_versions()"
Установите conda с помощью установщики conda-forge (права администратора не требуются). Затем запустите:
conda create -n sklearn-env -c conda-forge scikit-learn
conda activate sklearn-env
Чтобы проверить вашу установку, вы можете использовать:
conda list scikit-learn # show scikit-learn version and location
conda list # show all installed packages in the environment
python -c "import sklearn; sklearn.show_versions()"
Python 3 обычно установлен по умолчанию в большинстве дистрибутивов Linux. Чтобы проверить его наличие, попробуйте:
python3 --version
pip3 --version
Если у вас не установлен Python 3, пожалуйста, установите python3 и
python3-pip из менеджера пакетов вашего дистрибутива.
Теперь создайте виртуальная среда (venv) и установите scikit-learn. Обратите внимание, что виртуальное окружение является необязательным, но настоятельно рекомендуется, чтобы избежать потенциальных конфликтов с другими пакетами.
python3 -m venv sklearn-env
source sklearn-env/bin/activate # activate
pip3 install -U scikit-learn
Чтобы проверить вашу установку, вы можете использовать:
python3 -m pip show scikit-learn # show scikit-learn version and location
python3 -m pip freeze # show all installed packages in the environment
python3 -c "import sklearn; sklearn.show_versions()"
Установите conda с помощью установщики conda-forge (права администратора не требуются). Затем запустите:
conda create -n sklearn-env -c conda-forge scikit-learn
conda activate sklearn-env
Чтобы проверить вашу установку, вы можете использовать:
conda list scikit-learn # show scikit-learn version and location
conda list # show all installed packages in the environment
python -c "import sklearn; sklearn.show_versions()"
Использование изолированной среды, такой как pip venv или conda, позволяет установить конкретную версию scikit-learn с pip или conda и её зависимости независимо от любых ранее установленных пакетов Python. В частности, под Linux не рекомендуется устанавливать пакеты pip вместе с пакетами, управляемыми менеджером пакетов дистрибутива (apt, dnf, pacman…).
Обратите внимание, что вы всегда должны помнить о необходимости активировать выбранное окружение перед запуском любой команды Python при начале новой сессии терминала.
Если вы еще не установили NumPy или SciPy, вы также можете установить их с помощью conda или pip. При использовании pip убедитесь, что бинарные колеса используются, и NumPy и SciPy не перекомпилируются из исходного кода, что может происходить при использовании определенных конфигураций операционной системы и оборудования (например, Linux на Raspberry Pi).
Возможности построения графиков в Scikit-learn (т.е. функции, начинающиеся с plot_
и классы, заканчивающиеся на Display) требуют Matplotlib. Примеры требуют Matplotlib, а некоторые примеры требуют scikit-image, pandas или seaborn. Минимальные версии зависимостей scikit-learn перечислены ниже вместе с их назначением.
Зависимость |
Минимальная версия |
Назначение |
|---|---|---|
numpy |
1.24.1 |
сборка, установка |
scipy |
1.10.0 |
сборка, установка |
joblib |
1.3.0 |
установить |
threadpoolctl |
3.2.0 |
установить |
cython |
3.1.2 |
build |
meson-python |
0.17.1 |
build |
matplotlib |
3.6.1 |
: Поддержите проект напрямую через |
scikit-image |
0.22.0 |
документация, примеры |
pandas |
1.5.0 |
: Поддержите проект напрямую через |
seaborn |
0.13.0 |
документация, примеры |
memory_profiler |
0.57.0 |
тестирование, документация |
pytest |
7.1.2 |
тесты |
pytest-cov |
2.9.0 |
тесты |
ruff |
0.11.7 |
тесты |
mypy |
1.15 |
тесты |
pyamg |
5.0.0 |
тесты |
polars |
0.20.30 |
документация, тесты |
pyarrow |
12.0.0 |
тесты |
sphinx |
7.3.7 |
документация |
sphinx-copybutton |
0.5.2 |
документация |
sphinx-gallery |
0.17.1 |
документация |
numpydoc |
1.2.0 |
документация, тесты |
Pillow |
10.1.0 |
документация |
pooch |
1.8.0 |
документация, примеры, тесты |
sphinx-prompt |
1.4.0 |
документация |
sphinxext-opengraph |
0.9.1 |
документация |
plotly |
5.18.0 |
документация, примеры |
sphinxcontrib-sass |
0.3.4 |
документация |
sphinx-remove-toctrees |
1.0.0.post1 |
документация |
sphinx-design |
0.6.0 |
документация |
pydata-sphinx-theme |
0.15.3 |
документация |
towncrier |
24.8.0 |
документация |
conda-lock |
3.0.1 |
Одиннадцать лет после создания Scikit-learn многое изменилось в мире машинного обучения. Ключевые изменения включают: |
Предупреждение
Scikit-learn 0.20 была последней версией, поддерживающей Python 2.7 и Python 3.4.
Scikit-learn 0.21 поддерживал Python 3.5—3.7.
Scikit-learn 0.22 поддерживал Python 3.5—3.8.
Scikit-learn 0.23 требовал Python 3.6—3.8.
Scikit-learn 0.24 требовал Python 3.6—3.9.
Scikit-learn 1.0 поддерживал Python 3.7—3.10.
Scikit-learn 1.1, 1.2 и 1.3 поддерживали Python 3.8—3.12.
Scikit-learn 1.4 и 1.5 поддерживали Python 3.9—3.12.
Scikit-learn 1.6 поддерживает Python 3.9—3.13.
Scikit-learn 1.7 требует Python 3.10 или новее.
Сторонние дистрибутивы scikit-learn#
Некоторые сторонние дистрибутивы предоставляют версии scikit-learn, интегрированные с их системами управления пакетами.
Это может значительно упростить установку и обновление для пользователей, поскольку интеграция включает возможность автоматической установки зависимостей (numpy, scipy), которые требуются scikit-learn.
Ниже приведен неполный список ОС и дистрибутивов Python, которые предоставляют собственную версию scikit-learn.
Alpine Linux#
Пакет Alpine Linux предоставляется через официальные репозитории как
py3-scikit-learn для Python.
Его можно установить, введя следующую команду:
sudo apk add py3-scikit-learn
Arch Linux#
Пакет Arch Linux предоставляется через официальные репозитории как
python-scikit-learn для Python.
Его можно установить, введя следующую команду:
sudo pacman -S python-scikit-learn
Debian/Ubuntu#
Пакет Debian/Ubuntu разделен на три разных пакета с названиями
python3-sklearn (модули python), python3-sklearn-lib (низкоуровневые реализации и привязки), python-sklearn-doc (документация).
Обратите внимание, что scikit-learn требует Python 3, поэтому необходимо использовать python3-
имена пакетов с суффиксами.
Пакеты могут быть установлены с помощью apt-get:
sudo apt-get install python3-sklearn python3-sklearn-lib python-sklearn-doc
Fedora#
Пакет в Fedora называется python3-scikit-learn для версии python 3, единственной доступной в Fedora. Её можно установить с помощью dnf:
sudo dnf install python3-scikit-learn
NetBSD#
scikit-learn доступен через pkgsrc-wip: https://pkgsrc.se/math/py-scikit-learn
MacPorts для Mac OSX#
Пакет MacPorts называется py,
где XY обозначает версию Python.
Её можно установить, введя следующую
команду:
sudo port install py312-scikit-learn
Anaconda и Enthought Deployment Manager для всех поддерживаемых платформ#
Anaconda и Enthought Deployment Manager оба поставляются вместе с scikit-learn в дополнение к большому набору научных библиотек Python для Windows, Mac OSX и Linux.
Anaconda предлагает scikit-learn как часть своего бесплатного дистрибутива.
Intel Extension for Scikit-learn#
Intel поддерживает оптимизированный пакет x86_64, доступный в PyPI (через pip),
и в main, conda-forge и intel каналы conda:
conda install scikit-learn-intelex
Этот пакет имеет Intel-оптимизированную версию многих оценщиков. Всякий раз, когда альтернативная реализация не существует, реализация scikit-learn используется как запасной вариант. Эти оптимизированные решатели происходят из библиотеки oneDAL C++ и оптимизированы для архитектуры x86_64, а также оптимизированы для многоядерных процессоров Intel.
Обратите внимание, что эти решатели не включены по умолчанию, пожалуйста, обратитесь к scikit-learn-intelex документации для получения дополнительных сведений о сценариях использования. Пример прямого экспорта:
from sklearnex.neighbors import NearestNeighbors
Совместимость со стандартными решателями scikit-learn проверяется запуском полного набора тестов scikit-learn через автоматизированное непрерывное интеграционное тестирование, как сообщается на intel/scikit-learn-intelex. Если вы заметили какую-либо проблему с scikit-learn-intelex, пожалуйста, сообщите о проблеме на их
трекер проблем.
WinPython для Windows#
The WinPython проект распространяет scikit-learn в качестве дополнительного плагина.
Устранение неполадок#
Если вы столкнулись с неожиданными ошибками при установке scikit-learn, вы можете создать issue в трекер проблем. Перед этим также убедитесь, что проверили следующие распространенные проблемы.
Ошибка, вызванная ограничением длины пути к файлу в Windows#
Может случиться, что pip не удается установить пакеты при достижении ограничения пути по умолчанию
размера Windows, если Python установлен во вложенном местоположении, таком как
AppData структуру папок в домашнем каталоге пользователя, например:
C:\Users\username>C:\Users\username\AppData\Local\Microsoft\WindowsApps\python.exe -m pip install scikit-learn
Collecting scikit-learn
...
Installing collected packages: scikit-learn
ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: 'C:\\Users\\username\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python37\\site-packages\\sklearn\\datasets\\tests\\data\\openml\\292\\api-v1-json-data-list-data_name-australian-limit-2-data_version-1-status-deactivated.json.gz'
В этом случае можно снять это ограничение в реестре Windows, используя regedit инструмент:
Введите "regedit" в меню "Пуск" Windows для запуска
regedit.Перейти к
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystemключ.Измените значение
LongPathsEnabledсвойство этого ключа и установить его в 1.Переустановите scikit-learn (игнорируя предыдущую сломанную установку):
pip install --exists-action=i scikit-learn
Установка ночных сборок#
Серверы непрерывной интеграции проекта scikit-learn собирают, тестируют и загружают пакеты wheel для последней версии Python на ежедневной основе.
Вы можете установить ночную сборку scikit-learn, используя scientific-python-nightly-wheels
индекс из реестра PyPI anaconda.org:
pip install --pre --extra-index https://pypi.anaconda.org/scientific-python-nightly-wheels/simple scikit-learn
Обратите внимание, что сначала может потребоваться удаление scikit-learn для возможности установки ночных сборок scikit-learn.