Wann ist ein Modell Underfitted?


56

Die Logik besagt oft, dass durch die Unteranpassung eines Modells dessen Generalisierungskapazität erhöht wird. Trotzdem verschlechtern sich die Modelle zu einem bestimmten Zeitpunkt eindeutig, unabhängig von der Komplexität der Daten.

Woher wissen Sie, dass Ihr Modell die richtige Balance gefunden hat und nicht den Daten entspricht, die es modellieren möchte?


Hinweis: Dies ist eine Folge meiner Frage: " Warum ist Überanpassung schlecht? "


Ich vermute, Sie meinten: " Logik besagt oft, dass durch (Über-) Unteranpassung eines Modells dessen Verallgemeinerungsfähigkeit erhöht wird. "
Rubens,

Antworten:


43

Ein Modell passt nicht, wenn es in Bezug auf die Daten, die es zu modellieren versucht, zu einfach ist.

Eine Möglichkeit, eine solche Situation zu erkennen, ist die Verwendung des Bias-Varianz-Ansatzes , der wie folgt dargestellt werden kann:

Bildbeschreibung hier eingeben

Ihr Modell ist unterversorgt, wenn Sie eine hohe Neigung haben.


Um zu wissen, ob Sie einen zu hohen Bias oder eine zu hohe Varianz haben, betrachten Sie das Phänomen in Bezug auf Trainings- und Testfehler:

Hohe Verzerrung: Diese Lernkurve zeigt einen hohen Fehler sowohl im Trainings- als auch im Testsatz, sodass der Algorithmus unter einer hohen Verzerrung leidet:

Bildbeschreibung hier eingeben

Hohe Varianz: Diese Lernkurve zeigt eine große Lücke zwischen Trainings- und Testsatzfehlern, sodass der Algorithmus unter einer hohen Varianz leidet.

Bildbeschreibung hier eingeben

Wenn ein Algorithmus unter hoher Varianz leidet:

  • Weitere Daten werden wahrscheinlich helfen
  • ansonsten reduzieren Sie die Modellkomplexität

Wenn ein Algorithmus unter einer hohen Verzerrung leidet:

  • die Modellkomplexität erhöhen

Ich würde empfehlen, den Kurs "Maschinelles Lernen" von Coursera im Abschnitt "10: Hinweise zur Anwendung von Maschinellem Lernen" zu lesen, aus dem ich die obigen Grafiken entnommen habe.


Wollten Sie am letzten Aufzählungspunkt "Erhöhung Reduzierung der Modellkomplexität" sagen? Ich denke nur "die Modellkomplexität erhöhen". . . Übrigens, ich bin in diesem Kurs eingeschrieben und habe gerade das Video gesehen, auf das Sie sich beziehen.
Neil Slater

@ NeilSlater Danke, guter Fang, es gab in der Tat einen Tippfehler :)
Franck Dernoncourt

1
Sie scheinen anzunehmen, dass der Trainingsfehler eine anständige Schätzung des Bias ist. Die Verzerrung (für den einfachen Fall der MSE-Verlustfunktion) ist definiert als der erwartete Fehler, den Sie bei den neuen Daten machen , wenn Sie Ihre Vorhersage über alle verschiedenen Trainingssätze mitteln . Was macht J_train (nicht über Trainingssätze gemittelt und keine neuen Daten verwendend) zu einer anständigen Schätzung des Bias?
Max.

@FranckDernoncourt können wir Über- und Unteranpassung mit der Trainingsgröße und den Testdaten in Verbindung bringen? Kann man sagen, dass das auf kleineren Trainingssets trainierte Modell unterfällt?
Sudip Bhandari

10

Um Ihre Frage zu beantworten, ist es wichtig, den Referenzrahmen zu verstehen, den Sie suchen. Wenn Sie nach dem suchen, was Sie philosophisch bei der Modellanpassung erreichen wollen, lesen Sie Rubens Antwort, er kann diesen Kontext gut erklären.

In der Praxis wird Ihre Frage jedoch fast ausschließlich von den Geschäftszielen bestimmt.

