Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Gradient Boosting | Häufig Verwendete Boosting-Modelle
Ensemble-Lernen
course content

Kursinhalt

Ensemble-Lernen

Ensemble-Lernen

1. Grundprinzipien des Aufbaus von Ensemble-Modellen
2. Häufig Verwendete Bagging-Modelle
3. Häufig Verwendete Boosting-Modelle
4. Häufig Verwendete Stacking-Modelle

book
Gradient Boosting

Gradient Boosting ist eine leistungsstarke Boosting-Ensemble-Lerntechnik für Klassifikations- und Regressionsaufgaben.

Wie funktioniert Gradient Boosting?

  1. Initialisierung des Basismodells: Der Prozess beginnt mit der Initialisierung eines Basismodells als erster schwacher Lerner. Dieses anfängliche Modell macht Vorhersagen, die jedoch möglicherweise nicht sehr genau sind;
  2. Berechnung der Residuen: Der Unterschied zwischen den tatsächlichen Zielwerten und den Vorhersagen des aktuellen Modells wird berechnet. Diese Unterschiede, bekannt als Residuen oder Fehler, stellen die "Residuen" dar, die das nächste Modell zu korrigieren versucht;
  3. Anpassung eines neuen Modells: Ein neuer schwacher Lerner wird angepasst, um die Residuen aus dem vorherigen Schritt vorherzusagen. Dieses neue Modell zielt darauf ab, die Fehler des vorherigen Modells zu korrigieren;
  4. Kombinieren der Vorhersagen: Die Vorhersagen des neuen Modells werden zu den Vorhersagen des vorherigen Modells hinzugefügt. Die kombinierten Vorhersagen beginnen, die tatsächlichen Zielwerte genauer zu approximieren;
  5. Iterativer Prozess: Die Schritte 3 und 4 werden für eine festgelegte Anzahl von Iterationen (oder bis ein Abbruchkriterium erreicht ist) wiederholt. In jeder Iteration wird ein neues Modell angepasst, um die Residuen der kombinierten Vorhersagen aus den vorherigen Iterationen vorherzusagen;
  6. Endgültige Vorhersage: Nach Abschluss aller Iterationen wird die endgültige Vorhersage durch Addition der Vorhersagen der schwachen Lerner erhalten. Dieses Ensemble von Modellen bildet einen starken Lerner, der gelernt hat, die Fehler der vorherigen Modelle zu korrigieren.

Hinweis

Wir können auch die Feature-Wichtigkeit mit dem .feature_importances_ Attribut des trainierten Modells berechnen.

Beispiel

Hinweis

Es ist wichtig zu beachten, dass die Klassen GradientBoostingRegressor und GradientBoostingClassifier in Python so konzipiert sind, dass sie nur DecisionTreeRegressor und DecisionTreeClassifier als Basismodelle eines Ensembles verwenden!

1234567891011121314151617181920212223242526
import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from sklearn.ensemble import GradientBoostingClassifier from sklearn.metrics import f1_score import seaborn as sns # Load the Iris dataset data = load_iris() X = data.data y = data.target # Split the data into training and testing sets X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # Create and train the Gradient Boosting classifier clf = GradientBoostingClassifier(n_estimators=100) clf.fit(X_train, y_train) # Make predictions y_pred = clf.predict(X_test) # Calculate accuracy f1 = f1_score(y_test, y_pred, average='weighted') print(f'F1 score: {f1:.4f}')
copy
Können wir SVC (Support Vector Classifier) als Basismodell des Gradient Boosting Classifier in Python verwenden?

Können wir SVC (Support Vector Classifier) als Basismodell des Gradient Boosting Classifier in Python verwenden?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 4
We're sorry to hear that something went wrong. What happened?
some-alt