RegressorMixin#
- class sklearn.base.RegressorMixin[Quelle]#
Mixin-Klasse für alle Regressions-Schätzer in scikit-learn.
Dieser Mixin definiert die folgende Funktionalität
setzt den Estimator-Typ durch das Tag
estimator_typeauf"regressor";scoreMethode, die standardmäßigr2_scoreverwendet.erzwingt, dass
fityüber das Tagrequires_yübergeben muss, was durch Setzen des Regressor-Typ-Tags geschieht.
Lesen Sie mehr im Benutzerhandbuch.
Beispiele
>>> import numpy as np >>> from sklearn.base import BaseEstimator, RegressorMixin >>> # Mixin classes should always be on the left-hand side for a correct MRO >>> class MyEstimator(RegressorMixin, BaseEstimator): ... def __init__(self, *, param=1): ... self.param = param ... def fit(self, X, y=None): ... self.is_fitted_ = True ... return self ... def predict(self, X): ... return np.full(shape=X.shape[0], fill_value=self.param) >>> estimator = MyEstimator(param=0) >>> X = np.array([[1, 2], [2, 3], [3, 4]]) >>> y = np.array([-1, 0, 1]) >>> estimator.fit(X, y).predict(X) array([0, 0, 0]) >>> estimator.score(X, y) 0.0
- 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 totale Summe der Quadrate ist((y_true - y_true.mean()) ** 2).sum(). Der bestmögliche Score ist 1.0 und er kann negativ sein (da das Modell beliebig schlechter sein kann). Ein konstantes Modell, das immer den erwarteten Wert vonyvorhersagt, unabhängig von den Eingabemerkmalen, würde einen \(R^2\)-Score von 0.0 erhalten.- 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\)-Score, der beim Aufruf von
scoreauf einem Regressor verwendet wird, nutzt ab Version 0.23multioutput='uniform_average', um mit dem Standardwert vonr2_scorekonsistent zu bleiben. Dies beeinflusst diescoreMethode aller Multi-Output-Regressoren (mit Ausnahme vonMultiOutputRegressor).