Was ist Überanpassung beim maschinellen Lernen und wie kann es vermieden werden?



Dieser Artikel behandelt die Überanpassung beim maschinellen Lernen mit Beispielen und einigen Techniken zur Vermeidung der Überanpassung in einem maschinellen Lernmodell.

Beim Erstellen eines Modells für maschinelles Lernen geht es nicht nur darum, die Daten einzugeben, sondern es gibt viele Mängel, die sich auf die Genauigkeit eines Modells auswirken. Überanpassung ist ein solcher Mangel beim maschinellen Lernen, der sowohl die Genauigkeit als auch die Leistung des Modells beeinträchtigt. Die folgenden Themen werden in diesem Artikel behandelt:

Was ist Überanpassung beim maschinellen Lernen?

Ein statistisches Modell soll überpasst sein, wenn wir ihm viel mehr Daten als nötig zuführen. Stellen Sie sich vor, Sie möchten in übergroße Kleidung passen, um die Beziehung zu verbessern.





Wenn ein Modell mehr Daten anpasst, als es tatsächlich benötigt, fängt es an, die verrauschten Daten und ungenauen Werte in den Daten zu erfassen. Infolgedessen nehmen die Effizienz und Genauigkeit des Modells ab. Schauen wir uns einige Beispiele für Überanpassung an, um zu verstehen, wie es tatsächlich passiert.



Beispiele für Überanpassung

Beispiel 1

Wenn wir ein Beispiel von einfach nehmen lineare Regression Beim Training der Daten geht es darum, die minimalen Kosten zwischen der Best-Fit-Linie und den Datenpunkten herauszufinden. Es werden mehrere Iterationen durchgeführt, um die optimale Anpassung zu ermitteln und die Kosten zu minimieren. Hier kommt die Überanpassung ins Spiel.



Die im obigen Bild gezeigte Linie kann ein sehr effizientes Ergebnis für einen neuen Datenpunkt liefern. Im Falle einer Überanpassung können wir beim Ausführen des Trainingsalgorithmus für den Datensatz die Kosten mit jeder Anzahl von Iterationen reduzieren.

Führen Sie dies aus Zu lange bedeutet geringere Kosten, passt aber auch zu den verrauschten Daten aus dem Datensatz. Das Ergebnis würde ungefähr so ​​aussehen wie in der Grafik unten.

Dies mag effizient aussehen, ist es aber nicht wirklich. Das Hauptziel eines Algorithmus wie lineare Regression ist es, einen dominanten Trend zu finden und die Datenpunkte entsprechend anzupassen. In diesem Fall passt die Linie jedoch zu allen Datenpunkten, was für die Effizienz des Modells bei der Vorhersage optimaler Ergebnisse für neue Eintrittsdatenpunkte irrelevant ist.

Betrachten wir nun ein aussagekräftigeres Beispiel anhand einer Problemstellung.

Beispiel 2

Problemstellung: Nehmen wir an, wir möchten vorhersagen, ob ein Fußballspieler einen Platz in einem Tier-1-Fußballverein erhält, basierend auf seiner aktuellen Leistung in der Tier-2-Liga.

Stellen Sie sich nun vor, wir trainieren und passen das Modell an 10.000 solcher Spieler mit Ergebnissen an. Wenn wir versuchen, das Ergebnis anhand des Originaldatensatzes vorherzusagen, nehmen wir an, wir haben eine Genauigkeit von 99%. Die Genauigkeit eines anderen Datensatzes liegt jedoch bei etwa 50 Prozent. Dies bedeutet, dass das Modell aus unseren Trainingsdaten und unsichtbaren Daten nicht gut verallgemeinert werden kann.

So sieht Überanpassung aus. Es ist ein sehr häufiges Problem im maschinellen Lernen und sogar in der Datenwissenschaft. Lassen Sie uns nun das Signal und das Rauschen verstehen.

Signal gegen Rauschen

Bei der prädiktiven Modellierung bezieht sich das Signal auf das wahre zugrunde liegende Muster, das dem Modell hilft, die Daten zu lernen. Andererseits ist Rauschen irrelevant und zufällige Daten im Datensatz. Um das Konzept von Rauschen und Signal zu verstehen, nehmen wir ein reales Beispiel.

