Ensemble-Lernen - Ensemble learning

In Statistiken und maschinelles Lernen , Ensemble Methoden verwenden , um mehrere Lernalgorithmen besser zu erhalten prädiktiven Leistung als könnte allein aus einem der konstituierenden Lernalgorithmen erhalten werden. Im Gegensatz zu einem statistischen Ensemble in der statistischen Mechanik, das normalerweise unendlich ist, besteht ein maschinelles Lernen-Ensemble nur aus einer konkreten endlichen Menge alternativer Modelle, ermöglicht jedoch typischerweise eine viel flexiblere Struktur zwischen diesen Alternativen.

Überblick

Überwachte Lernalgorithmen übernehmen die Aufgabe, einen Hypothesenraum zu durchsuchen, um eine geeignete Hypothese zu finden, die bei einem bestimmten Problem gute Vorhersagen macht. Auch wenn der Hypothesenraum Hypothesen enthält, die für ein bestimmtes Problem sehr gut geeignet sind, kann es sehr schwierig sein, eine gute zu finden. Ensembles kombinieren mehrere Hypothesen zu einer (hoffentlich) besseren Hypothese. Der Begriff Ensemble ist normalerweise Methoden vorbehalten, die mehrere Hypothesen unter Verwendung desselben Basislerners generieren. Der weiter gefasste Begriff der multiplen Klassifikatorsysteme umfasst auch die Hybridisierung von Hypothesen, die nicht von demselben Basislerner induziert werden.

Die Bewertung der Vorhersage eines Ensembles erfordert normalerweise mehr Berechnungen als die Bewertung der Vorhersage eines einzelnen Modells. In gewisser Hinsicht kann Ensemble-Lernen als ein Weg angesehen werden, um schlechte Lernalgorithmen durch Ausführen einer Menge zusätzlicher Berechnungen zu kompensieren. Andererseits besteht die Alternative darin, viel mehr auf einem Nicht-Ensemble-System zu lernen. Ein Ensemble-System kann beim Verbessern der Gesamtgenauigkeit bei der gleichen Zunahme der Rechen-, Speicher- oder Kommunikationsressourcen durch Verwendung dieser Zunahme bei zwei oder mehr Verfahren effizienter sein, als durch die Erhöhung der Ressourcenverwendung für ein einzelnes Verfahren verbessert worden wäre. Schnelle Algorithmen wie Entscheidungsbäume werden häufig in Ensemble-Verfahren (zum Beispiel Random Forests ) verwendet, obwohl auch langsamere Algorithmen von Ensemble-Techniken profitieren können.

Analog dazu wurden Ensemble-Techniken auch in unüberwachten Lernszenarien eingesetzt, beispielsweise beim Konsens-Clustering oder bei der Anomalieerkennung .

Ensembletheorie

Empirisch tendieren Ensembles zu besseren Ergebnissen, wenn es eine signifikante Vielfalt zwischen den Modellen gibt. Viele Ensemble-Methoden zielen daher darauf ab, die Vielfalt der Modelle, die sie kombinieren, zu fördern. Obwohl vielleicht nicht intuitiv, können eher zufällige Algorithmen (wie zufällige Entscheidungsbäume) verwendet werden, um ein stärkeres Ensemble zu erzeugen als sehr bewusste Algorithmen (wie entropiereduzierende Entscheidungsbäume). Mit einer Vielzahl von starken Lernalgorithmen, hat sich jedoch gezeigt , wirksamer zu sein als Techniken , die versuchen , stumm-down die Modelle , um Vielfalt zu fördern. Es ist möglich, die Diversität in der Trainingsphase des Modells durch Korrelation für Regressionsaufgaben oder durch Verwendung von Informationsmaßen wie Kreuzentropie für Klassifikationsaufgaben zu erhöhen.

Ensemblegröße

