Mein IBM Anmelden Abonnieren

Was ist Ensemble-Lernen?

18. März 2024

Autoren

Jacob Murel Ph.D.

Senior Technical Content Creator

Eda Kavlakoglu

Program Manager

Ensemble-Lernen fasst mehrere Lernende zusammen, um die Vorhersageleistung zu verbessern. Es wurde als Reaktion auf Probleme eingeführt, die sich aus begrenzten Datensätzen ergeben.

Das Ensemble-Lernen ist eine Technik des maschinellen Lernens, bei der zwei oder mehr Lernende (z. B. Regressions-Modelle, neuronale Netze) zusammengefasst werden, um bessere Vorhersagen zu treffen. Mit anderen Worten: Ein Ensemble-Modell kombiniert mehrere Einzelmodelle, um genauere Vorhersagen zu treffen als ein Einzelmodell allein.1 Manchmal wird diese Technik in Quellen auch als Ausschuss-basiertes Lernen bezeichnet. Das Ensemble-Lernen beruht auf dem Prinzip, dass eine Kollektivität von Lernenden eine größere Gesamtgenauigkeit erzielt als ein einzelner Lernender.2 Tatsächlich belegen Forschungsergebnisse die Wirksamkeit mit Modellen des maschinellen Lernens und Convolutional Neural Networks (CNNs).

Eine Anmerkung zur Terminologie: Basislernende, Basismodell und in einigen Fällen auch Basisschätzer bezieht sich auf das einzelne Modell oder die Modelle, die in Ensemble-Algorithmen verwendet werden. In der Literatur werden die Basislernenden weiter in starke und schwache Lernende unterteilt. Schwache Modelle oder Lernende werden als solche definiert, die kaum besser abschneiden als zufälliges Raten. Bei binären Klassifizierungsproblemen sind schwache Klassifikatoren formal diejenigen, die eine Genauigkeit von etwa fünfzig Prozent erreichen. Im Gegensatz dazu erzielen starke Modelle oder Lernende eine hervorragende Vorhersageleistung, die bei der binären Klassifizierung als eine Genauigkeit von mindestens achtzig Prozent formalisiert wird.3

Beachten Sie, dass einige Quellen schwache Lernende und Basislernende zusammenfassen, da Ensemble-Methoden, insbesondere sequenzielle Methoden, schwache Lernende effektiv zu starken Lernenden machen.4

3D-Design aus Kugeln, die auf einer Schiene rollen

Die neuesten Erkenntnisse und Insights zu KI

Entdecken Sie von Experten kuratierte Erkenntnisse und Neuigkeiten zu KI, Cloud und mehr im wöchentlichen Newsletter Think. 

Warum Ensemble-Lernen nutzen?

Abwägung zwischen Verzerrung und Varianz

Der Bias-Varianz-Kompromiss ist ein bekanntes Problem beim maschinellen Lernen und ein motivierendes Prinzip hinter vielen Regularisierungstechniken .Wir können sie wie folgt definieren:

- Verzerrung misst die durchschnittliche Differenz zwischen vorhergesagten Werten und tatsächlichen Werten.Wenn die Verzerrung zunimmt, sagt ein Modell anhand eines Trainingsdatensatzes weniger genau voraus. Eine hohe Verzerrung bezieht sich auf einen hohen Fehler im Training.Unter Optimierung versteht man Versuche, die Verzerrung zu reduzieren.

- Varianz misst die Differenz zwischen den Vorhersagen verschiedener Realisierungen eines bestimmten Modells.Mit zunehmender Varianz sagt ein Modell weniger genau über nicht sichtbare Daten voraus. Eine hohe Varianz bezieht sich auf einen hohen Fehler bei der Prüfung und Validierung. Die Generalisierung bezieht sich auf den Versuch, die Varianz zu reduzieren.

Verzerrung und Varianz repräsentieren somit umgekehrt die Modellgenauigkeit bei Trainings- bzw. Testdaten.5 Dies sind zwei von drei Begriffen, die die Gesamtfehlerquote eines Modells ausmachen, wobei der dritte der nicht reduzierbare Fehler ist. Dieser dritte Begriff bezeichnet Fehler, die aus der inhärenten Zufälligkeit eines Datensatzes resultieren. Der Gesamtmodellfehler kann durch die Formel definiert werden:6

Viele Modelle statt nur einem

