Gradient Boosting

Gradient Boosting bezeichnet ein Machine-Learning-Methode, die zu den Ensemble-Verfahren zählt und auf Entscheidungsbäumen basiert. Es werden endlich viele kleine, schwache Lerner, also hier Entscheidungsbäume, geschätzt, welche gemittelt das finale Modell ergeben.

Schwache und starke Lerner

Ein schwacher Lerner ist marginal besser in der Klassifizierung als zufälliges raten. „Ziel von Boosting ist es, einen schwachen Lernalgorithmus sequentiell und wiederholt auf einen angepassten Trainingsdatensatz anzuwenden, sodass eine Reihe von schwachen Lernern entsteht“ (Friedman, Jerome; Hastie, Trevor; Tibshirani, Robert (2008): The elements of statistical learning: Springer series in statistics New York, NY, USA (2), S.337). Dadurch entsteht ein starker Lerner. Im Gegensatz zum Bagging sind die Entscheidungsbäume beim Boosting nicht unabhängig voneinander. Werden beim Bagging noch Entscheidungsbäume auf Basis von Boostrap-Sample-Trainingsdaten erzeugt, wobei die Reihenfolge keinen Einfluss auf das Gesamtmodell hat, so wachsen beim Boosting die Entscheidungsbäume sequentiell. Jeder Entscheidungsbaum entsteht aus Informationen des vorherigen.  Der Algorithmus des Gradient Boosting durchläuft folgende Schritte.

Step-by-Step

  1. Zuerst wird ein schwacher Entscheidungsbaum mit der Zielvariable auf den Gesamtdatensatz angewendet.
  2. Nachfolgend wird eine Zufallsstichprobe gezogen und diese mithilfe des Entscheidungsbaumes aus Schritt 1 klassifiziert.
  3. Anschließend werden die Residuen der klassifizierten Beobachtungen aus Schritt 2 berechnet.
  4. In diesem Schritt werden die Residuen aus Schritt 3 als Zielvariable herangezogen und ein weiterer Entscheidungsbaum wird geschätzt.
  5. Der Entscheidungsbaum aus Schritt 4 wird jetzt mit dem vorherigen Baum (in nachfolgenden Schritten: mit den vorherigen Bäumen) kombiniert. Der
  6. Entscheidungsbaum aus Schritt 4 wird mit einer Lernrate gewichtet.
  7. Schritt 2-5 wird iterativ k-mal wiederholt.

Vom schwachen zum starken Lerner

Gradient Boosting wird auch als langsamer Lerner bezeichnet. Das Gesamtmodell wird iterativ verbessert, indem die Residuen minimiert werden. Damit wird deutlich, dass jeder Entscheidungsbaum auf den vorherigen beruht. Nachdem ein neuer Entscheidungsbaum hinzugenommen wurde, werden erneut aus einer Zufallsstichprobe Klassifizierungen geschätzt und Residuen berechnet. Mithilfe dieser wächst ein nächster Entscheidungsbaum, der wiederum in das Gesamtmodell mit der Lernrate einfließt. Je geringer die Lernrate gewählt wird, desto größer sollte die Anzahl B an zu schätzenden Entscheidungsbäumen gewählt werden. In der Literatur finden sich Empfehlungswerte zwischen 0,001 und 0,1. Zusammenfassend kann man festhalten, dass beim Gradient Boosting die Fehler der vorherigen Entscheidungsbäume durch weitere Entscheidungsbäume erklärt werden. Mithilfe der weiteren entstehenden Bäume werden die Klassifizierungen korrigiert und verbessert.

Code Snippet

import pandas as pd

from sklearn.metrics import confusion_matrix, classification_report, accuracy_score, recall_score

from sklearn.model_selection import cross_val_score

from sklearn.ensemble import GradientBoostingClassifier

 

gradientboosting = GradientBoostingClassifier(n_estimators = 1000, random_state = 42)

cv_scores = cross_val_score(gradientboosting, X_train, y_train, cv = 3, scoring = ‚recall‘)

print(cv_scores)

print(„Average 3-Fold CV recall score: {}“.format(np.mean(cv_scores)))

 

gradientboosting.fit(X_train, y_train)

y_pred = gradientboosting.predict(X_test)

y_pred_proba = gradientboosting.predict_proba(X_test)[:,1]

Der Code Snippet ist in der Programmiersprache Python geschrieben und basiert auf der Library sklearn.

Für hands-on tutorials und weiterführende Erläuterungen, besuche den (englischen) Data Science Blog TowardsDataScience.

Weiterführende Ressourcen zu Machine Learning

Datenintegration

Wie Machine Learning von Datenintegration profitiert
Die Kausalkette „Datenintegration-Datenqualität-Modellperformance“ beschreibt die Notwendigkeit von effektiver Datenintegration für einfacher und schneller umsetzbares sowie erfolgreicheres Machine Learning. Kurzum: aus guter Datenintegration folgt bessere Vorhersagekraft der Machine Learning Modelle wegen höherer Datenqualität.

Betriebswirtschaftlich liegen sowohl kostensenkende als auch umsatzsteigernde Einflüsse vor. Kostensenkend ist die Entwicklung der Modelle (weniger Custom Code, damit weniger Wartung etc.). Umsatzsteigernd ist die bessere Vorhersagekraft der Modelle, was präziseres Targeting, Cross- und Upselling und ein genaueres Bewerten von Leads und Opportunities betrifft – sowohl im B2B- als auch im B2C-Bereich. Hier findest du einen detaillierten Artikel zu dem Thema:

Plattform

Wie du Machine Learning mit der Integration Platform verwendest
Du kannst die Daten deiner zentralen Marini Integration Platform externen Machine Learning Services und Applikationen zur Verfügung stellen. Die Anbindung funktioniert nahtlos durch die HubEngine oder direkten Zugang zur Plattform, abhängig von den Anforderungen des Drittanbieters. Ein Anbieter für Standardanwendungen des Machine Learnings im Vertrieb ist z.B. Omikron. Du kannst aber auch Standardanwendungen auf AWS oder in der Google Cloud nutzen. Eine Anbindung an deine eigenen Server ist ebenso problemlos möglich, wenn du dort deine eigenen Modelle programmieren möchtest.

Wenn du Unterstützung dabei brauchst, wie du Machine Learning Modelle in deine Plattform einbinden kannst, dann kontaktiere unseren Vertrieb. Wir helfen dir gerne weiter!

Anwendungsbeispiele

Häufige Anwendungsszenarien von Machine Learning im Vertrieb
Machine Learning kann auf vielfältige Weise den Vertrieb unterstützen. Es können zum Beispiel Abschlusswahrscheinlichkeiten berechnet, Cross- und Up-Selling-Potenziale geschätzt oder Empfehlungen vorhergesagt werden. Wichtig dabei ist, dass der Vertriebler unterstützt wird und eine weitere Entscheidungshilfe erhält, anhand derer er sich besser auf seine eigentliche Tätigkeit, nämlich das Verkaufen, konzentrieren kann. So kann der Vertriebler zum Beispiel schneller erkennen, welche Leads, Opportunities oder Kunden am vielversprechendsten momentan sind und diese kontaktieren. Es bleibt jedoch klar, dass der Vertriebler die letztendliche Entscheidung trifft und durch das Machine Learning letztlich nur Erleichterungen erfährt. Schlussendlich verkauft kein Modell, sondern immer noch der Mensch.

Hier findest du eine kurze Einführung in das Thema Machine Learning und die häufigsten Anwendungsmöglichkeiten im Vertrieb.

Weitere Glossar Beiträge