Während die Anzahl der Komponentenklassifikatoren eines Ensembles einen großen Einfluss auf die Genauigkeit der Vorhersage hat, gibt es nur eine begrenzte Anzahl von Studien, die sich mit diesem Problem befassen. Die a-priori- Bestimmung der Ensemblegröße sowie des Volumens und der Geschwindigkeit großer Datenströme macht dies für Online-Ensemble-Klassifikatoren noch wichtiger. Meist wurden statistische Tests verwendet, um die richtige Anzahl von Komponenten zu bestimmen. In jüngerer Zeit hat ein theoretischer Rahmen vorgeschlagen, dass es eine ideale Anzahl von Komponentenklassifikatoren für ein Ensemble gibt, so dass eine größere oder weniger als diese Anzahl von Klassifikatoren die Genauigkeit verschlechtern würde. Es wird "das Gesetz des abnehmenden Ertrags im Ensemblebau" genannt. Ihr theoretischer Rahmen zeigt, dass die Verwendung der gleichen Anzahl unabhängiger Komponentenklassifikatoren wie Klassenlabels die höchste Genauigkeit liefert.

Gängige Arten von Ensembles

Bayes optimaler Klassifikator

Der optimale Bayes-Klassifikator ist eine Klassifikationstechnik. Es ist ein Ensemble aller Hypothesen im Hypothesenraum. Im Durchschnitt kann es kein anderes Ensemble übertreffen. Der naive Bayes optimale Klassifikator ist eine Version davon, die davon ausgeht, dass die Daten bedingt unabhängig von der Klasse sind und die Berechnung einfacher macht. Jeder Hypothese wird eine Stimme proportional zu der Wahrscheinlichkeit gegeben, dass der Trainingsdatensatz von einem System abgetastet würde, wenn diese Hypothese wahr wäre. Um Trainingsdaten endlicher Größe zu erleichtern, wird das Votum jeder Hypothese auch mit der vorherigen Wahrscheinlichkeit dieser Hypothese multipliziert. Der optimale Bayes-Klassifikator kann mit der folgenden Gleichung ausgedrückt werden:

wobei ist die vorhergesagte Klasse, ist die Menge aller möglichen Klassen, ist der Hypothesenraum, bezieht sich auf eine Wahrscheinlichkeit und sind die Trainingsdaten. Als Gesamtheit stellt der Bayes-Optimale-Klassifikator eine Hypothese dar, die nicht unbedingt in . Die durch den Bayes-Optimalen Klassifikator repräsentierte Hypothese ist jedoch die optimale Hypothese im Ensembleraum (der Raum aller möglichen Ensembles, der nur aus Hypothesen in ) besteht.

Diese Formel kann mit dem Satz von Bayes neu formuliert werden , der besagt, dass das Posterior proportional zur Likelihood mal dem Prior ist:

somit,

Bootstrap-Aggregation (Bagging)

Bootstrap Aggregating, oft als Bagging abgekürzt , beinhaltet, dass jedes Modell im Ensemble mit gleichem Gewicht abstimmt. Um die Modellvarianz zu fördern, trainiert das Bagging jedes Modell im Ensemble unter Verwendung einer zufällig gezogenen Teilmenge des Trainingssatzes. Als Beispiel kombiniert der Random Forest- Algorithmus zufällige Entscheidungsbäume mit Bagging, um eine sehr hohe Klassifikationsgenauigkeit zu erreichen.

Beim Absacken werden die Proben so erzeugt, dass sich die Proben voneinander unterscheiden, jedoch ein Austausch erlaubt ist. Ersetzen bedeutet, dass eine Instanz in mehreren Samples mehrmals vorkommen kann oder in einigen Samples überhaupt nicht vorkommen kann. Diese Stichproben werden dann mehreren Lernenden gegeben und dann werden die Ergebnisse jedes Lernenden in Form einer Abstimmung kombiniert.

Erhöhen

Boosting beinhaltet den inkrementellen Aufbau eines Ensembles durch Trainieren jeder neuen Modellinstanz, um die Trainingsinstanzen hervorzuheben, die vorherige Modelle falsch klassifiziert haben. In einigen Fällen hat sich gezeigt, dass Boosting eine bessere Genauigkeit liefert als Bagging, aber es ist auch wahrscheinlicher, dass die Trainingsdaten zu stark angepasst werden. Die bei weitem gebräuchlichste Implementierung von Boosting ist Adaboost , obwohl berichtet wird , dass einige neuere Algorithmen bessere Ergebnisse erzielen.

