NuSVR#
- class sklearn.svm.NuSVR(*, nu=0.5, C=1.0, kernel='rbf', degree=3, gamma='scale', coef0=0.0, shrinking=True, tol=0.001, cache_size=200, verbose=False, max_iter=-1)[Quelle]#
Nu Support Vector Regression.
Ähnlich wie NuSVC, verwendet für Regression einen Parameter nu, um die Anzahl der Stützvektoren zu steuern. Im Gegensatz zu NuSVC, wo nu C ersetzt, ersetzt hier nu den Parameter epsilon von epsilon-SVR.
Die Implementierung basiert auf libsvm.
Lesen Sie mehr im Benutzerhandbuch.
- Parameter:
- nufloat, Standard=0.5
Eine obere Schranke für den Anteil der Trainingsfehler und eine untere Schranke für den Anteil der Stützvektoren. Sollte im Intervall (0, 1] liegen. Standardmäßig wird 0.5 verwendet.
- Cfloat, Standardwert=1.0
Der Strafterm C für den Fehlerterm. Für eine intuitive Visualisierung der Auswirkungen der Skalierung des Regularisierungsparameters C siehe Skalierung des Regularisierungsparameters für SVCs.
- kernel{‘linear’, ‘poly’, ‘rbf’, ‘sigmoid’, ‘precomputed’} oder aufrufbar, Standard=’rbf’
Gibt den zu verwendenden Kernel-Typ für den Algorithmus an. Wenn keiner angegeben ist, wird 'rbf' verwendet. Wenn eine aufrufbare Funktion angegeben wird, wird sie zur Vorberechnung der Kernel-Matrix verwendet. Für eine intuitive Visualisierung verschiedener Kernel-Typen siehe Siehe Support Vector Regression (SVR) mit linearen und nichtlinearen Kerneln
- degreeint, Standard=3
Grad der Polynomkernfunktion (‘poly’). Muss nicht-negativ sein. Wird von allen anderen Kernels ignoriert.
- gamma{‘scale’, ‘auto’} oder float, Standard=’scale’
Kernel-Koeffizient für ‘rbf’, ‘poly’ und ‘sigmoid’.
Wenn
gamma='scale'(Standard) übergeben wird, wird 1 / (n_features * X.var()) als Wert für gamma verwendet,wenn ‘auto’, wird 1 / n_features verwendet
Wenn float, muss nicht-negativ sein.
Geändert in Version 0.22: Der Standardwert von
gammawurde von ‘auto’ auf ‘scale’ geändert.- coef0float, Standard=0.0
Unabhängiger Term in der Kernelfunktion. Er ist nur in ‘poly’ und ‘sigmoid’ signifikant.
- shrinkingbool, Standard=True
Ob die „shrinking“-Heuristik verwendet werden soll. Siehe Benutzerhandbuch.
- tolfloat, Standard=1e-3
Toleranz für das Abbruchkriterium.
- cache_sizefloat, Standard=200
Gibt die Größe des Kernel-Caches an (in MB).
- verbosebool, default=False
Aktiviert ausführliche Ausgabe. Beachten Sie, dass diese Einstellung eine laufende Prozess-Einstellung in libsvm nutzt, die, wenn sie aktiviert ist, in einem Multithreading-Kontext möglicherweise nicht ordnungsgemäß funktioniert.
- max_iterint, Standard=-1
Harte Obergrenze für Iterationen innerhalb des Solvers oder -1 für keine Obergrenze.
- Attribute:
coef_ndarray der Form (1, n_features)Gewichte, die den Merkmalen zugeordnet sind, wenn
kernel="linear".- dual_coef_ndarray der Form (1, n_SV)
Koeffizienten der Stützvektoren in der Entscheidungfunktion.
- fit_status_int
0, wenn korrekt angepasst, 1 andernfalls (löst eine Warnung aus)
- intercept_ndarray of shape (1,)
Konstanten in der Entscheidungsfunktion.
- 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.
- n_iter_int
Anzahl der Iterationen, die von der Optimierungsroutine zur Anpassung des Modells durchgeführt werden.
Hinzugefügt in Version 1.1.
n_support_ndarray der Form (1,), dtype=int32Anzahl der Support-Vektoren pro Klasse.
- shape_fit_tuple von int der Form (n_dimensions_of_X,)
Array-Dimensionen des Trainingsvektors
X.- support_ndarray der Form (n_SV,)
Indizes der Support-Vektoren.
- support_vectors_ndarray der Form (n_SV, n_features)
Support-Vektoren.
Siehe auch
Referenzen
Beispiele
>>> from sklearn.svm import NuSVR >>> from sklearn.pipeline import make_pipeline >>> from sklearn.preprocessing import StandardScaler >>> import numpy as np >>> n_samples, n_features = 10, 5 >>> np.random.seed(0) >>> y = np.random.randn(n_samples) >>> X = np.random.randn(n_samples, n_features) >>> regr = make_pipeline(StandardScaler(), NuSVR(C=1.0, nu=0.1)) >>> regr.fit(X, y) Pipeline(steps=[('standardscaler', StandardScaler()), ('nusvr', NuSVR(nu=0.1))])
- fit(X, y, sample_weight=None)[Quelle]#
Passt das SVM-Modell an die gegebenen Trainingsdaten an.
- Parameter:
- X{array-artig, spärs matrix} der Form (n_samples, n_features) oder (n_samples, n_samples)
Trainingsvektoren, wobei
n_samplesdie Anzahl der Samples undn_featuresdie Anzahl der Merkmale ist. Für kernel="precomputed" hat X die erwartete Form (n_samples, n_samples).- yarray-like von Form (n_samples,)
Zielwerte (Klassenlabels bei Klassifizierung, reelle Zahlen bei Regression).
- sample_weightarray-like der Form (n_samples,), Standardwert=None
Gewichte pro Sample. Skaliert C pro Sample neu. Höhere Gewichte zwingen den Klassifikator, mehr Betonung auf diese Punkte zu legen.
- Gibt zurück:
- selfobject
Angepasster Schätzer.
Anmerkungen
Wenn X und y nicht C-geordnete und zusammenhängende Arrays von np.float64 sind und X keine scipy.sparse.csr_matrix ist, können X und/oder y kopiert werden.
Wenn X ein dichtes Array ist, unterstützen die anderen Methoden keine spärlichen Matrizen als Eingabe.
- 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]#
Führt eine Regression für Stichproben in X durch.
Für ein One-Class-Modell wird +1 (Inlier) oder -1 (Outlier) zurückgegeben.
- Parameter:
- X{array-like, sparse matrix} der Form (n_samples, n_features)
Für kernel="precomputed" hat X die erwartete Form (n_samples_test, n_samples_train).
- Gibt zurück:
- y_predndarray von Form (n_samples,)
Die vorhergesagten Werte.
- score(X, y, sample_weight=None)[Quelle]#
Gibt den Bestimmtheitskoeffizienten auf Testdaten zurück.
Der Bestimmtheitskoeffizient, \(R^2\), ist definiert als \((1 - \frac{u}{v})\), wobei \(u\) die Summe der quadrierten Residuen ist
((y_true - y_pred)** 2).sum()und \(v\) die gesamte Summe der quadrierten Abweichungen vom Mittelwert ist((y_true - y_true.mean()) ** 2).sum(). Der bestmögliche Wert ist 1.0 und er kann negativ sein (da das Modell beliebig schlechter sein kann). Ein konstantes Modell, das immer den Erwartungswert vonyvorhersagt, unabhängig von den Eingabemerkmalen, würde einen \(R^2\)-Wert von 0.0 erzielen.- Parameter:
- Xarray-like der Form (n_samples, n_features)
Teststichproben. Für einige Schätzer kann dies eine vorab berechnete Kernelmatrix oder eine Liste von generischen Objekten sein, stattdessen mit der Form
(n_samples, n_samples_fitted), wobein_samples_fitteddie Anzahl der für die Anpassung des Schätzers verwendeten Stichproben ist.- yarray-like der Form (n_samples,) oder (n_samples, n_outputs)
Wahre Werte für
X.- sample_weightarray-like der Form (n_samples,), Standardwert=None
Stichprobengewichte.
- Gibt zurück:
- scorefloat
\(R^2\) von
self.predict(X)bezogen aufy.
Anmerkungen
Der \(R^2\)-Wert, der bei Aufruf von
scoreauf einem Regressor verwendet wird, nutzt ab Version 0.23multioutput='uniform_average', um konsistent mit dem Standardwert vonr2_scorezu sein. Dies beeinflusst diescore-Methode aller Multioutput-Regressoren (mit Ausnahme vonMultiOutputRegressor).
- set_fit_request(*, sample_weight: bool | None | str = '$UNCHANGED$') NuSVR[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$') NuSVR[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.