Jeder Trainingsalgorithmus für ein Modell besteht aus zahlreichen Variablen – z. B.Trainingsdaten, Hyperparametern usw. –, die sich auf den Gesamtfehler des resultierenden Modells auswirken. Daher kann selbst ein einziger Trainingsalgorithmus verschiedene Modelle erzeugen, die jeweils ihre eigene Verzerrung, Varianz und nicht reduzierbare Fehlerrate aufweisen. Durch die Kombination mehrerer unterschiedlicher Modelle können Ensemble-Algorithmen eine niedrigere Gesamtfehlerquote erzielen, während die Komplexität und die Vorteile jedes einzelnen Modells erhalten bleiben, wie z. B. eine besonders geringe Verzerrung für eine bestimmte Teilmenge von Daten.7

Untersuchungen deuten darauf hin, dass das resultierende Ensemble-Modell im Allgemeinen umso genauer ist, je größer die Vielfalt der kombinierten Modelle ist. Das Ensemble-Lernen kann somit Regressionsprobleme wie Überanpassung angehen, ohne die Modellverzerrung zu beeinträchtigen. Tatsächlich deuten Forschungsergebnisse darauf hin, dass Ensembles, die aus verschiedenen nicht-regularisierten Modellen bestehen (d. h. Modelle, die zu stark an ihre Trainingsdaten angepasst sind), einzelne regularisierte Modelle übertreffen.8 Darüber hinaus können Techniken des Ensemble-Lernens dazu beitragen, Probleme zu lösen, die sich aus hochdimensionalen Daten ergeben, und so effektiv als Alternative zur Reduzierung der Dimensionalität dienen.

Arten von Ensemble-Modellen

In der Literatur werden Ensemble-Lernmethoden im Bereich des maschinellen Lernens in zwei Gruppen eingeteilt: parallel und sequenziell.

- Parallele Methoden schulen jeden einzelnen Lernenden getrennt von den anderen. Wie der Name schon sagt, schulen parallele Ensembles die Basislernenden parallel und unabhängig voneinander.

- Sequentielle Methoden trainieren einen neuen Basislernenden, sodass Fehler, die das im vorherigen Schritt trainierte Vorgängermodell gemacht hat, minimiert werden. Mit anderen Worten: Bei sequenziellen Methoden werden Basismodelle schrittweise erstellt.9

Parallele Methoden werden weiter in homogene und heterogene Methoden unterteilt. Homogene parallele Ensembles verwenden denselben Basislernalgorithmus, um alle Komponentenbasislernenden zu erzeugen. Heterogene parallele Ensembles verwenden unterschiedliche Algorithmen, um Basislernende zu erzeugen.10

Stimmabgabe

Wie kombinieren Ensemble-Methoden Basislernende zu einem endgültigen Lernenden? Einige Techniken, z. B.Stacking, verwenden separate Algorithmen für maschinelles Lernen, um einen Ensemble-Lernenden aus den Basislernenden zu trainieren. Eine gängige Methode zur Konsolidierung der Vorhersagen der Lernenden ist jedoch die Abstimmung – genauer gesagt die Mehrheitsentscheidung.

Bei der Mehrheitsentscheidung wird die Vorhersage jedes einzelnen Lernenden für eine bestimmte Dateninstanz berücksichtigt und eine endgültige Vorhersage ausgegeben, die von der Mehrheit der Lernenden bestimmt wird. Bei einem binären Klassifizierungsproblem beispielsweise werden bei der Mehrheitsentscheidung die Vorhersagen jedes einzelnen Basisklassifikators für eine bestimmte Dateninstanz herangezogen und die Mehrheitsvorhersage als endgültige Vorhersage verwendet. Die gewichtete Mehrheitsentscheidung ist eine Erweiterung dieser Technik, bei der die Vorhersagen bestimmter Lernender stärker gewichtet werden als die anderer.11

Techniken des Ensemble-Lernens

Zu den drei beliebtesten Ensemble-Lerntechniken gehören Bagging, Boosting und Stacking. Tatsächlich veranschaulichen diese zusammen die Unterschiede zwischen sequenziellen, parallelen, homogenen und heterogenen Arten von Ensemble-Methoden.

Beachten Sie, dass diese Übersicht nicht vollständig ist; es gibt mehrere andere Ensemblemethoden, wie z. B. Blending und Weighted Average Ensembles. Dies soll lediglich dazu dienen, einige der bekannteren Methoden in der Literatur zu untersuchen.

Bagging

Bagging ist eine homogene parallele Methode, die manchmal als Bootstrap-Aggregation bezeichnet wird. Es verwendet modifizierte Replikate eines bestimmten Trainingsdatensatzes, um mehrere Basislernende mit demselben Trainingsalgorithmus zu trainieren.12 Das Ensemble-Modul von Scikit-learn in Python enthält Funktionen zur Implementierung von Bagging, wie z. B. BaggingClassifier.