Nehmen wir an, wir wollen Alter und Alphabetisierung bei Erwachsenen modellieren. Wenn wir einen sehr großen Teil der Bevölkerung befragen, werden wir eine klare Beziehung finden. Dies ist das Signal, während Rauschen das Signal stört. Wenn wir dasselbe bei einer lokalen Bevölkerung tun, wird die Beziehung schlammig. Es würde durch Ausreißer und Zufälligkeit beeinflusst, zum Beispiel, wenn ein Erwachsener früh zur Schule ging oder sich ein Erwachsener keine Bildung leisten konnte usw.

Wenn es um Rauschen und Signal beim maschinellen Lernen geht, trennt ein guter Algorithmus für maschinelles Lernen automatisch Signale vom Rauschen. Wenn der Algorithmus zu komplex oder ineffizient ist, kann er auch das Rauschen lernen. Daher Überanpassung des Modells. Lassen Sie uns auch die Unteranpassung beim maschinellen Lernen verstehen.

Was ist Unteranpassung?

Um eine Überanpassung zu vermeiden, könnten wir das Training zu einem früheren Zeitpunkt beenden. Es kann aber auch dazu führen, dass das Modell nicht genug aus Trainingsdaten lernen kann, sodass es möglicherweise schwierig ist, den vorherrschenden Trend zu erfassen. Dies wird als Unteranpassung bezeichnet. Das Ergebnis ist dasselbe wie Überanpassung und Ineffizienz bei der Vorhersage von Ergebnissen.

Nachdem wir verstanden haben, was Unter- und Überanpassung beim maschinellen Lernen wirklich ist, versuchen wir zu verstehen, wie wir Überanpassung beim maschinellen Lernen erkennen können.

Wie erkennt man eine Überanpassung?

Die größte Herausforderung bei der Überanpassung besteht darin, die Genauigkeit der Leistung unseres Modells anhand neuer Daten abzuschätzen. Wir könnten die Genauigkeit erst abschätzen, wenn wir sie tatsächlich testen.

Um dieses Problem zu lösen, können wir den ursprünglichen Datensatz in separate Trainings- und Testdatensätze aufteilen. Mit dieser Technik können wir tatsächlich abschätzen, wie gut unser Modell mit den neuen Daten funktioniert.

Lassen Sie uns dies anhand eines Beispiels verstehen. Stellen Sie sich vor, wir erhalten eine Genauigkeit von über 90 Prozent für das Trainingsset und eine Genauigkeit von 50 Prozent für das Testset. Dann wäre es automatisch eine rote Fahne für das Modell.

Eine andere Möglichkeit, eine Überanpassung zu erkennen ist mit einem vereinfachten Modell zu beginnen, das als Benchmark dienen wird.

Wenn Sie mit diesem Ansatz komplexere Algorithmen ausprobieren, können Sie verstehen, ob sich die zusätzliche Komplexität für das Modell überhaupt lohnt oder nicht. Es ist auch bekannt als Occams Rasiermessertest Grundsätzlich wird das vereinfachte Modell bei vergleichbarer Leistung bei zwei Modellen gewählt. Obwohl das Erkennen von Überanpassungen eine gute Praxis ist,Es gibt jedoch auch verschiedene Techniken, um eine Überanpassung zu verhindern. Lassen Sie uns einen Blick darauf werfen, wie wir eine Überanpassung beim maschinellen Lernen verhindern können.

Wie vermeide ich eine Überanpassung beim maschinellen Lernen?

Es gibt verschiedene Techniken, um eine Überanpassung des maschinellen Lernens zu vermeiden.

  1. Kreuzvalidierung

  2. Training mit mehr Daten

  3. Funktionen entfernen

  4. Frühes Anhalten

  5. Regulierung

  6. Zusammenbau

1. Kreuzvalidierung

Eine der leistungsstärksten Funktionen zur Vermeidung / Verhinderung von Überanpassungen ist die Kreuzvalidierung. Die Idee dahinter ist, die anfänglichen Trainingsdaten zu verwenden, um Mini-Zugtest-Splits zu generieren, und diese Splits dann zu verwenden, um Ihr Modell zu optimieren.

