Startseite topics Was ist Boosting? Was ist Boosting?
Erfahren Sie mehr über Boosting-Algorithmen und wie sie die Vorhersagekraft Ihrer Data-Mining-Initiativen verbessern können.
Blauer Hintergrund
Was ist Boosting?

Erfahren Sie mehr über Boosting-Algorithmen und wie sie die Vorhersagekraft Ihrer Data-Mining-Initiativen verbessern können. 

Boosting ist eine Ensemble-Lernmethode, die mehrere schwache Lerner in einem starken Lerner kombiniert, um Trainingsfehler zu minimieren. Beim Boosting wird eine Zufallsstichprobe von Daten ausgewählt, mit einem Modell angepasst und dann nacheinander trainiert – das heißt, jedes Modell versucht, die Schwächen seines Vorgängers zu kompensieren. Bei jeder Iteration werden die schwachen Regeln jedes einzelnen Klassifikationsmerkmals zu einer starken Vorhersageregel kombiniert. 

Zunächst ist eine genauere Betrachtung der Kategorie des Ensemble-Lernens hilfreich und zwei der bekanntesten Verfahren hervorheben: Bagging und Boosting. 

Ensemble-Lernen

Das Ensemble-Lernen unterstreicht die Idee der „Schwarmintelligenz“, die besagt, dass die Entscheidungsfindung einer größeren Gruppe von Menschen in der Regel besser ist als die eines einzelnen Experten. In ähnlicher Weise bezieht sich das Ensemble-Lernen auf eine Gruppe (oder ein Ensemble) von Basislernern oder Modellen, die gemeinsam arbeiten, um eine bessere Endvorhersage zu erreichen. Ein einzelnes Modell, auch bekannt als Basis- oder schwacher Lerner, kann aufgrund einer hohen Varianz oder einer hohen Verzerrung individuell nicht gut abschneiden. Wenn schwache Lerner jedoch aggregiert werden, können sie einen starken Lerner bilden, da ihre Kombination Verzerrungen oder Varianzen reduziert und zu einer besseren Modellleistung führt. 

Ensemble-Methoden werden häufig mit Entscheidungsbäumen veranschaulicht, da dieser Algorithmus anfällig für Überanpassung (hohe Varianz und geringe Verzerrung) sein kann, wenn er nicht beschnitten wurde. Dazu kann auch Unteranpassung (geringe Varianz und hohe Verzerrung) auftreten, wenn er sehr klein ist, wie ein Entscheidungsstumpf, d. h. ein Entscheidungsbaum mit einer Ebene. Wenn ein Algorithmus seinen Trainingsdatensatz über- oder unteranpasst, kann er nicht gut auf neue Datensätze verallgemeinert werden. Deshalb werden Ensemble-Methoden eingesetzt, um diesem Verhalten entgegenzuwirken und die Verallgemeinerung des Modells auf neue Datensätze zu ermöglichen. Obwohl Entscheidungsbäume eine hohe Varianz oder eine hohe Verzerrung aufweisen können, ist es erwähnenswert, dass dies nicht die einzige Modellierungstechnik ist, die das Ensemble-Lernen nutzt, um den „idealen Punkt“ innerhalb des Bias-Varianz-Kompromisses zu finden.  

Bagging vs. Boosting

Bagging und Boosting sind zwei Haupttypen von Ensemble-Lernmethoden. Wie in dieser Studie (PDF, 242 KB) (Link befindet sich außerhalb von ibm.com) hervorgehoben, besteht der Hauptunterschied zwischen diesen Lernmethoden in der Art und Weise, wie sie trainiert werden. Beim Bagging werden schwache Lerner parallel trainiert, beim Boosting lernen sie nacheinander. Dies bedeutet, dass eine Serie von Modellen konstruiert wird und mit jeder neuen Modelliteration die Gewichtungen der falsch klassifizierten Daten im früheren Modell erhöht werden. Diese Umverteilung der Gewichtung hilft dem Algorithmus, die Parameter zu identifizieren, auf die er sich konzentrieren muss, um seine Leistung zu verbessern. AdaBoost, was für „adaptativer Boosting-Algorithmus“ steht, ist einer der beliebtesten Boosting-Algorithmen, da er einer der ersten seiner Art war. Andere Arten von Boosting-Algorithmen sind z. B. XGBoost, GradientBoost und BrownBoost. 

