Verwandte Projekte#
Projekte, die die scikit-learn-Estimator-API implementieren, werden ermutigt, die scikit-learn-contrib Vorlage zu verwenden, die Best Practices für das Testen und Dokumentieren von Estimators erleichtert. Die scikit-learn-contrib GitHub-Organisation akzeptiert auch hochwertige Beiträge von Repositories, die dieser Vorlage entsprechen.
Nachfolgend finden Sie eine Liste von Schwesterprojekten, Erweiterungen und domänenspezifischen Paketen.
Interoperabilität und Framework-Erweiterungen#
Diese Tools passen scikit-learn für die Verwendung mit anderen Technologien an oder erweitern anderweitig die Funktionalität von scikit-learn-Estimators.
Auto-ML
auto-sklearn Ein automatisiertes Machine-Learning-Toolkit und ein Drop-in-Ersatz für einen scikit-learn-Estimator
autoviml Automatisches Erstellen mehrerer Machine-Learning-Modelle mit einer einzigen Codezeile. Konzipiert als schnellerer Weg, scikit-learn-Modelle zu verwenden, ohne Daten vorverarbeiten zu müssen.
TPOT Ein automatisiertes Machine-Learning-Toolkit, das eine Reihe von scikit-learn-Operatoren optimiert, um eine Machine-Learning-Pipeline zu entwerfen, einschließlich Daten- und Feature-Vorverarbeitern sowie Estimators. Funktioniert als Drop-in-Ersatz für einen scikit-learn-Estimator.
Featuretools Ein Framework zur automatisierten Feature-Entwicklung. Es kann zur Transformation von zeitlichen und relationalen Datensätzen in Feature-Matrizen für maschinelles Lernen verwendet werden.
EvalML Eine AutoML-Bibliothek, die Machine-Learning-Pipelines mithilfe domänenspezifischer Zielfunktionen erstellt, optimiert und evaluiert. Sie integriert mehrere Modellierungsbibliotheken unter einer einzigen API, und die von EvalML erstellten Objekte verwenden eine sklearn-kompatible API.
MLJAR AutoML Ein Python-Paket für AutoML auf tabellarischen Daten mit Feature-Entwicklung, Hyperparameter-Tuning, Erklärungen und automatischer Dokumentation.
Experimentier- und Modellregistrierungs-Frameworks
MLFlow Eine Open-Source-Plattform zur Verwaltung des ML-Lebenszyklus, einschließlich Experimenten, Reproduzierbarkeit, Bereitstellung und einer zentralen Modellregistrierung.
Neptune Ein Metadaten-Speicher für MLOps, entwickelt für Teams, die viele Experimente durchführen. Er bietet einen einzigen Ort, um alle Ihre Metadaten zum Modellaufbau zu protokollieren, zu speichern, anzuzeigen, zu organisieren, zu vergleichen und abzufragen.
Sacred Ein Tool, das Sie bei der Konfiguration, Organisation, Protokollierung und Reproduktion von Experimenten unterstützt.
Scikit-Learn Laboratory Ein Kommandozeilen-Wrapper um scikit-learn, der es einfach macht, Machine-Learning-Experimente mit mehreren Lernenden und großen Feature-Sets durchzuführen.
Modellinspektion und -visualisierung
dtreeviz Eine Python-Bibliothek zur Visualisierung von Entscheidungsbäumen und Modellinterpretation.
model-diagnostics Tools zur Diagnose und Bewertung von (Machine-Learning-)Modellen (in Python).
sklearn-evaluation Einfache Auswertung von Machine-Learning-Modellen: Plots, Tabellen, HTML-Berichte, Experiment-Tracking und Jupyter-Notebook-Analyse. Visuelle Analyse, Modellauswahl, Bewertung und Diagnose.
yellowbrick Eine Sammlung benutzerdefinierter Matplotlib-Visualisierer für scikit-learn-Estimators zur Unterstützung der visuellen Feature-Analyse, Modellauswahl, Bewertung und Diagnose.
Modell-Export für die Produktion
sklearn-onnx Serialisierung vieler Scikit-learn-Pipelines nach ONNX für Austausch und Vorhersage.
skops.io Ein Persistenzmodell, das sicherer als Pickle ist und in den meisten gängigen Fällen anstelle von Pickle verwendet werden kann.
sklearn2pmml Serialisierung einer Vielzahl von scikit-learn-Estimators und-Transformatoren in PMML mit Hilfe der JPMML-SkLearn Bibliothek.
treelite Kompiliert baumbasierte Ensemble-Modelle in C-Code zur Minimierung der Vorhersagelatenz.
emlearn Implementiert scikit-learn-Estimators in C99 für eingebettete Geräte und Mikrocontroller. Unterstützt mehrere Klassifizierungs-, Regressions- und Ausreißererkennungsmodelle.
Modell-Durchsatz
Intel(R) Extension für scikit-learn Hauptsächlich auf leistungsstarker Intel(R)-Hardware, beschleunigt einige scikit-learn-Modelle für Training und Inferenz unter bestimmten Umständen. Dieses Projekt wird von Intel(R) gepflegt und die scikit-learn-Maintainer sind nicht an der Entwicklung dieses Projekts beteiligt. Beachten Sie auch, dass die Verwendung der Tools und Estimators unter
scikit-learn-intelexin einigen Fällen zu anderen Ergebnissen führt alsscikit-learnselbst. Wenn Sie Probleme bei der Verwendung dieses Projekts haben, stellen Sie sicher, dass Sie potenzielle Probleme in den entsprechenden Repositories melden.
Schnittstelle zu R mit genomischen Anwendungen
BiocSklearn Stellt eine kleine Anzahl von Dimensionsreduktionsfunktionen als Illustration des Basilisk-Protokolls für die Schnittstelle zwischen Python und R bereit. Gedacht als Sprungbrett für eine vollständigere Interoperabilität.
Andere Estimators und Aufgaben#
Nicht alles gehört zum zentralen scikit-learn-Projekt oder ist dafür reif genug. Die folgenden Projekte bieten Schnittstellen, die scikit-learn ähneln, für zusätzliche Lernalgorithmen, Infrastrukturen und Aufgaben.
Zeitreihen und Prognose
aeon Ein sklearn-kompatibles Toolbox für maschinelles Lernen mit Zeitreihen (Fork von sktime).
Darts Eine Python-Bibliothek für benutzerfreundliche Prognosen und Anomalieerkennung auf Zeitreihen. Sie enthält eine Vielzahl von Modellen, von Klassikern wie ARIMA bis hin zu tiefen neuronalen Netzen. Die Prognosemodelle können alle auf die gleiche Weise verwendet werden, mit fit()- und predict()-Funktionen, ähnlich wie bei scikit-learn.
sktime Ein sklearn-kompatibles Toolbox für maschinelles Lernen mit Zeitreihen, einschließlich Zeitreihenklassifizierung/-regression und (überwachten/Panel-)Prognosen.
skforecast Eine Python-Bibliothek, die die Verwendung von scikit-learn-Regressoren als Multi-Step-Prognosemodelle erleichtert. Sie funktioniert auch mit jedem Regressor, der mit der scikit-learn API kompatibel ist.
tslearn Eine Machine-Learning-Bibliothek für Zeitreihen, die Werkzeuge zur Vorverarbeitung und Feature-Extraktion sowie spezielle Modelle für Clustering, Klassifizierung und Regression bietet.
Gradient (Tree) Boosting
Beachten Sie die eigenen modernen Gradient-Boosting-Estimators von scikit-learn: HistGradientBoostingClassifier und HistGradientBoostingRegressor.
XGBoost XGBoost ist eine optimierte verteilte Gradient-Boosting-Bibliothek, die darauf ausgelegt ist, hocheffizient, flexibel und portabel zu sein.
LightGBM LightGBM ist ein Gradient-Boosting-Framework, das baumbasierte Lernalgorithmen verwendet. Es ist für Verteilung und Effizienz konzipiert.
Strukturiertes Lernen
HMMLearn Implementierung von versteckten Markov-Modellen, die früher Teil von scikit-learn waren.
pomegranate Probabilistische Modellierung für Python, mit Schwerpunkt auf versteckten Markov-Modellen.
Tiefe neuronale Netze usw.
skorch Eine scikit-learn-kompatible Bibliothek für neuronale Netze, die PyTorch umhüllt.
scikeras bietet einen Wrapper um Keras für die Schnittstelle zu scikit-learn. SciKeras ist der Nachfolger von
tf.keras.wrappers.scikit_learn.
Föderiertes Lernen
Flower Ein benutzerfreundliches Framework für föderiertes Lernen mit einem einheitlichen Ansatz, der jede Workload, jedes ML-Framework und jede Programmiersprache föderieren kann.
Datenschutzfreundliches maschinelles Lernen
Concrete ML Ein datenschutzfreundliches ML-Framework, das auf Concrete aufbaut, mit Bindungen zu traditionellen ML-Frameworks, dank vollständig homomorpher Verschlüsselung. Die APIs der sogenannten Concrete ML eingebauten Modelle sind scikit-learn-APIs sehr ähnlich.
Breiter Geltungsbereich
mlxtend Enthält eine Reihe zusätzlicher Estimators sowie Dienstprogramme zur Visualisierung von Modellen.
scikit-lego Eine Reihe von scikit-learn-kompatiblen benutzerdefinierten Transformatoren, Modellen und Metriken, die sich auf die Lösung praktischer Aufgaben in der Industrie konzentrieren.
Andere Regression und Klassifizierung
gplearn Genetische Programmierung für symbolische Regressionsaufgaben.
scikit-multilearn Multi-Label-Klassifizierung mit Schwerpunkt auf der Manipulation des Label-Raums.
Dekompensation und Clustering
lda: Schnelle Implementierung von Latent Dirichlet Allocation in Cython, die Gibbs-Sampling verwendet, um aus der wahren Posterior-Verteilung zu sampeln. (Die Implementierung von
LatentDirichletAllocationin scikit-learn verwendet varianzbasierte Inferenz, um aus einer handhabbaren Annäherung der Posterior-Verteilung eines Topic-Modells zu sampeln.)kmodes K-Modes-Clustering-Algorithmus für kategoriale Daten und mehrere seiner Varianten.
hdbscan HDBSCAN und Robust Single Linkage Clustering-Algorithmen für robustes Clustering mit variabler Dichte. Seit scikit-learn Version 1.3.0 gibt es
HDBSCAN.
Vorverarbeitung
categorical-encoding Eine Bibliothek von sklearn-kompatiblen Encodern für kategoriale Variablen. Seit scikit-learn Version 1.3.0 gibt es
TargetEncoder.skrub : Erleichtert das Lernen auf DataFrames, mit sklearn-kompatiblen Encodern (für Kategorien, Daten, Zeichenketten) und mehr.
imbalanced-learn Verschiedene Methoden zum Unter- und Überabfragen von Datensätzen.
Feature-engine Eine Bibliothek von sklearn-kompatiblen Transformatoren für die Imputation fehlender Daten, kategoriale Kodierung, Variablentransformation, Diskretisierung, Ausreißerbehandlung und mehr. Feature-engine ermöglicht die Anwendung von Vorverarbeitungsschritten auf ausgewählte Gruppen von Variablen und ist vollständig mit der Scikit-learn Pipeline kompatibel.
Topologische Datenanalyse
giotto-tda Eine Bibliothek für die topologische Datenanalyse, die darauf abzielt, eine scikit-learn-kompatible API bereitzustellen. Sie bietet Werkzeuge zur Transformation von Dateneingaben (Punktwolken, Graphen, Zeitreihen, Bilder) in Formen, die für Berechnungen topologischer Zusammenfassungen geeignet sind, sowie Komponenten zur Extraktion von Mengen skalarer Merkmale topologischen Ursprungs, die neben anderen Feature-Extraktionsmethoden in scikit-learn verwendet werden können.
Statistische Modellierung mit Python#
Andere Pakete, die für Datenanalyse und maschinelles Lernen nützlich sind.
Pandas Werkzeuge für die Arbeit mit heterogenen und spaltenbasierten Daten, relationale Abfragen, Zeitreihen und grundlegende Statistiken.
statsmodels Schätzung und Analyse statistischer Modelle. Stärker auf statistische Tests und weniger auf Vorhersagen ausgerichtet als scikit-learn.
PyMC Bayesische statistische Modelle und Anpassungsalgorithmen.
Seaborn Eine auf Matplotlib basierende Visualisierungsbibliothek. Sie bietet eine High-Level-Schnittstelle zum Erstellen ansprechender statistischer Grafiken.
scikit-survival Eine Bibliothek, die Modelle zur Erstellung von Vorhersagen aus zensierten Zeitreihendaten (auch Überlebenszeitanalyse genannt) implementiert. Die Modelle sind vollständig mit scikit-learn kompatibel.
Pakete für Empfehlungssysteme#
implicit, Bibliothek für implizite Feedbackdatensätze.
lightfm Eine Python/Cython-Implementierung eines hybriden Empfehlungssystems.
Surprise Lib Bibliothek für explizite Feedbackdatensätze.
Domänenspezifische Pakete#
scikit-network Maschinelles Lernen auf Graphen.
scikit-image Bildverarbeitung und Computer Vision in Python.
Natural language toolkit (nltk) Verarbeitung natürlicher Sprache und maschinelles Lernen.
gensim Eine Bibliothek für Themenmodellierung, Dokumentenindizierung und Ähnlichkeitsabruf.
NiLearn Maschinelles Lernen für Neuroimaging.
AstroML Maschinelles Lernen für Astronomie.
Übersetzungen der scikit-learn-Dokumentation#
Ziel der Übersetzungen ist es, das Lesen und Verstehen in anderen Sprachen als Englisch zu erleichtern. Sie zielt darauf ab, Menschen zu helfen, die Englisch nicht verstehen oder Zweifel an seiner Interpretation haben. Außerdem lesen manche Leute die Dokumentation lieber in ihrer Muttersprache, aber bitte beachten Sie, dass die einzige offizielle Dokumentation die englische ist [1].
Diese Übersetzungsbemühungen sind Community-Initiativen und wir haben keine Kontrolle darüber. Wenn Sie beitragen oder ein Problem mit der Übersetzung melden möchten, wenden Sie sich bitte an die Autoren der Übersetzung. Einige verfügbare Übersetzungen sind hier verlinkt, um ihre Verbreitung zu verbessern und die Bemühungen der Community zu fördern.
Fußnoten