Die Magie des Ensemble Learning

Hallo, Habra! Wir laden Data Engineers und Machine Learning Spezialisten zu einem kostenlosen Demo-Kurs ein „Implementierung von ML-Modellen in eine Produktionsumgebung am Beispiel von Online-Empfehlungen“. Außerdem veröffentlichen wir den Artikel von Luca Monno – Head of Financial Analytics bei CDP SpA.

Eine der nützlichsten und einfachsten Methoden des maschinellen Lernens ist das Ensemble Learning. Ensemble Learning ist ein Verfahren, das den Grundlagen von XGBoost, Bagging, Random Forest und vielen anderen Algorithmen zugrunde liegt.

Auf Towards Data Science gibt es viele tolle Artikel, aber ich habe zwei Geschichten ausgewählt (erste und zweite), die mir am besten gefallen haben. Warum also noch einen Artikel über EL schreiben? Weil ich Ihnen zeigen möchte, wie es an einem einfachen Beispiel funktioniert, das mir vor Augen führte, dass hier kein Zauber im Spiel ist.

Als ich EL zum ersten Mal in Aktion sah (bei der Arbeit mit mehreren sehr einfachen Regressionsmodellen), konnte ich meinen Augen nicht trauen und erinnere mich immer noch an den Professor, der mir diese Methode beigebracht hat.

Ich hatte zwei verschiedene Modelle (zwei schwache Lernalgorithmen) mit R² Werten von out-of-sample 0,90 und 0,93. Bevor ich das Ergebnis ansah, dachte ich, dass ich R² irgendwo zwischen den beiden ursprünglichen Werten erhalten würde. Mit anderen Worten, ich dachte, dass EL dazu verwendet werden kann, das Modell nicht schlechter als das schlechteste, aber auch nicht besser als das beste Modell arbeiten zu lassen.

Zu meiner großen Überraschung ergab das einfache Mittel der Vorhersagen ein R² von 0,95. 

Zunächst begann ich nach einem Fehler zu suchen, aber dann dachte ich, hier könnte eine Form von Magie stecken!

Was ist Ensemble Learning

Mit EL können die Vorhersagen von zwei oder mehr Modellen kombiniert werden, um ein zuverlässigeres und leistungsfähigeres Modell zu erstellen. Es gibt viele Methodologien zur Arbeit mit Ensemble-Modellen. Hier möchte ich die zwei nützlichsten ansprechen, um einen allgemeinen Überblick zu geben.

Mit Hilfe von Regression ist es möglich, die Werte der vorhandenen Modelle zu mitteln.

Mit Hilfe von Klassifikation kann es den Modellen ermöglichen, Labels auszuwählen. Das Label, das am häufigsten ausgewählt wurde, ist das, das von dem neuen Modell gewählt wird.

Warum funktioniert EL besser

Der Hauptgrund, warum EL besser funktioniert, liegt darin, dass jede Vorhersage einen Fehler hat (das wissen wir aus der Wahrscheinlichkeitstheorie). Die Kombination zweier Vorhersagen kann helfen, den Fehler zu reduzieren und damit die Leistung zu verbessern (RMSE, R² usw.).

Im nächsten Diagramm sieht man, wie zwei schwache Algorithmen mit einem Datensatz arbeiten. Der erste Algorithmus hat einen größeren Steigungskoeffizienten als nötig, während der zweite fast gleich null ist (möglicherweise aufgrund von Überanpassung). Aber ensemble zeigt ein deutlich besseres Ergebnis. 

Betrachtet man den R²-Wert, so liegt dieser für den ersten und zweiten Trainingsalgorithmus bei -0.01¹ und 0.22, während der Ensembleansatz einen Wert von 0.73 erreicht.

Die Magie des Ensemble Learning