Ein weiterer Unterschied zwischen Bagging und Boosting liegt in ihrer Verwendung. Zum Beispiel werden Bagging-Methoden typischerweise bei schwachen Lernern verwendet, die hohe Varianz und geringe Verzerrung aufweisen, während Boosting-Methoden genutzt werden, wenn geringe Varianz und hohe Verzerrung beobachtet werden. Während Bagging verwendet werden kann, um eine übermäßige Anpassung zu vermeiden (Link befindet sich außerhalb von ibm.com) können Boosting-Methoden anfälliger dafür sein, obwohl das tatsächlich vom Dataset abhängt. Parameteroptimierung kann jedoch dazu beitragen, dieses Problem zu vermeiden. 

Aus diesem Grund werden Bagging und Boosting auch in der Realität in unterschiedlichen Bereichen eingesetzt. Bagging wird z. B. für Kreditgenehmigungsverfahren und statistische Genomforschung verwendet, während Boosting eher in Bilderkennungs-Apps und Suchmaschinen eingesetzt wird.  

Relevante Produkte

SPSS Modeler

Arten von Boosting

Boosting-Methoden konzentrieren sich auf die iterative Kombination von schwachen Lernern, um einen starken Lerner zu erstellen, der genauere Ergebnisse vorhersagen kann. Beachten Sie, dass ein schwacher Lerner Daten etwas besser klassifiziert als zufälliges Raten. Dieser Ansatz kann stabile Ergebnisse für Vorhersageprobleme bereitstellen und sogar neuronale Netze sowie Support Vector Machines bei Aufgaben wie der Bildersuche (PDF, 1,9 MB) (Link befindet sich außerhalb von ibm.com) übertreffen.  

Boosting-Algorithmen können sich darin unterscheiden, wie sie während des sequenziellen Prozesses schwache Lerner erstellen und aggregieren. Drei beliebte Boosting-Methoden: 

  • Adaptives Boosting oder AdaBoost: Die Erstellung des AdaBoost-Algorithmus wird Yoav Freund und Robert Schapire zugeschrieben. Diese Methode arbeitet iterativ, indem falsch klassifizierte Datenpunkte identifiziert und deren Gewichtungen angepasst werden, um den Trainingsfehler zu minimieren. Das Modell wird sequenziell optimiert, bis es die stärkste Vorhersagefunktion bereitstellt.  
  • Gradient-Boosting: Aufbauend auf der Arbeit von Leo Breiman entwickelte Jerome H. Friedman Gradient-Boosting, bei dem Vorhersagefunktionen nacheinander zu einem Ensemble hinzugefügt werden, wobei jede Funktion die Fehler der vorherigen korrigiert. Statt jedoch wie AdaBoost die Gewichtung von Datenpunkten zu ändern, lernt Gradient-Boosting anhand der verbleibenden Fehler der vorherigen Vorhersagefunktion. Der Name Gradient-Boosting wird verwendet, da Gradientenabstiegsalgorithmus und Boosting-Methode kombiniert werden.  
  • Extremes Gradient-Boosting oder XGBoost: XGBoost ist eine Implementierung von Gradient-Boosting, die auf Rechengeschwindigkeit und Skalierung ausgelegt ist. XGBoost nutzt mehrere Kerne auf der CPU, sodass Lernen parallel während des Trainings erfolgen kann.  

Vorteile und Herausforderungen von Boosting

Die Boosting-Methode zeichnet sich durch eine Reihe von Vorteilen und Herausforderungen aus, wenn sie für Klassifizierungs- oder Regressionsprobleme verwendet wird. 

Die Hauptvorteile von Boosting sind:  

  • Einfache Implementierung: Boosting kann mit mehreren Hyper-Parameteroptimierungsoptionen verwendet werden, um die Anpassung zu verbessern. Es ist keine Datenvorverarbeitung erforderlich, und Boosting-Algorithmen verfügen über integrierte Routinen zur Handhabung fehlender Daten. In Python vereinfacht die Bibliothek „scikit-learn“ mit Ensemble-Methoden (auch bekannt als sklearn.ensemble) die Implementierung der vielfach eingesetzten Boosting-Methoden, einschließlich AdaBoost, XGBoost etc.  
  • Reduzierte Verzerrung: Boosting-Algorithmen kombinieren mehrere schwache Lerner in einem sequenziellen Verfahren und sorgen damit für iterative Verbesserung durch Beobachtungen. Mit diesem Konzept kann eine hohe Verzerrung, wie sie in flachen Entscheidungsbäumen und logistischen Regressionsmodellen häufig vorkommt, reduziert werden. 
  • Recheneffizienz: Da Boosting-Algorithmen nur Funktionen wählen, die die Vorhersagekraft während des Trainings verbessern, können damit die Dimensionalität reduziert und die Recheneffizienz gesteigert werden.  