Genauer gesagt wird beim Bagging eine Technik namens Bootstrap-Resampling verwendet, um mehrere neue Datensätze aus einem anfänglichen Trainingsdatensatz abzuleiten, um mehrere Basislernende zu trainieren. Wie funktioniert das? Angenommen, ein Trainingsdatensatz enthält n Trainingsbeispiele. Beim Bootstrap-Resampling werden n Dateninstanzen aus diesem Satz in einen neuen Teil-Stichprobensatz kopiert, wobei einige anfängliche Instanzen mehr als einmal erscheinen und andere vollständig ausgeschlossen werden.Dies sind Bootstrap-Beispiele. Wenn Sie diesen Vorgang x-mal wiederholen, werden x Iterationen des ursprünglichen Datensatzes erzeugt, die jeweils n Stichproben aus dem ursprünglichen Satz enthalten. Jede Iteration des anfänglichen Satzes wird dann verwendet, um einen separaten Basislernenden mit demselben Lernalgorithmus zu trainieren.13

Random Forest ist eine Erweiterung von Bagging, die speziell die Verwendung von Bagging zur Konstruktion von Ensembles randomisierter Decision Trees bezeichnet. Dies unterscheidet sich von standardmäßigen Decision Trees, bei denen jedes Merkmal untersucht wird, um das beste Merkmal für die Aufteilung zu ermitteln. Im Gegensatz dazu werden bei Random Forests iterativ zufällige Teilmengen von Merkmalen ausgewählt, um einen Entscheidungsknoten zu erstellen.14

Stacking

Stacking oder Stacked Generalization15 ist eine heterogene parallele Methode, die beispielhaft für das sogenannte Meta-Lernen ist. Meta-Lernen besteht darin, einen Meta-Lernenden aus den Ergebnissen mehrerer Basislernender zu trainieren. Beim Stacking werden mehrere Basislernende aus demselben Datensatz mithilfe eines unterschiedlichen Trainingsalgorithmus für jeden Lernenden gezielt trainiert. Jeder Basislernende erstellt Vorhersagen zu einem unbekannten Datensatz. Diese ersten Modellvorhersagen werden dann zusammengestellt und zum Trainieren eines endgültigen Modells, des Metamodells, verwendet.16

Beachten Sie, wie wichtig es ist, einen anderen Datensatz als den zu verwenden, der zum Trainieren der Basislernenden verwendet wurde, um den Meta-Lernenden zu trainieren. Die Verwendung desselben Datensatzes zum Trainieren der Basislernenden und des Meta-Lernenden kann zu einer Überanpassung führen. Dies kann erfordern, dass Dateninstanzen aus den Basistrainingsdaten des Lernenden ausgeschlossen werden, um als Testdatensätze zu dienen, die wiederum zu Trainingsdaten für den Meta-Lernenden werden. In der Literatur werden häufig Techniken wie die Kreuzvalidierung empfohlen, um sicherzustellen, dass sich diese Datensätze nicht überschneiden.17

Ähnlich wie beim Bagging bietet das sklearn.ensemble-Modul in Python verschiedene Funktionen zur Implementierung von Stacking-Techniken.

Boosting

Boosting-Algorithmen sind eine sequentielle Ensemble-Methode. Es gibt viele Variationen von Boosting, aber sie folgen alle demselben allgemeinen Verfahren. Beim Boosting wird ein Lernender auf einem Ausgangs-Datensatz d trainiert. Der resultierende Lernende ist in der Regel schwach und ordnet viele Samples im Datensatz falsch ein. Ähnlich wie beim Bagging werden beim Boosting dann Instanzen aus dem ursprünglichen Datensatz ausgewählt, um einen neuen Datensatz (d2) zu erstellen. Im Gegensatz zum Bagging werden beim Boosting jedoch die falsch klassifizierten Dateninstanzen des ersten Modells oder Lernenden bevorzugt. Ein neuer Lernender wird auf diesem neuen Datensatz d2 trainiert. Dann wird ein dritter Datensatz (d3) aus d1 und d2 zusammengestellt, der die falsch klassifizierten Samples des zweiten Lernenden und die Instanzen, bei denen d1 und d2 nicht übereinstimmen, priorisiert. Dieser Prozess wird n-mal wiederholt, um n Lernende zu erzeugen. Beim Boosting werden dann alle Lernende kombiniert und gewichtet, um die endgültigen Vorhersagen zu erstellen.18

Boosting-Algorithmen unterscheiden sich stark darin, wie sie falsch vorhergesagte Dateninstanzen bei der Erstellung eines neuen Datensatzes priorisieren. Zwei der bekanntesten Boosting-Methoden können dies veranschaulichen:

