Installation von scikit-learn#
Es gibt verschiedene Möglichkeiten, scikit-learn zu installieren
Die neueste offizielle Version installieren. Dies ist der beste Ansatz für die meisten Benutzer. Er bietet eine stabile Version und für die meisten Plattformen sind vorgefertigte Pakete verfügbar.
Installieren Sie die von Ihrem Betriebssystem oder Ihrer Python-Distribution bereitgestellte Version von scikit-learn. Dies ist eine schnelle Option für diejenigen, die Betriebssysteme oder Python-Distributionen haben, die scikit-learn verteilen. Möglicherweise wird nicht die neueste Release-Version bereitgestellt.
Eine tägliche Version installieren. Dies ist der schnellste Weg, um ein neues Feature auszuprobieren, das in der nächsten Version veröffentlicht wird (d. h. ein Feature aus einem Pull-Request, der kürzlich in den Hauptzweig übernommen wurde); oder um zu prüfen, ob ein aufgetretener Fehler seit der letzten Veröffentlichung behoben wurde.
Das Paket aus dem Quellcode erstellen. Dies ist hauptsächlich für Benutzer erforderlich, die zum Projekt beitragen möchten, da dies die Installation einer bearbeitbaren Version des Projekts ermöglicht.
Installation der neuesten Version#
Installieren Sie die 64-Bit-Version von Python 3, z. B. von der offiziellen Website.
Erstellen Sie nun eine virtuelle Umgebung (venv) und installieren Sie scikit-learn. Beachten Sie, dass die virtuelle Umgebung optional, aber dringend empfohlen ist, um potenzielle Konflikte mit anderen Paketen zu vermeiden.
python -m venv sklearn-env
sklearn-env\Scripts\activate # activate
pip install -U scikit-learn
Um Ihre Installation zu überprüfen, können Sie
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()"
Installieren Sie conda mit den conda-forge-Installationsprogrammen (keine Administratorberechtigung erforderlich). Führen Sie dann aus
conda create -n sklearn-env -c conda-forge scikit-learn
conda activate sklearn-env
Um Ihre Installation zu überprüfen, können Sie
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()"
Installieren Sie Python 3 mit homebrew (brew install python) oder durch manuelle Installation des Pakets von der offiziellen Website.
Erstellen Sie nun eine virtuelle Umgebung (venv) und installieren Sie scikit-learn. Beachten Sie, dass die virtuelle Umgebung optional, aber dringend empfohlen ist, um potenzielle Konflikte mit anderen Paketen zu vermeiden.
python -m venv sklearn-env
source sklearn-env/bin/activate # activate
pip install -U scikit-learn
Um Ihre Installation zu überprüfen, können Sie
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()"
Installieren Sie conda mit den conda-forge-Installationsprogrammen (keine Administratorberechtigung erforderlich). Führen Sie dann aus
conda create -n sklearn-env -c conda-forge scikit-learn
conda activate sklearn-env
Um Ihre Installation zu überprüfen, können Sie
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 ist auf den meisten Linux-Distributionen normalerweise standardmäßig installiert. Um zu prüfen, ob Sie es installiert haben, versuchen Sie
python3 --version
pip3 --version
Wenn Sie Python 3 nicht installiert haben, installieren Sie bitte python3 und python3-pip über den Paketmanager Ihrer Distribution.
Erstellen Sie nun eine virtuelle Umgebung (venv) und installieren Sie scikit-learn. Beachten Sie, dass die virtuelle Umgebung optional, aber dringend empfohlen ist, um potenzielle Konflikte mit anderen Paketen zu vermeiden.
python3 -m venv sklearn-env
source sklearn-env/bin/activate # activate
pip3 install -U scikit-learn
Um Ihre Installation zu überprüfen, können Sie
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()"
Installieren Sie conda mit den conda-forge-Installationsprogrammen (keine Administratorberechtigung erforderlich). Führen Sie dann aus
conda create -n sklearn-env -c conda-forge scikit-learn
conda activate sklearn-env
Um Ihre Installation zu überprüfen, können Sie
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()"
Die Verwendung einer isolierten Umgebung wie pip venv oder conda ermöglicht die unabhängige Installation einer bestimmten Version von scikit-learn mit pip oder conda und seinen Abhängigkeiten, unabhängig von zuvor installierten Python-Paketen. Insbesondere unter Linux wird davon abgeraten, pip-Pakete parallel zu den vom Paketmanager der Distribution verwalteten Paketen (apt, dnf, pacman…) zu installieren.
Beachten Sie, dass Sie die Umgebung Ihrer Wahl immer aktivieren müssen, bevor Sie Python-Befehle ausführen, wenn Sie eine neue Terminal-Sitzung starten.
Wenn Sie NumPy oder SciPy noch nicht installiert haben, können Sie diese ebenfalls mit conda oder pip installieren. Bei Verwendung von pip stellen Sie bitte sicher, dass *Binär-Wheels* verwendet werden und NumPy und SciPy nicht aus dem Quellcode neu kompiliert werden, was bei bestimmten Konfigurationen von Betriebssystem und Hardware (wie z. B. Linux auf einem Raspberry Pi) geschehen kann.
Die Plotting-Funktionen von Scikit-learn (d. h. Funktionen, die mit plot_ beginnen, und Klassen, die mit Display enden) erfordern Matplotlib. Die Beispiele erfordern Matplotlib, und einige Beispiele erfordern scikit-image, pandas oder seaborn. Die Mindestversionen der scikit-learn-Abhängigkeiten sind zusammen mit ihrem Zweck unten aufgeführt.
Abhängigkeit |
Mindestversion |
Zweck |
|---|---|---|
numpy |
1.24.1 |
Erstellung, Installation |
scipy |
1.10.0 |
Erstellung, Installation |
joblib |
1.3.0 |
Installation |
threadpoolctl |
3.2.0 |
Installation |
cython |
3.1.2 |
Erstellung |
meson-python |
0.17.1 |
Erstellung |
matplotlib |
3.6.1 |
Benchmark, Docs, Beispiele, Tests |
scikit-image |
0.22.0 |
Docs, Beispiele |
pandas |
1.5.0 |
Benchmark, Docs, Beispiele, Tests |
seaborn |
0.13.0 |
Docs, Beispiele |
memory_profiler |
0.57.0 |
Benchmark, Docs |
pytest |
7.1.2 |
Tests |
pytest-cov |
2.9.0 |
Tests |
ruff |
0.11.7 |
Tests |
mypy |
1.15 |
Tests |
pyamg |
5.0.0 |
Tests |
polars |
0.20.30 |
Docs, Tests |
pyarrow |
12.0.0 |
Tests |
sphinx |
7.3.7 |
Docs |
sphinx-copybutton |
0.5.2 |
Docs |
sphinx-gallery |
0.17.1 |
Docs |
numpydoc |
1.2.0 |
Docs, Tests |
Pillow |
10.1.0 |
Docs |
pooch |
1.8.0 |
Docs, Beispiele, Tests |
sphinx-prompt |
1.4.0 |
Docs |
sphinxext-opengraph |
0.9.1 |
Docs |
plotly |
5.18.0 |
Docs, Beispiele |
sphinxcontrib-sass |
0.3.4 |
Docs |
sphinx-remove-toctrees |
1.0.0.post1 |
Docs |
sphinx-design |
0.6.0 |
Docs |
pydata-sphinx-theme |
0.15.3 |
Docs |
towncrier |
24.8.0 |
Docs |
conda-lock |
3.0.1 |
Wartung |
Warnung
Scikit-learn 0.20 war die letzte Version, die Python 2.7 und Python 3.4 unterstützte.
Scikit-learn 0.21 unterstützte Python 3.5—3.7.
Scikit-learn 0.22 unterstützte Python 3.5—3.8.
Scikit-learn 0.23 erforderte Python 3.6—3.8.
Scikit-learn 0.24 erforderte Python 3.6—3.9.
Scikit-learn 1.0 unterstützte Python 3.7—3.10.
Scikit-learn 1.1, 1.2 und 1.3 unterstützten Python 3.8—3.12.
Scikit-learn 1.4 und 1.5 unterstützten Python 3.9—3.12.
Scikit-learn 1.6 unterstützte Python 3.9—3.13.
Scikit-learn 1.7 erfordert Python 3.10 oder neuer.
Drittanbieter-Distributionen von scikit-learn#
Einige Drittanbieter-Distributionen stellen Versionen von scikit-learn zur Verfügung, die in ihre Paketverwaltungssysteme integriert sind.
Dies kann die Installation und Aktualisierung für Benutzer erheblich erleichtern, da die Integration die Möglichkeit beinhaltet, Abhängigkeiten (numpy, scipy), die scikit-learn benötigt, automatisch zu installieren.
Die folgende Liste ist eine unvollständige Liste von Betriebssystemen und Python-Distributionen, die ihre eigenen Versionen von scikit-learn anbieten.
Alpine Linux#
Das Paket von Alpine Linux wird über die offiziellen Repositories als py3-scikit-learn für Python bereitgestellt. Es kann durch Eingabe des folgenden Befehls installiert werden
sudo apk add py3-scikit-learn
Arch Linux#
Das Paket von Arch Linux wird über die offiziellen Repositories als python-scikit-learn für Python bereitgestellt. Es kann durch Eingabe des folgenden Befehls installiert werden
sudo pacman -S python-scikit-learn
Debian/Ubuntu#
Das Debian/Ubuntu-Paket ist in drei verschiedene Pakete unterteilt: python3-sklearn (Python-Module), python3-sklearn-lib (Low-Level-Implementierungen und Bindings), python-sklearn-doc (Dokumentation). Beachten Sie, dass scikit-learn Python 3 benötigt, daher die Notwendigkeit, die Pakete mit dem Suffix python3- zu verwenden. Pakete können mit apt-get installiert werden.
sudo apt-get install python3-sklearn python3-sklearn-lib python-sklearn-doc
Fedora#
Das Fedora-Paket heißt python3-scikit-learn für die Python-3-Version, die einzige, die in Fedora verfügbar ist. Es kann mit dnf installiert werden.
sudo dnf install python3-scikit-learn
NetBSD#
scikit-learn ist über pkgsrc-wip verfügbar: https://pkgsrc.se/math/py-scikit-learn
MacPorts für Mac OSX#
Das MacPorts-Paket heißt py<XY>-scikit-learn, wobei XY die Python-Version bezeichnet. Es kann durch Eingabe des folgenden Befehls installiert werden
sudo port install py312-scikit-learn
Anaconda und Enthought Deployment Manager für alle unterstützten Plattformen#
Anaconda und Enthought Deployment Manager liefern scikit-learn zusätzlich zu einer großen Sammlung wissenschaftlicher Python-Bibliotheken für Windows, Mac OSX und Linux.
Anaconda bietet scikit-learn als Teil seiner kostenlosen Distribution an.
Intel Extension für Scikit-learn#
Intel pflegt ein optimiertes x86_64-Paket, das in PyPI (über pip) sowie in den conda-Kanälen main, conda-forge und intel verfügbar ist.
conda install scikit-learn-intelex
Dieses Paket enthält eine Intel-optimierte Version vieler Schätzer. Wenn keine alternative Implementierung existiert, wird die scikit-learn-Implementierung als Fallback verwendet. Diese optimierten Löser stammen aus der oneDAL C++-Bibliothek und sind für die x86_64-Architektur optimiert und für Multi-Core-Intel-CPUs.
Beachten Sie, dass diese Löser nicht standardmäßig aktiviert sind. Weitere Informationen zu Anwendungsszenarien finden Sie in der Dokumentation von scikit-learn-intelex. Beispiel für direkten Export
from sklearnex.neighbors import NearestNeighbors
Die Kompatibilität mit den Standard-Scikit-learn-Lösern wird durch Ausführung der gesamten Scikit-learn-Testsuite über automatisierte Continuous Integration überprüft, wie auf intel/scikit-learn-intelex berichtet. Wenn Sie Probleme mit scikit-learn-intelex feststellen, melden Sie das Problem bitte in deren Issue Tracker.
WinPython für Windows#
Das Projekt WinPython verteilt scikit-learn als zusätzliches Plugin.
Fehlerbehebung#
Wenn bei der Installation von scikit-learn unerwartete Fehler auftreten, können Sie ein Problem im Issue Tracker melden. Stellen Sie vorher bitte sicher, dass Sie die folgenden häufigen Probleme überprüfen.
Fehler durch Zeichenbegrenzung von Dateipfaden unter Windows#
Es kann vorkommen, dass pip beim Erreichen des Standard-Pfadlängenlimits von Windows fehlschlägt, wenn Python in einem verschachtelten Verzeichnis installiert ist, z. B. in der AppData-Ordnerstruktur unterhalb des Benutzerprofilordners, zum Beispiel
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'
In diesem Fall ist es möglich, dieses Limit in der Windows-Registrierung mit dem regedit-Tool aufzuheben.
Geben Sie "regedit" im Windows-Startmenü ein, um
regeditzu starten.Navigieren Sie zum Schlüssel
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem.Bearbeiten Sie den Wert der Eigenschaft
LongPathsEnableddieses Schlüssels und setzen Sie ihn auf 1.Installieren Sie scikit-learn neu (ignorieren Sie die vorherige fehlerhafte Installation).
pip install --exists-action=i scikit-learn
Installation täglicher Versionen#
Die Continuous-Integration-Server des scikit-learn-Projekts erstellen, testen und laden täglich Wheel-Pakete für die aktuellste Python-Version hoch.
Sie können die tägliche Version von scikit-learn über den Index scientific-python-nightly-wheels aus dem PyPI-Repository von anaconda.org installieren.
pip install --pre --extra-index https://pypi.anaconda.org/scientific-python-nightly-wheels/simple scikit-learn
Beachten Sie, dass die vorherige Deinstallation von scikit-learn erforderlich sein kann, um tägliche Versionen von scikit-learn installieren zu können.