Um ein konkretes Beispiel zu nennen: Nehmen wir an, Sie sind Kreditsachbearbeiter, Sie haben Kredite im Wert von 3.000 USD vergeben, und wenn die Leute Sie zurückzahlen, verdienen Sie 50 USD Darlehen. Lassen Sie uns dies einfach halten und sagen, dass die Ergebnisse entweder die vollständige Zahlung oder die Standardzahlung sind.

Aus geschäftlicher Sicht können Sie die Leistung eines Modells mit einer Kontingenzmatrix zusammenfassen:

Bildbeschreibung hier eingeben

Wenn das Modell voraussagt, dass jemand in Verzug gerät, tun sie das? Um die Nachteile von Über- und Unteranpassung zu bestimmen, ist es hilfreich, sich das Problem als Optimierungsproblem vorzustellen, da in jedem Querschnitt der prognostizierten Verse der tatsächlichen Modellleistung entweder Kosten oder Gewinne anfallen:

Bildbeschreibung hier eingeben

In diesem Beispiel bedeutet das Vorhersagen eines Ausfalls, der ein Ausfall ist, das Vermeiden von Risiken, und das Vorhersagen eines Nichtausfalls, der nicht ein Ausfall ist, führt zu 50 USD pro ausgegebenem Kredit. Problematisch wird es, wenn Sie sich irren, wenn Sie in Verzug geraten, wenn Sie Nicht-Verzug vorhergesagt haben, den gesamten Kreditbetrag verlieren und wenn Sie in Verzug geraten sind, wenn ein Kunde tatsächlich keine verpassten Chancen in Höhe von 50 US-Dollar hätte . Die Zahlen hier sind nicht wichtig, nur der Ansatz.

Mit diesem Rahmen können wir nun beginnen, die Schwierigkeiten zu verstehen, die mit Über- und Unteranpassung verbunden sind.

Eine Überanpassung würde in diesem Fall bedeuten, dass Ihr Modell mit Ihren Entwicklungs- / Testdaten weitaus besser funktioniert als in der Produktion. Oder anders ausgedrückt, Ihr Modell in der Produktion wird weit hinter dem zurückbleiben, was Sie in der Entwicklung gesehen haben. Dieses falsche Vertrauen wird Sie wahrscheinlich dazu veranlassen, weitaus riskantere Kredite aufzunehmen, als Sie es sonst tun würden, und Sie sind sehr anfällig für Geldverluste.

Auf der anderen Seite, wenn Sie in diesem Zusammenhang unterpassen, erhalten Sie ein Modell, das nur schlechte Arbeit leistet, um die Realität in Einklang zu bringen. Die Ergebnisse sind zwar sehr unvorhersehbar (das andere Wort, mit dem Sie Ihre Vorhersagemodelle beschreiben möchten), aber häufig werden die Standards verschärft, um dies zu kompensieren. Dies führt dazu, dass weniger Kunden insgesamt gute Kunden verlieren.

Unteranpassung leidet unter einer entgegengesetzten Schwierigkeit wie Überanpassung, die Ihnen weniger Sicherheit gibt. Die mangelnde Vorhersehbarkeit lässt Sie immer noch ein unerwartetes Risiko eingehen, was alles schlechte Nachrichten sind.

Meiner Erfahrung nach besteht die beste Möglichkeit, diese beiden Situationen zu vermeiden, darin, Ihr Modell anhand von Daten zu validieren, die vollständig außerhalb des Bereichs Ihrer Trainingsdaten liegen. Sie können sich also darauf verlassen, dass Sie eine repräsentative Stichprobe dessen haben, was Sie in der Natur sehen werden '.

Darüber hinaus ist es immer ratsam, Ihre Modelle regelmäßig zu überprüfen, um festzustellen, wie schnell sich Ihr Modell verschlechtert und ob es Ihre Ziele noch erreicht.

In einigen Fällen ist Ihr Modell nicht ausreichend ausgestattet, wenn es die Entwicklungs- und Produktionsdaten nur unzureichend vorhersagt.


6

