SGDRegressor#
- class sklearn.linear_model.SGDRegressor(loss='squared_error', *, penalty='l2', alpha=0.0001, l1_ratio=0.15, fit_intercept=True, max_iter=1000, tol=0.001, shuffle=True, verbose=0, epsilon=0.1, random_state=None, learning_rate='invscaling', eta0=0.01, power_t=0.25, early_stopping=False, validation_fraction=0.1, n_iter_no_change=5, warm_start=False, average=False)[source]#
Lineares Modell, das durch Minimierung eines regularisierten empirischen Verlusts mit SGD angepasst wird.
SGD steht für Stochastic Gradient Descent: der Gradient der Verlustfunktion wird für jeden einzelnen Datenpunkt geschätzt und das Modell wird dabei mit abnehmender Stärke (auch Lernrate genannt) aktualisiert.
Der Regularisierer ist eine Strafe, die zur Verlustfunktion addiert wird, um die Modellparameter zum Nullvektor hin zu schrumpfen, indem entweder die quadrierte Euklidische Norm L2 oder die absolute Norm L1 oder eine Kombination aus beidem (Elastic Net) verwendet wird. Wenn der Parameter-Update aufgrund des Regularisierers über den Wert 0.0 hinausgeht, wird das Update auf 0.0 abgeschnitten, um das Erlernen von dünnen Modellen zu ermöglichen und eine Online-Merkmalsexzitation zu erreichen.
Diese Implementierung arbeitet mit Daten, die als dichte Numpy-Arrays von Gleitkommawerten für die Merkmale repräsentiert sind.
Weitere Informationen finden Sie im Benutzerhandbuch.
- Parameter:
- lossstr, default=’squared_error’
Die zu verwendende Verlustfunktion. Die möglichen Werte sind ‘squared_error’, ‘huber’, ‘epsilon_insensitive’ oder ‘squared_epsilon_insensitive’.
‘squared_error’ bezieht sich auf die gewöhnliche kleinste Quadrate-Anpassung. ‘huber’ modifiziert ‘squared_error’, um weniger Wert auf die korrekte Behandlung von Ausreißern zu legen, indem es ab einem Abstand von epsilon von quadratischer zu linearer Verlustfunktion wechselt. ‘epsilon_insensitive’ ignoriert Fehler, die kleiner als epsilon sind, und ist darüber linear; dies ist die Verlustfunktion, die in SVR verwendet wird. ‘squared_epsilon_insensitive’ ist dasselbe, wird aber ab einer Toleranz von epsilon zur quadratischen Verlustfunktion.
Weitere Details zu den Formeln der Verlustfunktionen finden Sie im Benutzerhandbuch.
- penalty{‘l2’, ‘l1’, ‘elasticnet’, None}, default=’l2’
Die zu verwendende Strafe (auch Regularisierungsterm) genannt. Standardmäßig ‘l2’, was der Standard-Regularisierer für lineare SVM-Modelle ist. ‘l1’ und ‘elasticnet’ können zu einer Sparsity im Modell führen (Merkmalsauswahl), die mit ‘l2’ nicht erreichbar ist. Es wird keine Strafe hinzugefügt, wenn sie auf
Nonegesetzt ist.Sie können eine Visualisierung der Strafen in SGD: Penalties sehen.
- alphafloat, default=0.0001
Konstante, die den Regularisierungsterm multipliziert. Je höher der Wert, desto stärker die Regularisierung. Wird auch zur Berechnung der Lernrate verwendet, wenn
learning_rateauf ‘optimal’ gesetzt ist. Werte müssen im Bereich[0.0, inf)liegen.- l1_ratiofloat, default=0.15
Der Elastic Net-Mischparameter, mit 0 <= l1_ratio <= 1. l1_ratio=0 entspricht der L2-Strafe, l1_ratio=1 der L1-Strafe. Wird nur verwendet, wenn
penalty‘elasticnet’ ist. Werte müssen im Bereich[0.0, 1.0]liegen oder könnenNonesein, wennpenaltynicht ‘elasticnet’ ist.Geändert in Version 1.7:
l1_ratiokannNonesein, wennpenaltynicht “elasticnet” ist.- fit_interceptbool, Standardwert=True
Ob der Achsenabschnitt geschätzt werden soll oder nicht. Wenn False, wird angenommen, dass die Daten bereits zentriert sind.
- max_iterint, default=1000
Die maximale Anzahl von Durchläufen über die Trainingsdaten (auch Epochen genannt). Dies beeinflusst nur das Verhalten in der
fit-Methode und nicht diepartial_fit-Methode. Werte müssen im Bereich[1, inf)liegen.Hinzugefügt in Version 0.19.
- tolfloat oder None, default=1e-3
Das Abbruchkriterium. Wenn es nicht None ist, stoppt das Training, wenn (loss > best_loss - tol) für
n_iter_no_changeaufeinanderfolgende Epochen. Die Konvergenz wird gegen den Trainingsverlust oder den Validierungsverlust geprüft, abhängig vom Parameterearly_stopping. Werte müssen im Bereich[0.0, inf)liegen.Hinzugefügt in Version 0.19.
- shufflebool, Standard=True
Ob die Trainingsdaten nach jeder Epoche gemischt werden sollen oder nicht.
- verboseint, default=0
Die Ausführlichkeitsstufe. Werte müssen im Bereich
[0, inf)liegen.- epsilonfloat, default=0.1
Epsilon in den epsilon-unempfindlichen Verlustfunktionen; nur wenn
loss‘huber’, ‘epsilon_insensitive’ oder ‘squared_epsilon_insensitive’ ist. Für ‘huber’ bestimmt dies die Schwelle, ab der es weniger wichtig wird, die Vorhersage exakt zu treffen. Bei ‘epsilon_insensitive’ werden alle Unterschiede zwischen der aktuellen Vorhersage und dem korrekten Label ignoriert, wenn sie kleiner als dieser Schwellenwert sind. Werte müssen im Bereich[0.0, inf)liegen.- random_stateint, RandomState instance, default=None
Wird zum Mischen der Daten verwendet, wenn
shuffleaufTruegesetzt ist. Übergeben Sie eine Ganzzahl für reproduzierbare Ausgaben über mehrere Funktionsaufrufe hinweg. Siehe Glossar.- learning_ratestr, default=’invscaling’
Der Lernratenschema
‘constant’:
eta = eta0‘optimal’:
eta = 1.0 / (alpha * (t + t0)), wobei t0 von einer von Leon Bottou vorgeschlagenen Heuristik gewählt wird.‘invscaling’:
eta = eta0 / pow(t, power_t)‘adaptive’: eta = eta0, solange das Training abnimmt. Jedes Mal, wenn n_iter_no_change aufeinanderfolgende Epochen den Trainingsverlust nicht um tol verringern oder den Validierungs-Score nicht um tol erhöhen, wenn early_stopping True ist, wird die aktuelle Lernrate durch 5 geteilt.
‘pa1’: passive-aggressive algorithm 1, siehe [1]. Nur mit
loss='epsilon_insensitive'. Der Update istw += eta y xmiteta = min(eta0, loss/||x||**2).‘pa2’: passive-aggressive algorithm 2, siehe [1]. Nur mit
loss='epsilon_insensitive'. Der Update istw += eta y xmiteta = hinge_loss / (||x||**2 + 1/(2 eta0)).
Hinzugefügt in Version 0.20: Option ‘adaptive’ hinzugefügt.
Hinzugefügt in Version 1.8: Optionen ‘pa1’ und ‘pa2’ hinzugefügt
- eta0float, default=0.01
Die anfängliche Lernrate für die Schemata ‘constant’, ‘invscaling’ oder ‘adaptive’. Der Standardwert ist 0.01. Werte müssen im Bereich
(0.0, inf)liegen.Für PA-1 (
learning_rate=pa1) und PA-II (pa2) gibt sie den Aggressivitäts-Parameter für den passiv-aggressiven Algorithmus an, siehe [1], wo er C genannt wird.Für PA-I ist es die maximale Schrittgröße.
Für PA-II regularisiert es die Schrittgröße (je kleiner
eta0, desto stärker die Regularisierung).
Als allgemeine Faustregel für PA sollte
eta0klein sein, wenn die Daten verrauscht sind.- power_tfloat, default=0.25
Der Exponent für die umgekehrt proportionale Lernrate. Werte müssen im Bereich
[0.0, inf)liegen.Veraltet seit Version 1.8: Negative Werte für
power_tsind in Version 1.8 veraltet und lösen in 1.10 einen Fehler aus. Verwenden Sie stattdessen Werte im Bereich [0.0, inf).- early_stoppingbool, default=False
Ob Early Stopping verwendet werden soll, um das Training zu beenden, wenn sich der Validierungs-Score nicht verbessert. Wenn auf True gesetzt, wird automatisch ein Bruchteil der Trainingsdaten als Validierungsdatensatz beiseite gelegt und das Training beendet, wenn sich der Validierungs-Score, der von der
score-Methode zurückgegeben wird, nicht um mindestenstolfürn_iter_no_changeaufeinanderfolgende Epochen verbessert.Siehe Early stopping of Stochastic Gradient Descent für ein Beispiel der Effekte von Early Stopping.
Hinzugefügt in Version 0.20: Option ‘early_stopping’ hinzugefügt.
- validation_fractionfloat, default=0.1
Der Anteil der Trainingsdaten, der als Validierungsdatensatz für Early Stopping beiseite gelegt wird. Muss zwischen 0 und 1 liegen. Wird nur verwendet, wenn
early_stoppingTrue ist. Werte müssen im Bereich(0.0, 1.0)liegen.Hinzugefügt in Version 0.20: Option ‘validation_fraction’ hinzugefügt.
- n_iter_no_changeint, default=5
Anzahl der Iterationen ohne Verbesserung, auf die gewartet wird, bevor das Training gestoppt wird. Die Konvergenz wird gegen den Trainingsverlust oder den Validierungsverlust geprüft, abhängig vom Parameter
early_stopping. Ganzzahlige Werte müssen im Bereich[1, max_iter)liegen.Hinzugefügt in Version 0.20: Option ‘n_iter_no_change’ hinzugefügt.
- warm_startbool, Standard=False
Wenn auf True gesetzt, wird die Lösung des vorherigen Aufrufs von fit als Initialisierung wiederverwendet, andernfalls wird die vorherige Lösung einfach verworfen. Siehe das Glossar.
Wiederholtes Aufrufen von fit oder partial_fit, wenn warm_start True ist, kann zu einer anderen Lösung führen als beim einmaligen Aufrufen von fit, aufgrund der Art und Weise, wie die Daten gemischt werden. Wenn eine dynamische Lernrate verwendet wird, wird die Lernrate in Abhängigkeit von der Anzahl der bereits gesehenen Stichproben angepasst. Das Aufrufen von
fitsetzt diesen Zähler zurück, währendpartial_fitdazu führt, dass der vorhandene Zähler erhöht wird.- averagebool oder int, default=False
Wenn auf True gesetzt, werden die gemittelten SGD-Gewichte über alle Updates berechnet und das Ergebnis im Attribut
coef_gespeichert. Wenn auf eine Ganzzahl größer als 1 gesetzt, beginnt die Mittelung, sobald die Gesamtzahl der gesehenen Stichprobenaverageerreicht. Also wirdaverage=10nach dem Sehen von 10 Stichproben mit der Mittelung beginnen.
- Attribute:
- coef_ndarray of shape (n_features,)
Den Merkmalen zugeordnete Gewichte.
- intercept_ndarray of shape (1,)
Der Achsenabschnittsterm.
- n_iter_int
Die tatsächliche Anzahl von Iterationen, bevor das Abbruchkriterium erreicht wurde.
- t_int
Anzahl der während des Trainings durchgeführten Gewichtungsaktualisierungen. Gleich wie
(n_iter_ * n_samples + 1).- 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.
Siehe auch
HuberRegressorLineares Regressionsmodell, das robust gegenüber Ausreißern ist.
LarsLeast Angle Regression Modell.
LassoLineares Modell trainiert mit L1-Prior als Regularisierer.
RANSACRegressorRANSAC (RANdom SAmple Consensus) Algorithmus.
RidgeLineare Kleinste-Quadrate mit l2-Regularisierung.
sklearn.svm.SVREpsilon-Support Vector Regression.
TheilSenRegressorRobuster multivariater Regressionsestimator nach Theil-Sen.
Referenzen
[1] (1,2)Online Passive-Aggressive Algorithms <http://jmlr.csail.mit.edu/papers/volume7/crammer06a/crammer06a.pdf> K. Crammer, O. Dekel, J. Keshat, S. Shalev-Shwartz, Y. Singer - JMLR (2006)
Beispiele
>>> import numpy as np >>> from sklearn.linear_model import SGDRegressor >>> from sklearn.pipeline import make_pipeline >>> from sklearn.preprocessing import StandardScaler >>> n_samples, n_features = 10, 5 >>> rng = np.random.RandomState(0) >>> y = rng.randn(n_samples) >>> X = rng.randn(n_samples, n_features) >>> # Always scale the input. The most convenient way is to use a pipeline. >>> reg = make_pipeline(StandardScaler(), ... SGDRegressor(max_iter=1000, tol=1e-3)) >>> reg.fit(X, y) Pipeline(steps=[('standardscaler', StandardScaler()), ('sgdregressor', SGDRegressor())])
- densify()[source]#
Konvertiert die Koeffizientenmatrix in ein dichtes Array-Format.
Konvertiert das Mitglied
coef_(zurück) in ein numpy.ndarray. Dies ist das Standardformat voncoef_und wird für das Training benötigt, daher muss diese Methode nur auf Modellen aufgerufen werden, die zuvor verknappt wurden; andernfalls ist sie eine No-Op.- Gibt zurück:
- self
Angepasster Schätzer.
- fit(X, y, coef_init=None, intercept_init=None, sample_weight=None)[source]#
Lineares Modell mit stochastischem Gradientenabstieg anpassen.
- Parameter:
- X{array-like, sparse matrix}, shape (n_samples, n_features)
Trainingsdaten.
- yndarray der Form (n_samples,)
Zielwerte.
- coef_initndarray of shape (n_features,), default=None
Die anfänglichen Koeffizienten zum Aufwärmen der Optimierung.
- intercept_initndarray of shape (1,), default=None
Der anfängliche Achsenabschnitt zum Aufwärmen der Optimierung.
- sample_weightarray-like, shape (n_samples,), default=None
Gewichte, die auf einzelne Stichproben angewendet werden (1. für ungewichtet).
- Gibt zurück:
- selfobject
Angepasster
SGDRegressor-Schätzer.
- get_metadata_routing()[source]#
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)[source]#
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.
- partial_fit(X, y, sample_weight=None)[source]#
Eine Epoche stochastischen Gradientenabstiegs auf gegebenen Stichproben durchführen.
Intern verwendet diese Methode
max_iter = 1. Daher ist nicht garantiert, dass nach einmaligem Aufruf ein Minimum der Kostenfunktion erreicht wird. Aspekte wie die Konvergenz des Ziels und Early Stopping sollten vom Benutzer gehandhabt werden.- Parameter:
- X{array-like, sparse matrix}, shape (n_samples, n_features)
Teilmenge der Trainingsdaten.
- ynumpy array of shape (n_samples,)
Teilmenge der Zielwerte.
- sample_weightarray-like, shape (n_samples,), default=None
Gewichte, die auf einzelne Stichproben angewendet werden. Wenn nicht angegeben, werden einheitliche Gewichte angenommen.
- Gibt zurück:
- selfobject
Gibt eine Instanz von self zurück.
- predict(X)[source]#
Vorhersage mit dem linearen Modell.
- Parameter:
- X{array-like, sparse matrix}, shape (n_samples, n_features)
Eingabedaten.
- Gibt zurück:
- ndarray of shape (n_samples,)
Vorhergesagte Zielwerte pro Element in X.
- score(X, y, sample_weight=None)[source]#
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
((y_true - y_pred)** 2).sum()und \(v\) die Summe der gesamten Quadrate((y_true - y_true.mean()) ** 2).sum()ist. Der beste erreichbare Score 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\)-Score 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\)-Score, der beim Aufruf von
scoreauf einem Regressor verwendet wird, nutztmultioutput='uniform_average'ab Version 0.23, um konsistent mit dem Standardwert vonr2_scorezu bleiben. Dies beeinflusst diescore-Methode aller Multi-Output-Regressoren (außerMultiOutputRegressor).
- set_fit_request(*, coef_init: bool | None | str = '$UNCHANGED$', intercept_init: bool | None | str = '$UNCHANGED$', sample_weight: bool | None | str = '$UNCHANGED$') SGDRegressor[source]#
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:
- coef_initstr, True, False, oder None, default=sklearn.utils.metadata_routing.UNCHANGED
Metadaten-Routing für den Parameter
coef_initinfit.- intercept_initstr, True, False, oder None, default=sklearn.utils.metadata_routing.UNCHANGED
Metadaten-Routing für den Parameter
intercept_initinfit.- 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)[source]#
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_partial_fit_request(*, sample_weight: bool | None | str = '$UNCHANGED$') SGDRegressor[source]#
Konfiguriert, ob Metadaten für die
partial_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 anpartial_fitübergeben, wenn sie bereitgestellt werden. Die Anforderung wird ignoriert, wenn keine Metadaten bereitgestellt werden.False: Metadaten werden nicht angefordert und der Meta-Schätzer übergibt sie nicht anpartial_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_weightinpartial_fit.
- Gibt zurück:
- selfobject
Das aktualisierte Objekt.
- set_score_request(*, sample_weight: bool | None | str = '$UNCHANGED$') SGDRegressor[source]#
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.
- sparsify()[source]#
Koeffizientenmatrix in Sparse-Format konvertieren.
Konvertiert das
coef_-Mitglied in eine scipy.sparse-Matrix, die für Modelle mit L1-Regularisierung speicher- und speichereffizienter sein kann als die übliche numpy.ndarray-Darstellung.Das
intercept_-Mitglied wird nicht konvertiert.- Gibt zurück:
- self
Angepasster Schätzer.
Anmerkungen
Für nicht-sparse Modelle, d.h. wenn nicht viele Nullen in
coef_vorhanden sind, kann dies tatsächlich den Speicherverbrauch *erhöhen*, also verwenden Sie diese Methode mit Vorsicht. Eine Faustregel besagt, dass die Anzahl der Nullelemente, die mit(coef_ == 0).sum()berechnet werden kann, mehr als 50 % betragen muss, damit dies signifikante Vorteile bringt.Nach dem Aufruf dieser Methode funktioniert die weitere Anpassung mit der Methode
partial_fit(falls vorhanden) nicht mehr, bis Siedensifyaufrufen.