- Adaptives Boosting (AdaBoost) gewichtet Modellfehler. Das heißt, wenn eine neue Iteration eines Datensatzes für das Training des nächsten Lernenden erstellt wird, fügt AdaBoost den falsch klassifizierten Proben des vorherigen Lernenden Gewichte hinzu, wodurch der nächste Lernende diese falsch klassifizierten Proben priorisiert.

- Gradient Boosting verwendet Restfehler beim Trainieren neuer Lernender. Anstatt falsch klassifizierte Proben zu gewichten, verwendet die Gradientenverstärkung Restfehler aus einem vorherigen Modell, um Zielvorhersagen für das nächste Modell festzulegen. Auf diese Weise wird versucht, die Fehlerlücke zu schließen, die ein Modell hinterlassen hat.19

Leider enthält sklearn keine vordefinierten Funktionen für die Implementierung von Boosting. Die Open-Source-Bibliothek Extreme Gradient Boosting (XGBoost) bietet jedoch Code für die Implementierung von Gradientenverstärkung in Python.

Aktuelle Forschung

Da es schwierig ist, große, fair genutzte, gekennzeichnete Datensätze für das Trainieren von Lernenden zu beschaffen, hat das Ensemble-Lernen viele Anwendungen gefunden, um die Leistung der Lernenden mit weniger Daten zu verbessern. So zeigen beispielsweise mehrere aktuelle Studien vielversprechende Ergebnisse bei der Verbesserung der Verallgemeinerbarkeit von Modellen durch den Einsatz von Ensemble-Methoden für Aufgaben der Computervision, wie z. B. das Trainieren mehrerer Modelle mit unterschiedlichen Darstellungen eines Datensatzes20 oder die Kombination mehrerer verzerrter Modelle.21

Obwohl Ensemble-Methoden die Verallgemeinerbarkeit verbessern können, können sie dennoch zu Ungerechtigkeiten führen. Beim maschinellen Lernen bezeichnet Fairness Versuche, algorithmische Voreingenommenheit (häufig gegenüber Minderheitengruppen) in automatisierten Systemen zu verringern, die in der Regel durch Lernende entsteht, die mit sensiblen Daten trainiert werden. Eine Handvoll Studien schlägt Metriken, Vorverarbeitungs- und Nachverarbeitungstechniken zur Verbesserung der Fairness in Ensemble-Modellen vor.22 Die fortgesetzten Bemühungen zur Verbesserung der Fairness und der ethischen Praktiken in der KI sind nach wie vor ein dringend benötigter Bereich für die zukünftige Forschung.

Mixture of Experts | Podcast

KI entschlüsseln: Wöchentlicher Nachrichtenüberblick

Schließen Sie sich unserer erstklassigen Expertenrunde aus Ingenieuren, Forschern, Produktführern und anderen an, die sich durch das KI-Rauschen kämpfen, um Ihnen die neuesten KI-Nachrichten und Erkenntnisse zu liefern.

Weiterführende Lösungen

Weiterführende Lösungen

IBM watsonx.ai

Trainieren, validieren, optimieren und implementieren Sie generative KI, Foundation Models und maschinelle Lernfunktionen mit IBM watsonx.ai, einem Studio der nächsten Generation für AI Builder in Unternehmen. Erstellen Sie KI-Anwendungen mit einem Bruchteil der Zeit und Daten.

Entdecken sie watsonx.ai
Lösungen im Bereich künstlicher Intelligenz

Setzen Sie KI in Ihrem Unternehmen ein
– mit branchenführendem Fachwissen im Bereich KI und dem umfassenden Lösungsportfolio von IBM an Ihrer Seite.

Erkunden Sie KI-Lösungen
KI-Beratung und -Services

Erfinden Sie kritische Workflows und Abläufe neu, indem Sie KI einsetzen, um Erfahrungen, Entscheidungsfindung in Echtzeit und den geschäftlichen Nutzen zu maximieren.

KI-Services entdecken
Machen Sie den nächsten Schritt

Profitieren Sie von einem einheitlichen Zugriff auf Funktionen, die den gesamten Lebenszyklus der KI-Entwicklung abdecken. Erstellen Sie leistungsstarke KI-Lösungen mit benutzerfreundlichen Oberflächen, Workflows und Zugriff auf branchenübliche APIs und SDKs.

watsonx.ai erkunden Live-Demo buchen
Fußnoten

1 Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012.

2 Gavin Brown, „Ensemble Learning“, Encyclopedia of Machine Learning and Data Mining, Springer, 2017.