Modelle sind nur Abstraktionen dessen, was im wirklichen Leben gesehen wird. Sie wurden entwickelt, um Kleinigkeiten des realen Beobachtungssystems zu abstrahieren und gleichzeitig ausreichende Informationen zur Unterstützung der gewünschten Analyse bereitzustellen.

Wenn ein Modell überarbeitet ist, werden zu viele Details zu den beobachteten Objekten berücksichtigt, und kleine Änderungen an diesem Objekt können zu einem Genauigkeitsverlust des Modells führen. Auf der anderen Seite wertet ein Modell, wenn es unterdurchschnittlich ist, so wenige Attribute aus, dass nennenswerte Änderungen am Objekt ignoriert werden können.

Beachten Sie auch, dass Unteranpassung je nach Datensatz als Überanpassung angesehen werden kann . Wenn Ihre Eingabe mit einem einzelnen Attribut zu 99% korrekt klassifiziert werden kann, passen Sie das Modell an die Daten an, indem Sie die Abstraktion auf ein einzelnes Merkmal vereinfachen. Und in diesem Fall würden Sie zu viel , die 1% der Base in die 99% -Klasse werden verallgemeinern - oder die Angabe auch das Modell so sehr , dass es nur kann sehen eine Klasse.

Eine vernünftige Möglichkeit zu sagen, dass ein Modell weder über- noch unterpasst ist, besteht in der Durchführung von Kreuzvalidierungen. Sie teilen Ihren Datensatz in k Teile auf und wählen einen davon aus, um Ihre Analyse durchzuführen, während Sie die anderen k - 1 Teile zum Trainieren Ihres Modells verwenden. In Anbetracht dessen, dass die Eingabe selbst nicht verzerrt ist, sollten Sie in der Lage sein, so viele unterschiedliche Daten zu trainieren und auszuwerten, wie Sie dies bei der Verwendung des Modells in der realen Verarbeitung tun würden.


5

Ein gängiger Ansatz besteht einfach darin, die Komplexität des Modells zu erhöhen, es zu vereinfachen und höchstwahrscheinlich zunächst zu unterpassen und die Komplexität des Modells zu erhöhen, bis frühe Anzeichen einer Überanpassung mithilfe einer Resampling-Technik wie Kreuzvalidierung, Bootstrap, usw.

Sie erhöhen die Komplexität, indem Sie entweder Parameter (Anzahl der verborgenen Neuronen für künstliche neuronale Netze, Anzahl der Bäume in einer zufälligen Gesamtstruktur) hinzufügen oder den Regularisierungsterm (häufig als Lambda oder C für Support-Vektor-Maschinen bezeichnet) in Ihrem Modell lockern.


3

CAPM (Capital Asset Pricing Model) im Finanzwesen ist ein klassisches Beispiel für ein Underfit-Modell. Es wurde auf der schönen Theorie aufgebaut, dass "Anleger nur für Risiken zahlen, die sie nicht streuen können", sodass die erwarteten Überschussrenditen der Korrelation mit den Marktrenditen entsprechen.

Als Formel [0] gilt Ra = Rf + B (Rm - Rf), wobei Ra die erwartete Rendite des Vermögenswerts ist, Rf der risikofreie Zinssatz ist, Rm die Marktrendite ist und Beta die Korrelation zur Eigenkapitalprämie ist (Rm - Rf)

Das ist schön, elegant und falsch. Die Anleger scheinen eine höhere Quote an kleinen Aktien und Wertaktien (definiert nach Book-to-Market oder Dividendenrendite) zu verlangen.

Fama und French [1] stellten ein Update des Modells vor, das zusätzliche Betas für Größe und Wert hinzufügt.

Woher wissen Sie das im Allgemeinen? Wenn die von Ihnen gemachten Vorhersagen falsch sind und eine andere Variable mit einer logischen Erklärung die Vorhersagequalität erhöht. Es ist leicht zu verstehen, warum jemand kleine Aktien für riskant hält, unabhängig von nicht diversifizierbaren Risiken. Es ist eine gute Geschichte, die von den Daten gestützt wird.

[0] http://www.investopedia.com/terms/c/capm.asp [1] http://en.wikipedia.org/wiki/Fama%E2%80%93French_three-factor_model

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.