Beim Boosting wird den Beispiel-Trainingsdaten (z. B. D1) gleich zu Beginn der Runde ein gleiches Gewicht (gleichmäßige Wahrscheinlichkeitsverteilung) gegeben. Diese Daten (D1) werden dann einem Basislerner (z. B. L1) gegeben. Den falsch klassifizierten Instanzen von L1 wird ein höheres Gewicht zugewiesen als den korrekt klassifizierten Instanzen, aber bedenken Sie, dass die Gesamtwahrscheinlichkeitsverteilung gleich 1 ist. Diese verstärkten Daten (z. B. D2) werden dann an den zweiten Basislerner (z. B. L2 ) und so weiter. Die Ergebnisse werden dann in Form einer Abstimmung zusammengeführt.

Mittelwertbildung nach Bayes-Modell

Bayesian Model Averaging (BMA) macht Vorhersagen unter Verwendung eines Durchschnitts über mehrere Modelle mit Gewichtungen, die durch die A-posteriori-Wahrscheinlichkeit jedes Modells gegeben sind, die die Daten gegeben sind. Es ist bekannt, dass BMA im Allgemeinen bessere Antworten liefert als ein einzelnes Modell, das z. B. durch schrittweise Regression erhalten wird , insbesondere wenn sehr unterschiedliche Modelle eine nahezu identische Leistung im Trainingssatz aufweisen, aber ansonsten ganz unterschiedlich funktionieren können.

Die offensichtlichste Frage bei jeder Technik, die den Satz von Bayes verwendet, ist der Prior, dh eine Spezifikation der Wahrscheinlichkeit (vielleicht subjektiv), dass jedes Modell für einen bestimmten Zweck am besten zu verwenden ist. Konzeptionell kann BMA mit jedem früheren verwendet werden. Die ensembleBMA- und BMA-Pakete für R verwenden die durch das Bayes'sche Informationskriterium (BIC) implizierte Prior in Anlehnung an Raftery (1995). Das BAS-Paket für R unterstützt die Verwendung der durch das Akaike-Informationskriterium (AIC) implizierten Prioren und anderer Kriterien gegenüber den alternativen Modellen sowie der Prioren gegenüber den Koeffizienten.

Der Unterschied zwischen BIC und AIC ist die Stärke der Präferenz für Sparsamkeit. Die Strafe für die Modellkomplexität gilt für den BIC und für den AIC. Die Theorie der asymptotischen großen Stichproben hat ergeben, dass, wenn es ein bestes Modell gibt, der BIC mit zunehmender Stichprobengröße stark konsistent ist, dh mit ziemlicher Sicherheit findet, während AIC es möglicherweise nicht findet, da AIC weiterhin eine übermäßige A-posterior-Wahrscheinlichkeit auf Modelle legen kann, die komplizierter als sie sein müssen. Wenn es uns andererseits mehr um die Effizienz geht, dh den minimalen mittleren quadratischen Vorhersagefehler, dann sind AIC und AICc asymptotisch „effizient“, während BIC es nicht ist.

Burnham und Anderson (1998, 2002) trugen wesentlich dazu bei, einem breiteren Publikum die Grundideen des Bayes-Modells zur Mittelung und Popularisierung der Methodik vorzustellen. Die Verfügbarkeit von Software, einschließlich anderer kostenloser Open-Source-Pakete für R über die oben genannten hinaus, trug dazu bei, die Methoden einem breiteren Publikum zugänglich zu machen.

Häussler et al. (1994) zeigten, dass bei Verwendung von BMA zur Klassifikation der erwartete Fehler höchstens das Doppelte des erwarteten Fehlers des Bayes-Optimalen Klassifikators beträgt.

Bayes'sche Modellkombination

Bayesian Model Combination (BMC) ist eine algorithmische Korrektur der Bayesian Model Averaging (BMA). Anstatt jedes Modell im Ensemble einzeln abzutasten, tastet es aus dem Raum möglicher Ensembles ab (mit Modellgewichtungen, die zufällig aus einer Dirichlet-Verteilung mit einheitlichen Parametern gezogen werden). Diese Modifikation überwindet die Tendenz von BMA, sich dahingehend zu konvergieren, das gesamte Gewicht einem einzigen Modell zu geben. Obwohl BMC etwas rechenaufwendiger ist als BMA, liefert es tendenziell dramatisch bessere Ergebnisse. Es hat sich gezeigt, dass die Ergebnisse von BMC im Durchschnitt (mit statistischer Signifikanz) besser sind als BMA und Absacken.