Bei einer Standard-k-fachen Validierung werden die Daten in k-Teilmengen aufgeteilt, die auch als Falten bezeichnet werden. Danach wird der Algorithmus iterativ auf k-1-Falten trainiert, während die verbleibenden Falten als Testsatz verwendet werden, der auch als Holdout-Faltung bezeichnet wird.

Die Kreuzvalidierung hilft uns, die Hyperparameter nur mit dem ursprünglichen Trainingssatz abzustimmen. Grundsätzlich wird der Testsatz separat als wahrer unsichtbarer Datensatz für die Auswahl des endgültigen Modells aufbewahrt. Vermeiden Sie daher eine Überanpassung.

2. Training mit mehr Daten

Diese Technik funktioniert möglicherweise nicht jedes Mal, wie wir auch im obigen Beispiel besprochen haben, bei dem das Training mit einer signifikanten Bevölkerungszahl dem Modell hilft. Grundsätzlich hilft es dem Modell, das Signal besser zu identifizieren.

In einigen Fällen können die erhöhten Daten jedoch auch bedeuten, dass dem Modell mehr Rauschen zugeführt wird. Wenn wir das Modell mit mehr Daten trainieren, müssen wir sicherstellen, dass die Daten sauber und frei von Zufälligkeiten und Inkonsistenzen sind.

3. Entfernen von Funktionen

Obwohl einige Algorithmen eine automatische Auswahl von Funktionen haben. Für eine erhebliche Anzahl von Personen, die keine integrierte Feature-Auswahl haben, können wir einige irrelevante Features manuell aus den Eingabe-Features entfernen, um die Generalisierung zu verbessern.

Eine Möglichkeit besteht darin, eine Schlussfolgerung daraus abzuleiten, wie ein Feature in das Modell passt. Es ist dem zeilenweisen Debuggen des Codes ziemlich ähnlich.

Falls ein Feature die Relevanz im Modell nicht erklären kann, können wir diese Features einfach identifizieren. Wir können sogar einige Heuristiken zur Merkmalsauswahl für einen guten Ausgangspunkt verwenden.

4. Frühes Anhalten

Wenn das Modell trainiert, können Sie anhand jeder Iteration tatsächlich messen, wie gut das Modell funktioniert. Wir können dies bis zu einem Punkt tun, an dem die Iterationen die Leistung des Modells verbessern. Danach passt das Modell die Trainingsdaten an, da die Generalisierung nach jeder Iteration schwächer wird.

Frühzeitiges Anhalten bedeutet also im Grunde, den Trainingsprozess anzuhalten, bevor das Modell den Punkt überschreitet, an dem das Modell beginnt, die Trainingsdaten zu überanpassen. Diese Technik wird meistens in verwendet tiefes Lernen .

5. Regularisierung

Dies bedeutet im Grunde, dass Sie Ihr Modell künstlich zwingen müssen, einfacher zu sein, indem Sie ein breiteres Spektrum an Techniken verwenden. Es hängt ganz von der Art des Lernenden ab, den wir verwenden. Zum Beispiel können wir a beschneiden Verwenden Sie einen Ausfallenden an einem neurales Netzwerk oder fügen Sie der Kostenfunktion in der Regression einen Strafparameter hinzu.

Sehr oft ist Regularisierung auch ein Hyperparameter. Dies bedeutet, dass es auch durch Kreuzvalidierung optimiert werden kann.

6. Zusammenbau

Diese Technik kombiniert im Wesentlichen Vorhersagen aus verschiedenen Modellen des maschinellen Lernens. Zwei der gebräuchlichsten Methoden zum Zusammenstellen sind nachstehend aufgeführt:

  • Durch das Absacken wird versucht, die Wahrscheinlichkeit einer Überanpassung der Modelle zu verringern

  • Boosting versucht, die Vorhersageflexibilität einfacherer Modelle zu verbessern

Obwohl beide Ensemble-Methoden sind, beginnt der Ansatz völlig in entgegengesetzten Richtungen. Das Absacken verwendet komplexe Basismodelle und versucht, ihre Vorhersagen zu glätten, während das Boosten einfache Basismodelle verwendet und versucht, die Gesamtkomplexität zu steigern.

Was ist Goodness of Fit?