3 Gautam Kunapuli, Ensemble Methods for Machine Learning, Manning Publications, 2023. Lior Rokach, Pattern Classification Using Ensemble Methods, World Scientific Publishing Company, 2010.

4 Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012.

5 Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani und Jonathan Taylor, An Introduction to Statistical Learning with Applications in Python, Springer, 2023.

6 George Kyriakides und Konstantinos G. Margaritis, Hands-On Ensemble Learning with Python, Packt Publishing, 2019.

7 Zhi-Hua Zhou, Machine Learning, übersetzt durch Shaowu Liu, Springer, 2021. George Kyriakides und Konstantinos G. Margaritis, Hands-On Ensemble Learning with Python, Packt Publishing, 2019.

8 Peter Sollich und Anders Krogh, „Learning with ensembles: How overfitting can be useful“, Advances in Neural Information Processing Systems, Band 8, 1995, https://papers.nips.cc/paper_files/paper/1995/hash/1019c8091693ef5c5f55970346633f92-Abstract.html.

9 Gautam Kunapuli, Ensemble Methods for Machine Learning, Manning Publications, 2023.

10 Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012.

11 Ibomoiye Domor Mienye und Yanxia Sun, „A Survey of Ensemble Learning: Concepts, Algorithms, Applications, and Prospects“, IEEE Access, Band 10, 2022, S. 99129-99149, https://ieeexplore.ieee.org/document/9893798. Lior Rokach, „Ensemble-based Classifiers“, Artificial Intelligence Review, Band 33, 2010, S. 1-39, https://link.springer.com/article/10.1007/s10462-009-9124-7.

12 M. Galar, A. Fernandez, E. Barrenechea, H. Bustince und F. Herrera, „A Review on Ensembles for the Class Imbalance Problem: Bagging-, Boosting-, and Hybrid-Based Approaches“, IEEE Transactions on Systems, Man, and Cybernetics, Band 42, Nr. 4, 2012, S. 463-484, https://ieeexplore.ieee.org/document/5978225.

13 Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012.

14 Gautam Kunapuli, Ensemble Methods for Machine Learning, Manning Publications, 2023.

15 Robi Palikar, „Ensemble Learning“, Ensemble Machine Learning: Methods and Applications, Springer, 2012.

16 Ibomoiye Domor Mienye und Yanxia Sun, „A Survey of Ensemble Learning: Concepts, Algorithms, Applications, and Prospects“, IEEE Access, Band 10, 2022, S. 99129-99149, https://ieeexplore.ieee.org/document/9893798.

17 Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012. Gautam Kunapuli, Ensemble Methods for Machine Learning, Manning Publications, 2023.

18 Robi Palikar, „Ensemble Learning“, Ensemble Machine Learning: Methods and Applications, Springer, 2012. Zhi-Hua Zhou, Ensemble Methods: Foundations and Algorithms, CRC Press, 2012.

19 Gautam Kunapuli, Ensemble Methods for Machine Learning, Manning Publications, 2023.

20 Devesh Walawalkar, Zhiqiang Shen und Marios Savvides, „Online Ensemble Model Compression Using Knowledge Distillation“, 2020, S. 18-35, https://link.springer.com/chapter/10.1007/978-3-030-58529-7_2.

21 Xinzhe Han, Shuhui Wang, Chi Su, Qingming Huang und Qi Tian, „Greedy Gradient Ensemble for Robust Visual Question Answering“, Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV), 2021, S. 1584-1593, https://openaccess.thecvf.com/content/ICCV2021/html/Han_Greedy_Gradient_Ensemble_for_Robust_Visual_Question_Answering_ICCV_2021_paper.html.

22 Usman Gohar, Sumon Biswas und Hridesh Rajan, „Towards Understanding Fairness and its Composition in Ensemble Machine Learning“, 2023 IEEE/ACM 45th International Conference on Software Engineering (ICSE), 2023, S. 1533-1545, https://ieeexplore.ieee.org/abstract/document/10172501. Khaled Badran, Pierre-Olivier Côté, Amanda Kolopanis, Rached Bouchoucha, Antonio Collante, Diego Elias Costa, Emad Shihab und Foutse Khomh, „Can Ensembling Preprocessing Algorithms Lead to Better Machine Learning Fairness?“ Computer, Band 56, Nr. 4, 2023, S. 71-79, https://ieeexplore.ieee.org/abstract/document/10098174. Swanand Kadhe, Anisa Halimi, Ambrish Rawat und Nathalie Baracaldo, „FairSISA: Ensemble Post-Processing to Improve Fairness of Unlearning in LLMs“, Socially Responsible Language Modelling Research Workshop, 2023, https://neurips.cc/virtual/2023/78908.

S