Die wichtigen Herausforderungen beim Boosting schließen ein:  

  •  Überanpassung: Es gibt Meinungsverschiedenheiten in der Forschung (Link befindet sich außerhalb von ibm.com), ob Boosting dazu beitragen kann, Überanpassung zu reduzieren, oder ob es diese noch verschärft. Wir nehmen dies unter Herausforderungen auf, da in den Fällen, in denen dies auftritt, Vorhersagen nicht für neue Datasets verallgemeinert werden können.  
  •  Intensive Verarbeitung: Sequenzielles Training beim Boosting ist schwer vertikal zu skalieren. Da jeder Schätzer auf seinen Vorgängern aufbaut, können Boosting-Modelle hinsichtlich der Berechnung kostenintensiv sein, obwohl XGBoost versucht, Skalierbarkeitsprobleme anzugehen, die bei anderen Boosting-Methoden auftreten. Boosting-Algorithmen können im Vergleich zum Bagging langsamer zu trainieren sein, da sich eine große Anzahl von Parametern auch auf das Verhalten des Modells auswirken kann. 
Anwendungsfälle von Boosting

Boosting-Algorithmen eignen sich gut für Projekte im Bereich künstlicher Intelligenz in einer Vielzahl von Branchen, wie z. B.:  

  • Gesundheitswesen: Boosting wird verwendet, um Fehler in medizinischen Datenvorhersagen, wie der Vorhersage kardiovaskulärer Risikofaktoren und Überlebensraten von Krebspatienten, zu verringern. Beispielsweise zeigen Forschungsarbeiten, dass Ensemble-Methoden (Link befindet sich außerhalb von ibm.com) die Genauigkeit bei der Identifikation von Patienten erheblich verbessern, die von einer vorbeugenden Behandlung von Herz-Kreislauf-Erkrankungen profitieren können, während gleichzeitig unnötige Behandlungen vermieden werden. Aus einer anderen Studie (Link befindet sich außerhalb von IBM) geht ebenfalls hervor, dass die Anwendung von Boosting auf mehreren Plattformen für die Genomforschung die Vorhersage der Überlebenszeit bei Krebs verbessern kann. 

  • IT: Regressionsbaumstrukturen mit Gradient-Boosting werden in Suchmaschinen für Site-Rankings verwendet, während der Viola-Jones-Boosting-Algorithmus für den Imageabruf verwendet wird. Wie Cornell (Link befindet sich außerhalb von ibm.com) feststellte, ermöglichen geboostete Klassifikatoren ein früheres Beenden der Berechnungen, wenn klar ist, in welche Richtung eine Vorhersage geht. Das bedeutet, dass eine Suchmaschine die Auswertung von Seiten mit niedrigerem Ranking stoppen kann, während Image-Scanner nur Bilder berücksichtigen, die das gewünschte Objekt tatsächlich enthalten.   

  • Finanzwesen: Boosting wird mit Deep Learning-Modellen verwendet, um kritische Aufgaben zu automatisieren, einschließlich Betrugserkennung, Preisanalyse und mehr. Beispielsweise verbessern Boosting-Methoden bei der Erkennung von Kreditkartenbetrug und der Finanzproduktenanalyse (Link befindet sich außerhalb von ibm.com) die Genauigkeit der Analyse umfangreicher Datasets, um finanzielle Verluste zu minimieren.  

Relevante Lösungen
SPSS Modeler

Höherer ROI und schnellere Wertschöpfung mit einem intuitiven Drag-and-drop-Tool für Datenwissenschaft.

IBM SPSS Modeler erkunden
IBM Cloud-Lösungen

Hybrid. Offen. Ausfallsicher. Ihre Plattform und Ihr Partner für digitale Transformation.

Cloud-Lösungen erkunden
Cloud Pak-Lösungen

Software für KI-gestützte Hybrid-Cloud.

Cloud Pak-Lösungen erkunden
Machen Sie den nächsten Schritt

IBM Lösungen unterstützen durchgängig den maschinellen Lernzyklus. Erfahren Sie, wie Sie mit Tools von IBM zum Data-Mining, z. B. IBM SPSS Modele Vorhersagemodelle entwickeln können, um sie in Betriebsabläufen bereitzustellen. Sie machen es einfach, die Modellgenauigkeit durch Modellierung zu verbessern. Wenn Sie mehr über die Vorteile von Boosting- und Bagging-Methoden erfahren möchten, besuchen Sie die IBM Data Science Community.

Werden Sie noch heute Mitglied der IBM Data Science Community