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 wie LogisticRegression oder LinearSVC.

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 durch tol bestimmt, welches für jeden Solver ein anderes Konvergenzkriterium spezifiziert.

  • ‘svd’: tol hat keine Auswirkung.

  • ‘cholesky’: tol hat keine Auswirkung.

  • ‘sparse_cg’: Norm der Residuen kleiner als tol.

  • ‘lsqr’: tol wird 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 tol und max_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.minimize implementiert ist. Er kann nur verwendet werden, wenn positive auf True gesetzt ist.

positivebool, Standardwert=False

Wenn auf True gesetzt, 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 X Merkmalnamen 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

Ridge

Ridge-Regression.

RidgeClassifierCV

Ridge-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ür self.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 X vorhersagen.

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_samples enthä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 auf y.

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=True aktiviert ist (siehe sklearn.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, an fit übergeben. Die Anforderung wird ignoriert, wenn keine Metadaten vorhanden sind.

  • False: Metadaten werden nicht angefordert und der Meta-Schätzer übergibt sie nicht an fit.

  • 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_weight in fit.

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=True aktiviert ist (siehe sklearn.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, an score übergeben. Die Anforderung wird ignoriert, wenn keine Metadaten vorhanden sind.

  • False: Metadaten werden nicht angefordert und der Meta-Schätzer übergibt sie nicht an score.

  • 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_weight in score.

Gibt zurück:
selfobject

Das aktualisierte Objekt.