Die Verwendung des Bayes-Gesetzes zur Berechnung von Modellgewichtungen erfordert die Berechnung der Wahrscheinlichkeit der Daten, die jedem Modell gegeben sind. Normalerweise entspricht keines der Modelle im Ensemble genau der Verteilung, aus der die Trainingsdaten generiert wurden, sodass alle für diesen Term korrekt einen Wert nahe Null erhalten. Dies würde gut funktionieren, wenn das Ensemble groß genug wäre, um den gesamten Modellraum abzutasten, aber das ist selten möglich. Folglich wird jedes Muster in den Trainingsdaten bewirken, dass sich die Gewichtung des Ensembles in Richtung des Modells in dem Ensemble verschiebt, das der Verteilung der Trainingsdaten am nächsten ist. Es reduziert sich im Wesentlichen auf ein unnötig komplexes Verfahren zur Durchführung der Modellauswahl.

Die möglichen Gewichtungen für ein Ensemble kann man sich auf einem Simplex liegend vorstellen. An jedem Scheitelpunkt des Simplex wird das gesamte Gewicht einem einzelnen Modell im Ensemble zugewiesen. BMA konvergiert zu dem Scheitelpunkt, der der Verteilung der Trainingsdaten am nächsten liegt. Im Gegensatz dazu konvergiert BMC zu dem Punkt, an dem diese Verteilung auf den Simplex projiziert wird. Mit anderen Worten, anstatt das eine Modell auszuwählen, das der erzeugenden Verteilung am nächsten ist, wird die Kombination von Modellen gesucht, die der erzeugenden Verteilung am nächsten kommt.

Die Ergebnisse von BMA können oft angenähert werden, indem eine Kreuzvalidierung verwendet wird, um das beste Modell aus einer Reihe von Modellen auszuwählen. Ebenso können die Ergebnisse von BMC angenähert werden, indem eine Kreuzvalidierung verwendet wird, um die beste Ensemble-Kombination aus einer zufälligen Auswahl möglicher Gewichtungen auszuwählen.

Eimer mit Modellen

Ein "Modelleimer" ist eine Ensemble-Technik, bei der ein Modellauswahlalgorithmus verwendet wird, um das beste Modell für jedes Problem auszuwählen. Beim Testen mit nur einem Problem kann ein Bucket von Modellen keine besseren Ergebnisse erzielen als das beste Modell im Set, aber wenn es über viele Probleme hinweg ausgewertet wird, liefert es im Durchschnitt viel bessere Ergebnisse als jedes Modell im Set.

Der am häufigsten verwendete Ansatz für die Modellauswahl ist die Kreuzvalidierungsauswahl (manchmal als "Bake-Off-Wettbewerb" bezeichnet). Es wird mit folgendem Pseudocode beschrieben:

For each model m in the bucket:
    Do c times: (where 'c' is some constant)
        Randomly divide the training dataset into two datasets: A, and B.
        Train m with A
        Test m with B
Select the model that obtains the highest average score

Die Kreuzvalidierungsauswahl kann wie folgt zusammengefasst werden: "Probieren Sie sie alle mit dem Trainingsset aus und wählen Sie diejenige aus, die am besten funktioniert".

Gating ist eine Verallgemeinerung der Kreuzvalidierungsauswahl. Dabei wird ein weiteres Lernmodell trainiert, um zu entscheiden, welches der Modelle im Bucket am besten zur Lösung des Problems geeignet ist. Für das Gating-Modell wird häufig ein Perzeptron verwendet. Es kann verwendet werden, um das "beste" Modell auszuwählen, oder es kann verwendet werden, um den Vorhersagen von jedem Modell im Bucket eine lineare Gewichtung zu geben.