Bei der statistischen Modellierung bezieht sich die Anpassungsgüte darauf, wie genau die Ergebnisse oder vorhergesagten Werte mit den beobachteten oder wahren Werten übereinstimmen.Ein Modell, das Rauschen anstelle des Signals gelernt hat, ist überpasst, da es in den Trainingsdatensatz passt, aber mit dem neuen Datensatz eine schlechtere Effizienz aufweist.

Der Kompromiss zwischen Vorspannung und Varianz

Sowohl Varianz als auch Bias sind Formen von Vorhersagefehlern in . Der Kompromiss zwischen hoher Varianz und hoher Verzerrung ist ein sehr wichtiges Konzept in der Statistik und im maschinellen Lernen. Dies ist ein Konzept, das alle überwachten Algorithmen für maschinelles Lernen betrifft.

Der Bias-Varianz-Kompromiss hat einen sehr signifikanten Einfluss auf die Bestimmung der Komplexität, Unteranpassung und Überanpassung für jedes Modell des maschinellen Lernens.

Addition von zwei Zahlen in Java

Vorspannen

Es ist nichts anderes als der Unterschied zwischen den vorhergesagten Werten und den tatsächlichen oder wahren Werten im Modell. Für das Modell ist es nicht immer einfach, aus ziemlich komplexen Signalen zu lernen.

Stellen wir uns vor, wir passen a lineare Regression zu einem Modell mit nichtlinearen Daten. Unabhängig davon, wie effizient das Modell die Beobachtungen lernt, werden die Kurven nicht effizient modelliert. Es ist als Unteranpassung bekannt.

Varianz

Es bezieht sich auf die Empfindlichkeit des Modells für bestimmte Sätze in den Trainingsdaten. Ein Algorithmus mit hoher Varianz erzeugt ein bizarres Modell, das sich drastisch vom Trainingssatz unterscheidet.

Stellen Sie sich einen Algorithmus vor, der zum uneingeschränkten und superflexiblen Modell passt. Er lernt auch aus dem Rauschen im Trainingssatz, das zu einer Überanpassung führt.

Bias-Varianz-Kompromiss

Ein Algorithmus für maschinelles Lernen kann nicht als einmalige Methode zum Trainieren des Modells angesehen werden, sondern ist ein sich wiederholender Prozess.

Algorithmen mit geringer Varianz und hoher Vorspannung sind weniger komplex und weisen eine einfache und starre Struktur auf.

  • Sie trainieren die Modelle, die konsistent, aber im Durchschnitt ungenau sind.

  • Dazu gehören lineare oder parametrische Algorithmen wie Regression, , usw.

Algorithmen mit hoher Varianz und niedriger Vorspannung sind tendenziell komplexer und weisen eine flexible Struktur auf.

  • Sie trainieren die Modelle, die inkonsistent, aber im Durchschnitt genau sind.

  • Dazu gehören nichtlineare oder nichtparametrische Algorithmen wie z , , usw.

Dies bringt uns zum Ende dieses Artikels, in dem wir Überanpassung beim maschinellen Lernen und verschiedene Techniken zur Vermeidung von Überanpassung gelernt haben. Ich hoffe, Sie sind mit allem klar, was Ihnen in diesem Tutorial mitgeteilt wurde.

Wenn Sie diesen Artikel zum Thema „Überanpassung beim maschinellen Lernen“ relevant fanden, lesen Sie die Ein vertrauenswürdiges Online-Lernunternehmen mit einem Netzwerk von mehr als 250.000 zufriedenen Lernenden auf der ganzen Welt.

Wir sind hier, um Ihnen bei jedem Schritt auf Ihrer Reise zu helfen und einen Lehrplan zu erstellen, der für Studenten und Fachleute konzipiert ist, die eine sein möchten . Der Kurs soll Ihnen einen Vorsprung in die Python-Programmierung verschaffen und Sie sowohl für Kern- als auch für fortgeschrittene Python-Konzepte sowie für verschiedene Konzepte schulen mögen , , usw.

Wenn Sie auf Fragen stoßen, können Sie alle Ihre Fragen im Kommentarbereich von „Überanpassung an maschinelles Lernen“ stellen. Unser Team wird diese gerne beantworten.