Glossar

XGBoost

Entdecke XGBoost, den leistungsstarken, schnellen und vielseitigen Algorithmus für maschinelles Lernen für genaue Vorhersagen bei Klassifizierungs- und Regressionsaufgaben.

Trainiere YOLO Modelle einfach
mit Ultralytics HUB

Mehr erfahren

XGBoost, kurz für Extreme Gradient Boosting, ist ein leistungsstarker und weit verbreiteter Open-Source-Algorithmus für maschinelles Lernen (ML), der auf Geschwindigkeit und Leistung ausgelegt ist. Er gehört zur Familie der Gradient-Boosting-Frameworks, d.h. zu den Ensemble-Methoden, bei denen Modelle nacheinander erstellt werden, wobei neue Modelle die Fehler der vorherigen korrigieren. XGBoost verbessert das herkömmliche Gradient Boosting, indem es fortschrittliche Regularisierungstechniken (wie L1- und L2-Regularisierung) einbezieht, um eine Überanpassung zu verhindern und die Rechenressourcen für ein schnelleres Training und schnellere Vorhersagen zu optimieren. Das macht es sowohl für Klassifizierungs- als auch für Regressionsaufgaben äußerst effektiv, insbesondere bei strukturierten oder tabellarischen Daten.

Gradient Boosting verstehen

Im Kern ist XGBoost eine optimierte Implementierung von Gradient Boosting, einer Technik, die maßgeblich von Jerome H. Friedman entwickelt wurde. Beim Gradient Boosting wird ein Ensemble schwacher Lerner, in der Regel Entscheidungsbäume, schrittweise aufgebaut. Jeder neue Baum versucht, die Restfehler (die Differenz zwischen tatsächlichen und vorhergesagten Werten) vorherzusagen, die das Ensemble der vorangegangenen Bäume gemacht hat. XGBoost verfeinert diesen Prozess mit mehreren wichtigen Innovationen, die die Effizienz und die Genauigkeit des Modells deutlich verbessern.

Wesentliche Merkmale und Erweiterungen

XGBoost bietet mehrere Verbesserungen gegenüber den Standard-Gradient-Boosting-Algorithmen:

  • Regularisierung: Integriert L1- (Lasso) und L2- (Ridge) Regularisierungsterme in die Zielfunktion, was eine Überanpassung verhindert und die Generalisierung des Modells verbessert.
  • Parallele Verarbeitung: XGBoost ist auf Effizienz ausgelegt und kann Multicore-GPUs für schnellere Berechnungen beim Training nutzen.
  • Umgang mit fehlenden Werten: Verfügt über eine eingebaute Routine zum Umgang mit fehlenden Datenwerten, die die beste Imputationsstrategie aus den Daten selbst lernt.
  • Tree Pruning: Verwendet im Vergleich zum Standard-Gradient-Boosting fortschrittlichere Baumbeschneidungstechniken (z. B. Pruning in der Tiefe mit einem "max_depth"-Parameter und Post-Pruning auf Basis des Gewinns).
  • Eingebaute Cross-Validierung: Ermöglicht es den Nutzern, bei jeder Iteration des Boosting-Prozesses eine Kreuzvalidierung durchzuführen, was es einfacher macht, die optimale Anzahl von Boosting-Runden zu ermitteln.
  • Cache-Bewusstsein: Optimiert die Hardware-Nutzung, indem die Cache-Hierarchien berücksichtigt werden.
  • Flexibilität: Unterstützt benutzerdefinierte Ziel- und Bewertungsfunktionen und bietet so Anpassungsmöglichkeiten für verschiedene Aufgaben, die über die Standardklassifizierung und -regression hinausgehen. Das hilft bei der effektiven Abstimmung der Hyperparameter.

Vergleich mit anderen Algorithmen

Obwohl XGBoost für tabellarische Daten sehr effektiv ist, unterscheidet er sich von anderen gängigen Algorithmen:

  • LightGBM: Ein weiteres Gradient-Boosting-Framework, das für seine Geschwindigkeit bekannt ist, insbesondere bei sehr großen Datensätzen. LightGBM verwendet eine einzigartige blattweise Baumwachstumsstrategie, die schneller sein kann, aber bei kleineren Datensätzen manchmal anfälliger für eine Überanpassung ist als das levelweise Wachstum von XGBoost.
  • CatBoost: Hervorragend geeignet für Datensätze mit vielen kategorialen Merkmalen, da es solche Variablen besonders gut verarbeiten kann. Im Vergleich zu XGBoost müssen die Hyperparameter für kategoriale Daten oft weniger stark angepasst werden.
  • Deep Learning (DL) Modelle: Algorithmen wie Convolutional Neural Networks (CNNs) oder Modelle wie Ultralytics YOLO sind in erster Linie für unstrukturierte Daten wie Bilder oder Text konzipiert und eignen sich hervorragend für Aufgaben wie Computer Vision (CV)(Objekterkennung, Bildsegmentierung). XGBoost hingegen ist in der Regel besser für strukturierte, tabellarische Datensätze geeignet, wie sie in der Geschäftsanalytik üblich sind.

Anwendungen in der realen Welt

Dank seiner Leistung und Robustheit eignet sich XGBoost für ein breites Spektrum an prädiktiven Modellierungsanwendungen:

  • Finanzdienstleistungen: Wird häufig für die Bewertung von Kreditrisiken, die Erkennung von Betrug und für algorithmische Handelsstrategien verwendet. Banken nutzen XGBoost zum Beispiel, um Modelle zu erstellen, die die Wahrscheinlichkeit eines Kreditausfalls auf der Grundlage von Kundenantragsdaten vorhersagen. Mehr über KI im Finanzwesen.
  • Einzelhandel und E-Commerce: Anwendung bei der Analyse des Kundenverhaltens, der Kundenabwanderung, der Umsatzprognose und dem Aufbau von Empfehlungsmaschinen. Ein Online-Händler könnte XGBoost zum Beispiel nutzen, um vorherzusagen, welche Kunden wahrscheinlich auf eine bestimmte Marketingkampagne reagieren werden.
  • Gesundheitswesen: Einsatz bei der Vorhersage von Patientenergebnissen und Krankheitsrisiken auf der Grundlage klinischer Daten sowie bei der Optimierung des Krankenhausbetriebs. Lies mehr über KI im Gesundheitswesen.
  • Fertigung: Wird für die vorausschauende Wartung (Vorhersage von Anlagenausfällen), Qualitätskontrollanalysen und die Optimierung von Produktionsprozessen eingesetzt. Erforsche KI in der Fertigung.
  • Datenwissenschaftliche Wettbewerbe: XGBoost ist aufgrund seiner hohen Genauigkeit und Effizienz ein beliebter Algorithmus in Data-Science-Wettbewerben, wie sie auf Kaggle veranstaltet werden.

XGBoost ist nach wie vor ein äußerst relevantes und leistungsstarkes Tool im Bereich des maschinellen Lernens, das für seine Geschwindigkeit, Genauigkeit und die Fähigkeit, komplexe tabellarische Datensätze effektiv zu verarbeiten, geschätzt wird. Es wird über die offizielle XGBoost-Bibliothek weiterentwickelt und lässt sich gut mit beliebten ML-Bibliotheken wie Scikit-learn und Plattformen wie Ultralytics HUB integrieren, um den gesamten ML-Lebenszyklus zu verwalten.

Alles lesen