Wenn ein Bucket von Modellen mit einer großen Anzahl von Problemen verwendet wird, kann es wünschenswert sein, das Training einiger der Modelle zu vermeiden, deren Training lange dauert. Landmark Learning ist ein Meta-Learning-Ansatz, der versucht, dieses Problem zu lösen. Dabei werden nur die schnellen (aber unpräzisen) Algorithmen im Bucket trainiert und dann die Leistung dieser Algorithmen verwendet, um zu bestimmen, welcher langsame (aber genaue) Algorithmus am wahrscheinlichsten am besten abschneidet.

Stapeln

Beim Stapeln (manchmal auch als gestapelte Generalisierung bezeichnet ) wird ein Lernalgorithmus trainiert, um die Vorhersagen mehrerer anderer Lernalgorithmen zu kombinieren. Zuerst werden alle anderen Algorithmen unter Verwendung der verfügbaren Daten trainiert, dann wird ein Kombinatoralgorithmus trainiert, um eine endgültige Vorhersage zu treffen, wobei alle Vorhersagen der anderen Algorithmen als zusätzliche Eingaben verwendet werden. Wenn ein beliebiger Kombinatoralgorithmus verwendet wird, kann das Stapeln theoretisch jede der in diesem Artikel beschriebenen Ensemble-Techniken darstellen, obwohl in der Praxis oft ein logistisches Regressionsmodell als Kombinator verwendet wird.

Das Stapeln liefert in der Regel eine bessere Leistung als jedes einzelne der trainierten Modelle. Es wurde sowohl bei überwachten Lernaufgaben (Regression, Klassifikation und Fernunterricht) als auch beim unüberwachten Lernen (Dichteschätzung) erfolgreich eingesetzt. Es wurde auch verwendet, um die Fehlerrate der Absackung zu schätzen. Es wurde berichtet, dass es die Bayes'sche Modellmittelung übertrifft. Die beiden Top-Performer im Netflix-Wettbewerb nutzten Blending , das als eine Form des Stacking angesehen werden kann.

Implementierungen in Statistikpaketen

  • R : Mindestens drei Pakete bieten Bayes-Modell-Mittelungswerkzeuge, einschließlich des BMS- Pakets (ein Akronym für Bayesian Model Selection), des BAS- Pakets (ein Akronym für Bayesian Adaptive Sampling) und des BMA- Pakets.
  • Python : Scikit-learn , ein Paket für maschinelles Lernen in Python, bietet Pakete für Ensemble-Lernen, einschließlich Pakete für Bagging- und Mittelungsmethoden.
  • MATLAB : Klassifizierungs-Ensembles werden in der Statistics and Machine Learning Toolbox implementiert.

Ensemble-Lernanwendungen

In den letzten Jahren ist die Zahl seiner Anwendungen aufgrund der wachsenden Rechenleistung, die es ermöglicht, das Lernen großer Ensembles in einem vernünftigen Zeitrahmen zu trainieren, zunehmend gewachsen. Einige der Anwendungen von Ensemble-Klassifikatoren umfassen:

Fernerkundung

Landbedeckungskartierung

Die Landbedeckungskartierung ist eine der Hauptanwendungen von Erdbeobachtungssatellitensensoren , die Fernerkundungs- und Geodaten verwenden , um Materialien und Objekte zu identifizieren, die sich auf der Oberfläche von Zielgebieten befinden. Im Allgemeinen umfassen die Klassen von Zielmaterialien Straßen, Gebäude, Flüsse, Seen und Vegetation. Einige unterschiedliche Ensemble Lernen auf Basis Ansätze künstliche neuronale Netze , Kernel - Hauptkomponentenanalyse (KPCA), Entscheidungsbäume mit Verstärkung , Random Forest und automatische Design von mehreren Klassifizierer Systemen werden vorgeschlagen , um effizient zu identifizieren Landbedeckungs Objekte.

Änderungserkennung

