RidgeClassifier#
- class sklearn.linear_model.RidgeClassifier(alpha=1.0, *, fit_intercept=True, copy_X=True, max_iter=None, tol=0.0001, class_weight=None, solver='auto', positive=False, random_state=None)[Quelle]#
Klassifikator mittels Ridge-Regression.
Dieser Klassifikator wandelt zuerst die Zielwerte in
{-1, 1}um und behandelt das Problem dann als Regressionsaufgabe (Multi-Output-Regression im Multiklassenfall).Lesen Sie mehr im Benutzerhandbuch.
- Parameter:
- alphafloat, default=1.0
Regulierungsstärke; muss eine positive Gleitkommazahl sein. Regulierung verbessert die Konditionierung des Problems und reduziert die Varianz der Schätzungen. Größere Werte spezifizieren stärkere Regulierung. Alpha entspricht
1 / (2C)in anderen linearen Modellen wieLogisticRegressionoderLinearSVC.- fit_interceptbool, Standardwert=True
Ob der Achsenabschnitt für dieses Modell berechnet werden soll. Wenn auf false gesetzt, wird kein Achsenabschnitt in Berechnungen verwendet (z.B. Daten werden als bereits zentriert erwartet).
- copy_Xbool, Standardwert=True
Wenn True, wird X kopiert; andernfalls kann es überschrieben werden.
- max_iterint, Standard=None
Maximale Anzahl von Iterationen für den Conjugate Gradient Solver. Der Standardwert wird von scipy.sparse.linalg bestimmt.
- tolfloat, Standard=1e-4
Die Präzision der Lösung (
coef_) wird durchtolbestimmt, welches für jeden Solver ein anderes Konvergenzkriterium spezifiziert.‘svd’:
tolhat keine Auswirkung.‘cholesky’:
tolhat keine Auswirkung.‘sparse_cg’: Norm der Residuen kleiner als
tol.‘lsqr’:
tolwird als atol und btol von scipy.sparse.linalg.lsqr gesetzt, die die Norm des Residuenvektors in Bezug auf die Normen der Matrix und der Koeffizienten steuern.‘sag’ und ‘saga’: Relative Änderung der Koeffizienten kleiner als
tol.‘lbfgs’: Maximum des absoluten (projizierten) Gradienten=max|Residuen| kleiner als
tol.
Geändert in Version 1.2: Standardwert von 1e-3 auf 1e-4 geändert, um mit anderen linearen Modellen übereinzustimmen.
- class_weightdict oder ‘balanced’, Standard=None
Gewichte, die den Klassen zugeordnet sind, in der Form
{Klassenbezeichnung: Gewicht}. Wenn nicht angegeben, wird angenommen, dass alle Klassen das Gewicht eins haben.Der Modus „balanced“ verwendet die Werte von y, um Gewichte automatisch invers proportional zur Klassenhäufigkeit in den Eingabedaten anzupassen, als
n_samples / (n_classes * np.bincount(y)).- solver{‘auto’, ‘svd’, ‘cholesky’, ‘lsqr’, ‘sparse_cg’, ‘sag’, ‘saga’, ‘lbfgs’}, default=’auto’
Löser, der in den rechnerischen Routinen verwendet werden soll
‚auto‘ wählt den Löser automatisch basierend auf dem Datentyp aus.
‚svd‘ verwendet eine Singulärwertzerlegung (Singular Value Decomposition, SVD) von X zur Berechnung der Ridge-Koeffizienten. Dies ist der stabilste Löser, insbesondere stabiler für singuläre Matrizen als ‚cholesky‘, aber auf Kosten einer langsameren Ausführung.
‘cholesky’ verwendet die Standardfunktion scipy.linalg.solve, um eine geschlossene Lösungsformel zu erhalten.
‘sparse_cg’ verwendet den Conjugate Gradient Solver, wie er in scipy.sparse.linalg.cg zu finden ist. Als iterativer Algorithmus ist dieser Solver für große Datenmengen besser geeignet als ‘cholesky’ (Möglichkeit zur Einstellung von
tolundmax_iter).‘lsqr’ verwendet die spezielle Routine für regularisierte kleinste Quadrate scipy.sparse.linalg.lsqr. Sie ist die schnellste und verwendet ein iteratives Verfahren.
‘sag’ verwendet einen Stochastic Average Gradient Descent und ‘saga’ seine unverzerrte und flexiblere Version namens SAGA. Beide Methoden verwenden ein iteratives Verfahren und sind oft schneller als andere Solver, wenn sowohl n_samples als auch n_features groß sind. Beachten Sie, dass die schnelle Konvergenz von ‘sag’ und ‘saga’ nur für Merkmale mit ungefähr gleicher Skalierung garantiert ist. Sie können die Daten mit einem Scaler aus sklearn.preprocessing vorverarbeiten.
Hinzugefügt in Version 0.17: Stochastic Average Gradient Descent Löser.
Hinzugefügt in Version 0.19: SAGA-Löser.
‘lbfgs’ verwendet den L-BFGS-B-Algorithmus, der in
scipy.optimize.minimizeimplementiert ist. Er kann nur verwendet werden, wennpositiveauf True gesetzt ist.
- positivebool, Standardwert=False
Wenn auf
Truegesetzt, werden die Koeffizienten gezwungen, positiv zu sein. In diesem Fall wird nur der ‚lbfgs‘-Löser unterstützt.- random_stateint, RandomState instance, default=None
Verwendet, wenn
solver== ‚sag‘ oder ‚saga‘ ist, um die Daten zu mischen. Siehe Glossar für Details.
- Attribute:
- coef_ndarray der Form (1, n_features) oder (n_classes, n_features)
Koeffizienten der Merkmale in der Entscheidungsfunktion.
coef_hat die Form (1, n_features), wenn das gegebene Problem binär ist.- intercept_float oder ndarray der Form (n_targets,)
Unabhängiger Term in der Entscheidungsfunktion. Auf 0.0 gesetzt, wenn
fit_intercept = False.- n_iter_None oder ndarray der Form (n_targets,)
Tatsächliche Anzahl der Iterationen für jedes Ziel. Nur für die Solver sag und lsqr verfügbar. Andere Solver geben None zurück.
- classes_ndarray der Form (n_classes,)
Die Klassenbezeichnungen.
- n_features_in_int
Anzahl der während des fits gesehenen Merkmale.
Hinzugefügt in Version 0.24.
- feature_names_in_ndarray mit Form (
n_features_in_,) Namen der während fit gesehenen Merkmale. Nur definiert, wenn
XMerkmalnamen hat, die alle Zeichenketten sind.Hinzugefügt in Version 1.0.
- solver_str
Der Solver, der zur Trainingszeit von den Rechenroutinen verwendet wurde.
Hinzugefügt in Version 1.5.
Siehe auch
RidgeRidge-Regression.
RidgeClassifierCVRidge-Klassifikator mit integrierter Kreuzvalidierung.
Anmerkungen
Für Mehrklassenklassifizierung werden n_class Klassifikatoren in einem One-versus-All-Ansatz trainiert. Konkret wird dies durch Nutzung der Unterstützung für multivariate Antworten in Ridge implementiert.
Beispiele
>>> from sklearn.datasets import load_breast_cancer >>> from sklearn.linear_model import RidgeClassifier >>> X, y = load_breast_cancer(return_X_y=True) >>> clf = RidgeClassifier().fit(X, y) >>> clf.score(X, y) 0.9595...
- decision_function(X)[Quelle]#
Konfidenz-Scores für Stichproben vorhersagen.
Der Konfidenz-Score für eine Stichprobe ist proportional zum vorzeichenbehafteten Abstand dieser Stichprobe zur Hyperebene.
- Parameter:
- X{array-like, sparse matrix} der Form (n_samples, n_features)
Die Datenmatrix, für die wir die Konfidenz-Scores erhalten möchten.
- Gibt zurück:
- scoresndarray der Form (n_samples,) oder (n_samples, n_classes)
Konfidenz-Scores pro
(n_samples, n_classes)-Kombination. Im binären Fall, Konfidenz-Score fürself.classes_[1], wobei >0 bedeutet, dass diese Klasse vorhergesagt würde.
- fit(X, y, sample_weight=None)[Quelle]#
Ridge-Klassifikatormodell trainieren.
- Parameter:
- X{ndarray, sparse matrix} der Form (n_samples, n_features)
Trainingsdaten.
- yndarray der Form (n_samples,)
Zielwerte.
- sample_weightfloat oder ndarray der Form (n_samples,), default=None
Einzelne Gewichte für jede Stichprobe. Wenn eine Gleitkommazahl angegeben wird, hat jede Stichprobe das gleiche Gewicht.
Hinzugefügt in Version 0.17: Unterstützung für sample_weight für RidgeClassifier.
- Gibt zurück:
- selfobject
Instanz des Schätzers.
- get_metadata_routing()[Quelle]#
Holt das Metadaten-Routing dieses Objekts.
Bitte prüfen Sie im Benutzerhandbuch, wie der Routing-Mechanismus funktioniert.
- Gibt zurück:
- routingMetadataRequest
Ein
MetadataRequest, der Routing-Informationen kapselt.
- get_params(deep=True)[Quelle]#
Holt Parameter für diesen Schätzer.
- Parameter:
- deepbool, default=True
Wenn True, werden die Parameter für diesen Schätzer und die enthaltenen Unterobjekte, die Schätzer sind, zurückgegeben.
- Gibt zurück:
- paramsdict
Parameternamen, zugeordnet ihren Werten.
- predict(X)[Quelle]#
Klassenlabels für Samples in
Xvorhersagen.- Parameter:
- X{array-artig, spärre Matrix} der Form (n_samples, n_features)
Die Datenmatrix, für die wir die Ziele vorhersagen wollen.
- Gibt zurück:
- y_predndarray der Form (n_samples,) oder (n_samples, n_outputs)
Vektor oder Matrix mit den Vorhersagen. Bei binären und Mehrklassenproblemen ist dies ein Vektor, der
n_samplesenthält. Bei einem Multi-Label-Problem gibt er eine Matrix der Form(n_samples, n_outputs)zurück.
- score(X, y, sample_weight=None)[Quelle]#
Gibt die Genauigkeit für die bereitgestellten Daten und Bezeichnungen zurück.
Bei der Multi-Label-Klassifizierung ist dies die Subset-Genauigkeit, eine strenge Metrik, da für jede Stichprobe verlangt wird, dass jede Label-Menge korrekt vorhergesagt wird.
- Parameter:
- Xarray-like der Form (n_samples, n_features)
Teststichproben.
- yarray-like der Form (n_samples,) oder (n_samples, n_outputs)
Wahre Bezeichnungen für
X.- sample_weightarray-like der Form (n_samples,), Standardwert=None
Stichprobengewichte.
- Gibt zurück:
- scorefloat
Mittlere Genauigkeit von
self.predict(X)in Bezug aufy.
- set_fit_request(*, sample_weight: bool | None | str = '$UNCHANGED$') RidgeClassifier[Quelle]#
Konfiguriert, ob Metadaten für die
fit-Methode angefordert werden sollen.Beachten Sie, dass diese Methode nur relevant ist, wenn dieser Schätzer als Unter-Schätzer innerhalb eines Meta-Schätzers verwendet wird und Metadaten-Routing mit
enable_metadata_routing=Trueaktiviert ist (siehesklearn.set_config). Bitte lesen Sie das Benutzerhandbuch, um zu erfahren, wie der Routing-Mechanismus funktioniert.Die Optionen für jeden Parameter sind
True: Metadaten werden angefordert und, falls vorhanden, anfitübergeben. Die Anforderung wird ignoriert, wenn keine Metadaten vorhanden sind.False: Metadaten werden nicht angefordert und der Meta-Schätzer übergibt sie nicht anfit.None: Metadaten werden nicht angefordert und der Meta-Schätzer löst einen Fehler aus, wenn der Benutzer sie bereitstellt.str: Metadaten sollten mit diesem Alias an den Meta-Schätzer übergeben werden und nicht mit dem ursprünglichen Namen.
Der Standardwert (
sklearn.utils.metadata_routing.UNCHANGED) behält die bestehende Anforderung bei. Dies ermöglicht es Ihnen, die Anforderung für einige Parameter zu ändern und für andere nicht.Hinzugefügt in Version 1.3.
- Parameter:
- sample_weightstr, True, False, oder None, Standardwert=sklearn.utils.metadata_routing.UNCHANGED
Metadaten-Routing für den Parameter
sample_weightinfit.
- Gibt zurück:
- selfobject
Das aktualisierte Objekt.
- set_params(**params)[Quelle]#
Setzt die Parameter dieses Schätzers.
Die Methode funktioniert sowohl bei einfachen Schätzern als auch bei verschachtelten Objekten (wie
Pipeline). Letztere haben Parameter der Form<component>__<parameter>, so dass es möglich ist, jede Komponente eines verschachtelten Objekts zu aktualisieren.- Parameter:
- **paramsdict
Schätzer-Parameter.
- Gibt zurück:
- selfestimator instance
Schätzer-Instanz.
- set_score_request(*, sample_weight: bool | None | str = '$UNCHANGED$') RidgeClassifier[Quelle]#
Konfiguriert, ob Metadaten für die
score-Methode angefordert werden sollen.Beachten Sie, dass diese Methode nur relevant ist, wenn dieser Schätzer als Unter-Schätzer innerhalb eines Meta-Schätzers verwendet wird und Metadaten-Routing mit
enable_metadata_routing=Trueaktiviert ist (siehesklearn.set_config). Bitte lesen Sie das Benutzerhandbuch, um zu erfahren, wie der Routing-Mechanismus funktioniert.Die Optionen für jeden Parameter sind
True: Metadaten werden angefordert und, falls vorhanden, anscoreübergeben. Die Anforderung wird ignoriert, wenn keine Metadaten vorhanden sind.False: Metadaten werden nicht angefordert und der Meta-Schätzer übergibt sie nicht anscore.None: Metadaten werden nicht angefordert und der Meta-Schätzer löst einen Fehler aus, wenn der Benutzer sie bereitstellt.str: Metadaten sollten mit diesem Alias an den Meta-Schätzer übergeben werden und nicht mit dem ursprünglichen Namen.
Der Standardwert (
sklearn.utils.metadata_routing.UNCHANGED) behält die bestehende Anforderung bei. Dies ermöglicht es Ihnen, die Anforderung für einige Parameter zu ändern und für andere nicht.Hinzugefügt in Version 1.3.
- Parameter:
- sample_weightstr, True, False, oder None, Standardwert=sklearn.utils.metadata_routing.UNCHANGED
Metadaten-Routing für den Parameter
sample_weightinscore.
- Gibt zurück:
- selfobject
Das aktualisierte Objekt.
Galeriebeispiele#
Klassifikation von Textdokumenten mit spärlichen Merkmalen