Es gibt viele Gründe, warum ein Algorithmus auch in einem so einfachen Beispiel wie diesem eine schlechte Modellleistung zeigen kann: Vielleicht haben Sie sich entschieden, Regularisierung zu verwenden, um Überanpassung zu vermeiden, oder Sie haben entschieden, einige Ausreißer nicht auszuschließen, oder Sie haben polynomiale Regression verwendet und einen falschen Grad gewählt (zum Beispiel haben Sie ein Polynom zweiten Grades verwendet, während die Testdaten eine deutliche Asymmetrie aufweisen, für die ein dritter Grad besser geeignet wäre).

Wenn EL besser funktioniert

Betrachten wir zwei Trainingsalgorithmen, die mit denselben Daten arbeiten.

Die Magie des Ensemble Learning

Hier sieht man, dass die Kombination zweier Modelle die Leistung nicht wesentlich verbessert hat. Zunächst lagen die R²-Werte der beiden Trainingsalgorithmen bei -0,37 und 0,22, und das Ensemble ergab -0,04. Das bedeutet, dass das EL-Modell einen Durchschnittsergebnis erreicht hat.

Allerdings gibt es zwischen diesen beiden Beispielen einen großen Unterschied: Im ersten Beispiel waren die Fehler der Modelle negativ korreliert, im zweiten Beispiel positiv (die Koeffizienten der drei Modelle wurden nicht geschätzt, sondern wurden einfach vom Autor als Beispiel ausgewählt).

Daher kann Ensemble Learning genutzt werden, um das Gleichgewicht zwischen Verzerrung und Varianz in jedem Fall zu verbessern, aber wenn die Fehler der Modelle nicht positiv korreliert sind, kann die Anwendung von EL zu einer Leistungssteigerung führen..

Homogene und heterogene Modelle

EL wird sehr oft bei homogenen Modellen verwendet (wie in diesem Beispiel oder in einem Random Forest), aber tatsächlich können Sie verschiedene Modelle (lineare Regression + neuronales Netzwerk + XGBoost) mit verschiedenen Satz von erklärenden Variablen kombinieren. Höchstwahrscheinlich führt dies zu unkorrelierten Fehlern und einer Leistungssteigerung.

Vergleich mit der Portfoliodiversifizierung

EL funktioniert analog zur Diversifizierung in der Portfoliotheorie, was umso besser für uns ist. 

Bei der Diversifizierung versuchen Sie, die Varianz Ihrer Renditen zu verringern, indem Sie in unkorrelierte Aktien investieren. Ein gut diversifiziertes Aktienportfolio wird eine Rendite erzielen, die besser ist als die schlechteste einzelne Aktie, aber niemals besser als die beste.

Um Warren Buffett zu zitieren: 

„Diversifizierung ist ein Schutz gegen Unkenntnis. Für jemanden, der nicht weiß, was er tut, hat sie [die Diversifizierung] sehr wenig Sinn.“

Im maschinellen Lernen hilft EL, die Varianz Ihres Modells zu reduzieren, kann jedoch dazu führen, dass ein Modell mit einer Gesamtleistung erstellt wird, die besser ist als die beste ursprüngliche Modell.

Lassen Sie uns die Ergebnisse zusammenfassen

Mehrere Modelle zu einem einzigen zu kombinieren, ist eine relativ einfache Methode, die zur Lösung des Problems der Bias-Varianz und zur Erhöhung der Leistung führen kann.

Wenn Sie zwei oder mehr Modelle haben, die gut funktionieren, entscheiden Sie sich nicht zwischen ihnen: Nutzen Sie alle (aber mit Vorsicht)!

Interessiert es Sie, sich in diesem Bereich weiterzuentwickeln? Melden Sie sich für eine kostenlose Demo-Stunde an „Implementierung von ML-Modellen in eine Produktionsumgebung am Beispiel von Online-Empfehlungen“ und nehmen Sie teil an einem Online-Treffen mit Andrei Kuznetsov — Machine Learning Engineer bei Mail.ru Group.

Quelle: habr.com

60GB SSD 8Gb DDR4