Die Änderungserkennung ist ein Bildanalyseproblem , das aus der Identifizierung von Orten besteht, an denen sich die Landbedeckung im Laufe der Zeit verändert hat. Die Erkennung von Veränderungen wird häufig in Bereichen wie Stadtwachstum , Wald- und Vegetationsdynamik , Landnutzung und Katastrophenüberwachung eingesetzt . Die frühesten Anwendungen von Ensemble Klassifizierer in Änderungserkennung sind mit der Mehrheit entworfen Abstimmung , Bayesian Durchschnitt und der maximalen a posteriori Wahrscheinlichkeit .

Computersicherheit

Verteilter Denial-of-Service

Distributed Denial of Service ist einer der bedrohlichsten Cyberangriffe , die einem Internetdienstanbieter passieren können . Durch Kombinieren der Ausgabe einzelner Klassifikatoren reduzieren Ensemble-Klassifikatoren den Gesamtfehler beim Erkennen und Unterscheiden solcher Angriffe von legitimen Flash-Massen .

Malware-Erkennung

Die Klassifizierung von Malware- Codes wie Computerviren , Computerwürmern , Trojanern , Ransomware und Spyware unter Verwendung von Techniken des maschinellen Lernens wird durch das Dokumentkategorisierungsproblem inspiriert . Ensemble-Lernsysteme haben sich in diesem Bereich als wirksam erwiesen.

Einbruchserkennung

Ein Intrusion Detection System überwacht Computernetzwerke oder Computersysteme , um Eindringlingscodes wie bei einem Anomalieerkennungsprozess zu identifizieren . Ensemble-Lernen hilft solchen Überwachungssystemen erfolgreich, ihren Gesamtfehler zu reduzieren.

Gesichtserkennung

Die Gesichtserkennung , die in letzter Zeit zu einem der beliebtesten Forschungsgebiete der Mustererkennung geworden ist , bewältigt die Identifizierung oder Verifizierung einer Person anhand ihrer digitalen Bilder .

Hierarchische Ensembles, die auf dem Gabor Fisher-Klassifikator und unabhängigen Komponentenanalyse- Vorverarbeitungstechniken basieren, sind einige der frühesten Ensembles, die auf diesem Gebiet eingesetzt wurden.

Emotionserkennung

Während die Spracherkennung hauptsächlich auf Deep Learning basiert , weil die meisten Branchenakteure in diesem Bereich wie Google , Microsoft und IBM zeigen, dass die Kerntechnologie ihrer Spracherkennung auf diesem Ansatz basiert, kann auch die sprachbasierte Emotionserkennung eine zufriedenstellende Leistung erbringen mit Ensemble-Lernen.

Es wird auch erfolgreich bei der Gesichtsemotionserkennung eingesetzt .

Entdeckung eines Betruges

Die Betrugserkennung befasst sich mit der Identifizierung von Bankbetrug , wie Geldwäsche , Kreditkartenbetrug und Telekommunikationsbetrug , die weite Bereiche der Forschung und Anwendung des maschinellen Lernens umfassen . Da Ensemble-Lernen die Robustheit der normalen Verhaltensmodellierung verbessert, wurde es als effiziente Technik vorgeschlagen, solche betrügerischen Fälle und Aktivitäten in Bank- und Kreditkartensystemen zu erkennen.

Finanzielle Entscheidungsfindung

Die Genauigkeit der Vorhersage von Geschäftsausfällen ist ein sehr wichtiger Punkt bei der Entscheidungsfindung im Finanzbereich. Daher werden verschiedene Ensemble-Klassifikatoren vorgeschlagen, um Finanzkrisen und finanzielle Notlagen vorherzusagen . Auch im Handel basierte Manipulation Problem, wo Käufer und Verkäufer versuchen zu manipulieren Aktienkurse durch den Kauf und Verkauf Aktivitäten, ensemble Klassifizierer ist erforderlich , um die Veränderungen in den analysieren Börsendaten und verdächtige Symptom erkennt Aktienkursmanipulation .

Medizin

Ensemble-Klassifikatoren wurden erfolgreich in den Neurowissenschaften , der Proteomik und der medizinischen Diagnose wie bei der Erkennung neurokognitiver Störungen (z. B. Alzheimer oder myotone Dystrophie ) auf der Grundlage von MRT-Datensätzen und der zervikalen Zytologie-Klassifizierung eingesetzt.

Siehe auch

Verweise

Weiterlesen

Externe Links