Was ist ein reales Beispiel für "Überanpassung"?


107

Ich verstehe, was "Überanpassung" bedeutet, aber ich brauche Hilfe, um ein reales Beispiel für Überanpassung zu finden.


12
Vielleicht könnten Sie erklären, was Sie unter "Überanpassung" verstehen, damit die Leute die Teile ansprechen können, die Sie nicht verstehen, ohne zu raten, was dies sein könnte?
Goangit

3
@ssdecontrol Falsche Korrelation ist nicht überpassend. Tatsächlich muss eine falsche Korrelation kein explizites Modell beinhalten, und das implizite Modell ist normalerweise eine gerade Linie mit zwei Parametern.
Nick Cox

1
@whuber: Dies wäre vielleicht angemessener, um es auf Meta zu diskutieren, aber ich war überrascht zu sehen, dass Sie diesen Beitrag in Community-Wiki konvertiert haben. Bedeutet das nicht, dass das OP für zukünftige Upvotes keine Reputationssteigerung erhält? Für mich sieht es fast wie eine "Bestrafung" für ihn aus; Was war der Grund dafür?
Amöbe

4
@amoeba Es ist keine Bestrafung: Diese Frage hat offensichtlich keine richtige oder kanonische Antwort. In seiner ursprünglichen Form als Nicht-CW-Frage war es daher nicht thematisch relevant - und hätte auch schnell geschlossen werden müssen -, aber weil es möglicherweise von Wert ist, einige gute Beispiele gemeinsam von der Community erstellen zu lassen, die den CW-Status verleihen anstatt zu schließen, scheint es eine vernünftige Lösung zu sein.
whuber

17
Bisher versuchen nur sehr wenige dieser Antworten (nur zwei von elf!), Die Frage zu beantworten, die nach einem realen Beispiel verlangt . Das bedeutet keine Simulation, kein theoretisches Beispiel, kein Cartoon, sondern ein ernsthaft angewandtes Modell für tatsächliche Daten. Beachten Sie auch, dass die Frage explizit versucht, Antworten von Erklärungen über Überanpassung abzulenken.
whuber

Antworten:


96

Hier ist ein schönes Beispiel für Zeitreihenmodelle für Präsidentschaftswahlen von xkcd: Bildbeschreibung hier eingeben

Es gab nur 56 Präsidentschaftswahlen und 43 Präsidenten. Das sind nicht viele Daten, aus denen man lernen kann. Wenn der Prädiktorraum erweitert wird, um Dinge wie falsche Zähne und den Scrabble-Punkt-Wert von Namen einzuschließen, ist es für das Modell ziemlich einfach, die verallgemeinerbaren Merkmale der Daten (das Signal) anzupassen und mit dem Anpassen des Rauschens zu beginnen. In diesem Fall kann sich die Übereinstimmung mit den historischen Daten verbessern, aber das Modell wird kläglich versagen, wenn Rückschlüsse auf zukünftige Präsidentschaftswahlen gezogen werden.


15
Ich denke, Sie sollten etwas zur Stichprobenverschiebung hinzufügen, um zu erklären, wie dies mit Überanpassung zusammenhängt. Nur ein Ausschneiden & Einfügen des Cartoons fehlt die Erklärung.
Neil Slater

5
Ein schönes Merkmal dieses Beispiels ist, dass es den Unterschied zwischen Überanpassung und Komplexität demonstriert. Die Regel "Wie in Kalifornien, so in der Nation" ist einfach, aber immer noch übertrieben.
Tom Minka

2
@TomMinka Überanpassungen können durch Komplexität (ein Modell, das zu komplex ist, um auf zu einfache Daten zu passen, so dass zusätzliche Parameter auf alles passen, was zur Hand ist) oder, wie Sie wiesen, durch verrauschte Features verursacht werden, die bei der Entscheidung mehr Gewicht als relevant erhalten Eigenschaften. Und es gibt viele andere mögliche Ursachen für eine Überanpassung (intrinsische Varianz der Daten oder des Modells, Daten, die nicht für die Darstellung des Ziels relevant sind, usw.). Ich denke , wir sollten sagen , dass es Überanpassung s , nicht nur Überanpassung (was bedeutet , dass es nur eine Ursache, die oft nicht korrekt ist).
mühsamer

80

Mein Favorit war das Matlab-Beispiel für die US-Volkszählung im Vergleich zur Zeit:

  • Ein lineares Modell ist ziemlich gut
  • Ein quadratisches Modell ist näher
  • Ein Quartalsmodell prognostiziert die vollständige Vernichtung ab dem nächsten Jahr

(Zumindest hoffe ich aufrichtig, dass dies ein Beispiel für Überanpassung ist.)

http://www.mathworks.com/help/curvefit/examples/polynomial-curve-fitting.html#zmw57dd0e115Bildbeschreibung hier eingeben


1
Genau sein , nur deutlich unterhalb der Plot sie sagen: „Das Verhalten des sechsten Grades Polynomfit über den Datenbereich es eine schlechte Wahl für die Extrapolation macht und Sie können diese fit ablehnen.
usεr11852

49

Die Studie von Chen et al. (2013) passt zwei Kubikmeter zu einer vermeintlichen Diskontinuität der Lebenserwartung als Funktion des Spielraums.

Chen Y., Ebenstein, A., Greenstone, M. und Li, H. 2013. Hinweise auf die Auswirkungen einer anhaltenden Luftverschmutzung auf die Lebenserwartung aufgrund der chinesischen Huai-Politik. Verfahren der National Academy of Sciences 110: 12936–12941. abstrakt

Trotz seiner Veröffentlichung in einer hervorragenden Zeitschrift usw., seiner stillschweigenden Billigung durch angesehene Personen usw. würde ich dies immer noch als ein Anscheinsbeispiel für Überanpassung darstellen.

Ein verräterisches Zeichen ist die Unplausibilität von Kubik. Das implizite Anpassen einer Kubik nimmt an, dass es einen Grund gibt, warum die Lebenserwartung als Polynom dritten Grades des Breitengrads, in dem Sie leben, variieren würde. Das erscheint eher unplausibel: Es ist nicht leicht, sich einen plausiblen physikalischen Mechanismus vorzustellen, der einen solchen Effekt hervorrufen würde.

Eine detailliertere Analyse dieses Papiers finden Sie in folgendem Blogbeitrag: Hinweise auf die Auswirkung der nachhaltigen Nutzung der Polynomregression auf die kausale Inferenz (eine Behauptung, dass Kohleheizung die Lebensdauer für eine halbe Milliarde Menschen um 5 Jahre verkürzt) .


5
+1 Andrew Gelman hat sogar ein oder zwei Blog-Posts darüber geschrieben, warum es nicht plausibel ist. Hier ist eine: andrewgelman.com/2013/08/05/…
Sycorax

@ user777 Im Gelman-Blog habe ich wahrscheinlich zum ersten Mal davon gehört. Aber ich fand es am besten, den Hinweis zu geben, den Flaum meines persönlichen Kommentars hinzuzufügen und die Leute selbst beurteilen zu lassen.
Nick Cox

1
Ich habe eine Bearbeitung von @DW geschnitten, die Kommentare zur Lebenserwartung in verschiedenen Ländern enthält. Darum geht es in der Arbeit überhaupt nicht.
Nick Cox

2
Ein weiteres Beispiel, das ich für illustrativ halte (obwohl es möglicherweise besser als "real" ist), sind Vorhersage-Wettbewerbe, die Zwischenergebnisse wie Kaggle liefern. Normalerweise gibt es Personen, die die Ergebnisse für die Rangliste optimieren, aber nicht die Gewinner für die Hold-out-Stichprobe sind. Rob Hyndman hat eine Diskussion darüber. Das erfordert allerdings eine etwas gründlichere Perspektive, als ich denke, dass das OP dies wünscht.
Andy W

2
Ich wollte gerade das Gelman & Imbens-Papier veröffentlichen, das dabei herauskam: nber.org/papers/w20405 (leider mit einem Gatter versehen)
shadowtalker

38

In einem Artikel in Science vom 14. März 2014 identifizierten David Lazer, Ryan Kennedy, Gary King und Alessandro Vespignani Probleme in Google Grippe-Trends , die sie einer Überanpassung zuschreiben.

Zahl

Hier ist, wie sie die Geschichte erzählen, einschließlich ihrer Erklärung der Art der Überanpassung und warum der Algorithmus dadurch versagt:

Im Februar 2013 gab Nature bekannt, dass GFT einen mehr als doppelt so hohen Anteil an Arztbesuchen wegen grippeähnlicher Erkrankungen (ILI) prognostiziert hat wie die Zentren für die Kontrolle und Prävention von Krankheiten (CDC). Dies geschah trotz der Tatsache, dass GFT zur Vorhersage von CDC-Berichten entwickelt wurde. ...

Im Wesentlichen bestand die Methodik darin, die besten Übereinstimmungen unter 50 Millionen Suchbegriffen für 1152 Datenpunkte zu finden. Die Wahrscheinlichkeit, Suchbegriffe zu finden, die der Neigung zur Grippe entsprechen, jedoch strukturell nicht zusammenhängen und daher die Zukunft nicht vorhersagen, war recht hoch. Tatsächlich berichten die Entwickler von GFT, dass sie saisonale Suchbegriffe aussortieren, die nicht mit der Grippe zusammenhängen, aber stark mit den CDC-Daten korrelieren, wie zum Beispiel diejenigen, die sich auf Basketball in der High School beziehen. Dies hätte eine Warnung sein müssen, dass die großen Datenmengen die geringe Anzahl von Fällen überfüllten - ein Standardanliegen bei der Datenanalyse. Diese Ad-hoc-Methode zum Wegwerfen bestimmter Suchbegriffe schlug fehl, als GFT die nicht saisonale Influenza-A-H1N1-Pandemie von 2009 vollständig verpasste.

[Betonung hinzugefügt.]


3
Leider hat dieses Beispiel einige Probleme. Das Papier schlägt zwei ziemlich unterschiedliche Gründe vor, warum GFT schlechte Vorhersagen machte: Überanpassung und Änderungen an der Suchmaschine. Die Autoren geben zu, dass sie nicht in der Lage sind, zu bestimmen, welcher Grund (falls vorhanden) richtig ist, es handelt sich also im Wesentlichen um Spekulationen. Darüber hinaus bezieht sich der Abschnitt über die Überanpassung auf die ursprüngliche Version des Systems, während die Vorhersagen in der Grafik mit einem modifizierten System gemacht wurden.
Tom Minka

1
@Tom Der Artikel ist nicht so geschrieben, als wäre die Behauptung der Überanpassung eine Spekulation: Die Autoren behaupten das rundweg. Ich denke, es ist eine vernünftige Aussage. Sie gehen auch auf den Grund ein, warum sie etwas spekulativ sein müssen: Google war in Bezug auf den Algorithmus weder offen noch transparent. Für den vorliegenden Zweck scheint es mir unerheblich zu sein, ob die Überanpassung nur in einer oder in mehreren Versionen stattgefunden hat, aber wie ich mich erinnere, gehen die Autoren auch darauf ein und weisen auf Beweise für eine fortgesetzte Überanpassung im aktuellen Algorithmus hin.
whuber

2
Der Artikel sagt nur, dass Überanpassung ein Standardanliegen bei der Datenanalyse ist. Es wird nicht behauptet, dass eine Überanpassung der Grund war. In Referenz (2) wird näher darauf eingegangen, es wird jedoch erneut darauf hingewiesen, dass die Überanpassung nur ein "mögliches Problem" ist, mit der Aussage "Da der Suchalgorithmus und die resultierenden Abfragebegriffe, die zum Definieren des ursprünglichen und aktualisierten GFT-Modells verwendet wurden, nicht bekannt sind, ist dies der Fall schwierig, die Gründe für die suboptimale Leistung des Systems zu identifizieren und Empfehlungen für Verbesserungen abzugeben. "
Tom Minka

@Tom Ich halte mich an das hier angegebene Zitat, das zutreffend ist, und begründe damit hinreichend, warum das Google-Grippe-Modell in diesem Zusammenhang in Betracht gezogen werden sollte.
whuber

Interessante Diskussion. Ich möchte nur hinzufügen, dass das Diagramm das Argument möglicherweise besser unterstützt, wenn die Linien beschriftet sind.
Rolando2

32

Ich habe dieses Bild vor ein paar Wochen gesehen und fand es ziemlich relevant für die vorliegende Frage.

meme Bild

Anstatt die Sequenz linear anzupassen, wurde sie mit einem Quartalpolynom versehen, das perfekt passte, aber zu einer eindeutig lächerlichen Antwort führte.


12
Dies beantwortet die gestellte Frage nicht und ist möglicherweise besser als Kommentar geeignet oder wird überhaupt nicht veröffentlicht. Dies ist kein realistisches Beispiel für eine Überanpassung (wie in der Frage gefordert). Es wird auch nicht erklärt, wie das Beispielbild für die Überanpassung relevant ist. Schließlich ist es sehr kurz. Wir bevorzugen gründliche, detaillierte Antworten, die die gestellte Frage beantworten - nicht nur Diskussionen im Zusammenhang mit der Frage.
DW

9
Tatsächlich handelt es sich hierbei genau um eine Überanpassung aufgrund eines zu komplexen Modells, da Sie eine Unendlichkeit von Funktionen höherer Ordnung (nichtlinear) konstruieren können, um eine unendliche Anzahl verschiedener letzter Terme der Sequenz zu generieren, während Sie die anpassen andere (bekannte) Begriffe unter Verwendung einer Lagrange-Interpolation, wie hier erläutert .
munter

@ user1121352 In der Karikatur, das Polynom höherer Ordnung ist das wahre Modell, es ist also nicht etwa auf der ganzen sitz. Eine Antwort wie „9“ (die nächste ungerade Zahl) oder „11“ (die nächste ungerade Primzahl) würde eigentlich sein unter -fitting , weil es ein allzu einfaches Modell verwendet den nächsten Wert vorherzusagen. Der Cartoon zeigt tatsächlich den umgekehrten Fall, dass ein komplexeres Modell wahr sein könnte.
Sycorax

8
Das quartische Polynom (wie von mir interpretiert) soll eine lächerliche Lösung sein, da die offensichtliche Antwort, die jeder geben wird, bevor er die lächerliche Lösung sieht, 9 (oder ein anderer OEIS-Wert) wäre. Ich nahm an, dass das "Dogen" -Format den Sarkasmus vermittelt, aber wir sehen deutlich, dass hier Poes Gesetz am Werk ist.
März,

2
Das ist genau der Punkt, den ich versuche, nämlich, dass wir nicht wissen, was die wahre Funktion ist. Wenn Sie eine Originalanalyse durchführen, steht Ihnen keine Ressource wie das OEIS zur Verfügung, um die Wahrheit herauszufordern. Genau das versucht Ihr Modell zu etablieren. Ich schätze, dass der Cartoon Sarkasmus versucht, aber die Platzierung des Cartoons in dieser speziellen Diskussion stellt die Frage nach Überanpassung und statistischer Modellierung im Allgemeinen auf subtile Weise. Die Absicht des ursprünglichen Erstellers ist irrelevant, da Sie ihn hier neu kontextualisiert haben!
Sycorax

22

Für mich ist das beste Beispiel das ptolemäische System in der Astronomie. Ptolemaios nahm an, dass sich die Erde im Zentrum des Universums befindet, und schuf ein ausgeklügeltes System verschachtelter Kreisbahnen, das dies erklären würde Bewegungen von Objekten am Himmel ziemlich gut . Astronomen mussten immer wieder Kreise hinzufügen, um Abweichungen zu erklären, bis es eines Tages so verworren wurde, dass die Leute anfingen, daran zu zweifeln. Zu diesem Zeitpunkt entwickelte Copernicus ein realistischeres Modell.

Dies ist das beste Beispiel für eine Überanpassung für mich. Sie können den Datengenerierungsprozess (DGP) nicht überschreiben. Sie können nur ein falsch angegebenes Modell überpassen. Fast alle unsere Modelle in den Sozialwissenschaften sind falsch spezifiziert, daher ist es der Schlüssel, sich daran zu erinnern und sie sparsam zu halten. Versuchen Sie nicht, jeden Aspekt des Datensatzes zu erfassen, sondern erfassen Sie die wesentlichen Merkmale durch Vereinfachung.


15
Dies scheint kein Beispiel für eine Überanpassung zu sein. Das ptolemäische System als Vorhersagemodell ist nicht falsch: Es ist nur deshalb kompliziert, weil das Koordinatensystem geozentrisch ist und nicht vom galaktischen Massenmittelpunkt ausgeht. Das Problem ist daher, dass mit einem übermäßig komplizierten Modell eine genaue, legitime Übereinstimmung hergestellt wurde. (Ellipsen sind viel einfacher als Epizyklen.) Es ist eine echte Herausforderung, sparsame nichtlineare Modelle zu finden!
whuber

1
Sie werden am Ende viele Kreise haben, um die Umlaufbahnen der Jupitermonde im ptolemäischen System zu modellieren.
Aksakal

17
Das stimmt - aber auf den ersten Blick ist das nicht unbedingt übertrieben. Der Säuretest beruht auf den Vorhersagen zukünftiger Werte, die in diesem System gut genug funktionierten, um 1400 Jahre zu bestehen. Daten sind nicht überangepasst , wenn das Modell sehr kompliziert ist, aber wenn es so flexibel ist, dass durch die Erfassung von Fremddetails viel ungenauere Vorhersagen erstellt werden, als dies bei einer Analyse der Residuen des Modells auf den Trainingsdaten zu erwarten wäre.
whuber

2
EY=k=09βkxi

2
EY=k=09βkxkx

22

Angenommen, Sie haben 100 Punkte in einem Diagramm.

Man könnte sagen: hmm, ich möchte den nächsten vorhersagen.

  • mit einer Linie
  • mit einem Polynom 2. Ordnung
  • mit einem Polynom 3. Ordnung
  • ...
  • mit einem Polynom 100. Ordnung

Hier sehen Sie eine vereinfachte Darstellung für dieses Beispiel: Bildbeschreibung hier eingeben

Je höher die Polynomordnung, desto besser passt sie zu den vorhandenen Punkten.

Die Polynome höherer Ordnung passen jedoch tatsächlich über, obwohl sie als bessere Modelle für die Punkte erscheinen. Es modelliert eher das Rauschen als die wahre Datenverteilung.

Wenn Sie dem Diagramm einen neuen Punkt mit Ihrer perfekt passenden Kurve hinzufügen, ist dieser wahrscheinlich weiter von der Kurve entfernt als bei Verwendung eines einfacheren Polynoms niedriger Ordnung.


"Wenn Sie dem Diagramm einen neuen Punkt mit Ihrer perfekt passenden Kurve hinzufügen, ist dieser wahrscheinlich weiter von der Kurve entfernt als wenn Sie ein einfacheres Polynom niedriger Ordnung verwenden." Der Datengenerierungsprozess für den neuen Punkt (dh die Beziehung in der Population) war tatsächlich ein Hochleistungspolynom wie das, das Sie (über) angepasst haben.
Silverfish

19
Die Bilder hier sind tatsächlich falsch - zum Beispiel wurde das 9-Grad-Polynom nur als stückweise lineare Funktion dargestellt, aber ich vermute, dass es in der Realität in den Bereichen zwischen den Punkten wild auf und ab schwingen sollte. Sie sollten diesen Effekt auch im 5-Grad-Polynom sehen.
Ken Williams

17

Die Analyse, die möglicherweise zur Katastrophe von Fukushima beigetragen hat, ist ein Beispiel für eine Überanpassung. In der Geowissenschaft gibt es eine bekannte Beziehung, die die Wahrscheinlichkeit von Erdbeben einer bestimmten Größe angesichts der beobachteten Häufigkeit von "geringeren" Erdbeben beschreibt. Dies ist als die Gutenberg-Richter-Beziehung bekannt und liefert über viele Jahrzehnte eine gerade logarithmische Anpassung. Die Analyse des Erdbebenrisikos in der Nähe des Reaktors (dieses Diagramm aus Nate Silvers ausgezeichnetem Buch "Das Signal und das Rauschen") zeigt einen "Knick" in den Daten. Das Ignorieren des Knicks führt zu einer Schätzung des annualisierten Risikos eines Erdbebens der Stärke 9 auf etwa 1 zu 300 - definitiv etwas, worauf man sich vorbereiten sollte. Jedoch, Durch die Überanpassung einer doppelten Gefällelinie (wie bei der anfänglichen Risikobewertung für die Reaktoren offensichtlich) wird die Risikoprognose auf etwa 1 von 13.000 Jahren reduziert. Man kann den Ingenieuren nicht vorwerfen, dass sie die Reaktoren nicht so ausgelegt haben, dass sie einem solchen unwahrscheinlichen Ereignis standhalten - aber man sollte definitiv den Statistikern vorwerfen, die die Daten überarbeitet (und dann extrapoliert) haben ...

Bildbeschreibung hier eingeben


Ist es schlüssig, dass das Dual-Piste-Modell überarbeitet wurde? Der Knick ist auffällig; Ich würde vermuten, wenn jedes Liniensegment aus beispielsweise 3 Punkten geschätzt würde, würden Sie bessere Vorhersagen über die Wartezeit erhalten, als wenn Sie eine einzelne Linie schätzen würden. (Natürlich spricht die anschließende Beobachtung eines Ereignisses von "1 in 13.000 Jahren" dagegen! Aber das ist schwer zu interpretieren, da wir dieses Modell nicht erneut untersuchen würden, wenn dies nicht geschehen wäre.) Wenn es physikalische Gründe gäbe, es zu ignorieren Der wahrgenommene Knick in dem Fall, dass diese Überanpassung auftrat, ist stärker. Ich weiß nicht, wie gut solche Daten normalerweise mit der idealen Gutenberg-Richter-Beziehung übereinstimmen.
Silberfischchen

Dies veranschaulicht sehr anschaulich die Gefahren der Extrapolation und die Notwendigkeit einer Verlustfunktion, die die Schwere der Folgen eines Fehlers berücksichtigt ...
Silverfish

3
Das Problem ist wirklich, dass für einige der letzten Punkte nur sehr wenige Daten verwendet werden - sie sind also sehr unsicher. Wenn Sie sich die Daten genau ansehen, sehen Sie, dass es ein einzelnes 7.9-Ereignis gab, dann mehrere 7.7s. Über Beben mit mehr als 8,0 ist wenig bekannt, da sie selten auftreten. Wenn Sie jedoch ein Beben mit 9,0 (das Tohoku-Beben, das den Tsunami verursachte) beobachten, können Sie Ihre eigenen Schlussfolgerungen ziehen. Die gerade Linie mag konservativ sein - aber wenn es um nukleare Sicherheit geht, ist konservativ gut.
Floris

1
@ Floris Guter Punkt. Es wäre besser gewesen, wenn sie einen Boxplot verwendet hätten, der nicht nur die beobachteten Frequenzen, sondern auch die Konfidenzintervalle für diese Frequenzen zeigt. Dann würde man im Diagramm wahrscheinlich links sehr schmale Kästchen und rechts sehr breite Kästchen sehen. (Solche Konfidenzintervalle können unter der Annahme berechnet werden, dass jede Frequenz einer Poisson-Verteilung folgt.)
user763305

3
@ user763305 - Ja, ich bin mir ziemlich sicher, dass das Hinzufügen von Konfidenzintervallen zeigt, dass eine gerade Linie nicht mit den Daten inkonsistent ist (oder mit anderen Worten, dass Sie die Nullhypothese, dass die Daten einer geraden Linie folgen, nicht ablehnen können).
Floris

15

"Agh! Pat verlässt die Firma. Wie werden wir jemals einen Ersatz finden?"

Stellenausschreibung:

Gesucht: Elektroingenieur. 42-jährige androgyne Person mit Abschlüssen in Elektrotechnik, Mathematik und Tierhaltung. Muss 68 Zoll groß sein mit braunem Haar, einem Maulwurf über dem linken Auge und anfällig für langatmige Diatribes gegen Gänse und den Missbrauch des Wortes 'Anwalt'.

In mathematischer Hinsicht bezieht sich Überanpassung häufig auf die Erstellung eines Modells mit mehr Parametern als erforderlich, was zu einer besseren Anpassung an einen bestimmten Datensatz führt, ohne jedoch relevante Details zu erfassen, die für die Anpassung an andere Datensätze aus der interessierenden Klasse erforderlich sind.

Im obigen Beispiel kann das Poster die relevanten von den irrelevanten Merkmalen nicht unterscheiden. Die daraus resultierenden Qualifikationen werden wahrscheinlich nur von der Person erfüllt, von der sie bereits wissen, dass sie für den Job geeignet ist (aber nicht mehr will).


8
Obwohl diese Antwort unterhaltsam ist, gibt sie keinen Aufschluss darüber, was Überanpassung im statistischen Sinne bedeutet. Vielleicht könnten Sie Ihre Antwort erweitern, um die Beziehung zwischen diesen ganz bestimmten Attributen und der statistischen Modellierung zu verdeutlichen.
Sycorax

+1 Mark. Ich bin mit @ user777 nur in geringem Umfang einverstanden. Vielleicht bringt ein Satz das prägnante Beispiel nach Hause. Wenn Sie jedoch zu viel hinzufügen, wird die Einfachheit beeinträchtigt.
ndoogan

Ich denke, dies ist eine großartige Antwort - es zeigt die sehr häufige Art der Überanpassung, bei der die Trainingsdaten im Wesentlichen gespeichert werden, insbesondere dann, wenn die Menge der Trainingsdaten nicht ausreicht, um die Ausdruckskraft des Modells zu sättigen.
Ken Williams

14

Dieses ist erfunden, aber ich hoffe, es wird den Fall veranschaulichen.

Beispiel 1

k=100n=100

set.seed(123)
k <- 100
data <- replicate(k, rnorm(100))
colnames(data) <- make.names(1:k)
data <- as.data.frame(data)

Nun passen wir eine lineare Regression an:

fit <- lm(X1 ~ ., data=data)

Und hier ist eine Zusammenfassung der ersten zehn Prädiktoren:

> summary(fit)

Call:
lm(formula = X1 ~ ., data = data)

Residuals:
ALL 100 residuals are 0: no residual degrees of freedom!

Coefficients:
              Estimate Std. Error t value Pr(>|t|)
(Intercept) -1.502e-01         NA      NA       NA
X2           3.153e-02         NA      NA       NA
X3          -6.200e-01         NA      NA       NA
X4           7.087e-01         NA      NA       NA
X5           4.392e-01         NA      NA       NA
X6           2.979e-01         NA      NA       NA
X7          -9.092e-02         NA      NA       NA
X8          -5.783e-01         NA      NA       NA
X9           5.965e-01         NA      NA       NA
X10         -8.289e-01         NA      NA       NA
...
Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:      1, Adjusted R-squared:    NaN 
F-statistic:   NaN on 99 and 0 DF,  p-value: NA

Die Ergebnisse sehen ziemlich seltsam aus, aber lasst es uns plotten.

Bildbeschreibung hier eingeben

X1X1

> sum(abs(data$X1-fitted(fit)))
[1] 0

Es ist Null, also haben uns die Handlungen nicht angelogen: Das Modell passt perfekt. Und wie genau ist die Klassifizierung?

> sum(data$X1==fitted(fit))
[1] 100

X1

Beispiel 2

Noch ein Beispiel. Machen wir noch ein paar Daten:

data2 <- cbind(1:10, diag(10))
colnames(data2) <- make.names(1:11)
data2 <- as.data.frame(data2)

so sieht es so aus:

   X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11
1   1  1  0  0  0  0  0  0  0   0   0
2   2  0  1  0  0  0  0  0  0   0   0
3   3  0  0  1  0  0  0  0  0   0   0
4   4  0  0  0  1  0  0  0  0   0   0
5   5  0  0  0  0  1  0  0  0   0   0
6   6  0  0  0  0  0  1  0  0   0   0
7   7  0  0  0  0  0  0  1  0   0   0
8   8  0  0  0  0  0  0  0  1   0   0
9   9  0  0  0  0  0  0  0  0   1   0
10 10  0  0  0  0  0  0  0  0   0   1

und lassen Sie uns nun eine lineare Regression dazu anpassen:

fit2 <- lm(X1~., data2)

So erhalten wir folgende Schätzungen:

> summary(fit2)

Call:
lm(formula = X1 ~ ., data = data2)

Residuals:
ALL 10 residuals are 0: no residual degrees of freedom!

Coefficients: (1 not defined because of singularities)
            Estimate Std. Error t value Pr(>|t|)
(Intercept)       10         NA      NA       NA
X2                -9         NA      NA       NA
X3                -8         NA      NA       NA
X4                -7         NA      NA       NA
X5                -6         NA      NA       NA
X6                -5         NA      NA       NA
X7                -4         NA      NA       NA
X8                -3         NA      NA       NA
X9                -2         NA      NA       NA
X10               -1         NA      NA       NA
X11               NA         NA      NA       NA

Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:      1, Adjusted R-squared:    NaN 
F-statistic:   NaN on 9 and 0 DF,  p-value: NA

R2=1X1

X1=10+X2×9+X3×8+X4×7+X5×6+X6×5+X7×4+X8×3+X9×2

X1=1

10+1×9+0×8+0×7+0×6+0×5+0×4+0×3+0×2

Es ist ziemlich selbsterklärend. Sie können sich Beispiel 1 ähnlich wie Beispiel 2 vorstellen, jedoch mit etwas "Rauschen". Wenn Sie über ausreichend große Daten verfügen und diese zum "Vorhersagen" von etwas verwenden, kann Sie manchmal ein einzelnes "Feature" davon überzeugen, dass Sie ein "Muster" haben, das Ihre abhängige Variable gut beschreibt, während dies nur ein Zufall sein kann. In Beispiel 2 wird eigentlich nichts vorhergesagt, aber in Beispiel 1 ist genau dasselbe passiert, nur dass die Werte der Variablen unterschiedlich waren.

Beispiele aus der Praxis

Das reale Beispiel dafür ist die Vorhersage von Terroranschlägen am 11. September 2001 durch Beobachtung von "Mustern" in Zahlen, die zufällig von Computer-Pseudo-Zufallsgeneratoren vom Global Consciousness Project gezogen wurden, oder "geheimen Botschaften" in "Moby Dick" , die Fakten über die Ermordung berühmter Personen enthüllen (inspiriert von ähnlichen Erkenntnissen in der Bibel ).

Fazit

Wenn Sie genau hinschauen, finden Sie "Muster" für alles. Mit diesen Mustern können Sie jedoch nichts über das Universum lernen und keine allgemeinen Schlussfolgerungen ziehen. Sie passen perfekt zu Ihren Daten, wären aber nutzlos, da sie nur zu den Daten passen. Sie werden nicht zulassen, dass Sie aus der Stichprobe vernünftige Vorhersagen treffen, da sie die Daten eher imitieren als beschreiben würden.


5
Ich würde vorschlagen, die Beispiele aus der Praxis ganz oben auf diese Antwort zu setzen. Das ist der Teil, der für die Frage tatsächlich relevant ist - der Rest ist Soße.
Shadowtalker

8

Ein häufiges Problem, das zu einer Überanpassung im wirklichen Leben führt, besteht darin, dass wir zusätzlich zu Begriffen für ein korrekt angegebenes Modell möglicherweise etwas Fremdes hinzugefügt haben: irrelevante Potenzen (oder andere Transformationen) der korrekten Begriffe, irrelevante Variablen oder irrelevante Wechselwirkungen.

Dies geschieht in mehrfacher Regression, wenn Sie eine Variable hinzufügen, die nicht im korrekt angegebenen Modell enthalten sein sollte, diese aber nicht löschen möchte, weil Sie Angst haben, eine ausgelassene variable Verzerrung zu verursachen . Natürlich haben Sie keine Möglichkeit zu wissen, dass Sie es falsch aufgenommen haben, da Sie nicht die gesamte Population sehen können, sondern nur Ihre Stichprobe. Sie können also nicht sicher sein, welche Spezifikation die richtige ist. (Wie @Scortchi in den Kommentaren ausführt, gibt es möglicherweise keine "korrekte" Modellspezifikation. In diesem Sinne besteht das Ziel der Modellierung darin, eine "ausreichend gute" Spezifikation zu finden. Um eine Überanpassung zu vermeiden, muss die Komplexität des Modells vermieden werden größer, als aus den verfügbaren Daten erhalten werden kann.) Wenn Sie ein realistisches Beispiel für eine Überanpassung wünschen, geschieht dies jedes MalSie werfen alle potenziellen Prädiktoren in ein Regressionsmodell, sollte einer von ihnen tatsächlich keine Beziehung zur Reaktion haben, sobald die Auswirkungen anderer herausgefiltert sind.

Bei dieser Art der Überanpassung ist die gute Nachricht, dass die Einbeziehung dieser irrelevanten Terme keine Verzerrung Ihrer Schätzer hervorruft, und in sehr großen Stichproben sollten die Koeffizienten der irrelevanten Terme nahe Null sein. Es gibt aber auch eine schlechte Nachricht: Da die begrenzten Informationen aus Ihrer Stichprobe jetzt zur Schätzung weiterer Parameter verwendet werden, kann dies nur mit geringerer Genauigkeit erfolgen - daher nehmen die Standardfehler bei den wirklich relevanten Begriffen zu. Dies bedeutet auch, dass sie wahrscheinlich weiter von den wahren Werten entfernt sind als Schätzungen einer korrekt angegebenen Regression. Wenn Sie also neue Werte für Ihre erklärenden Variablen angeben, sind die Vorhersagen des überpassenden Modells in der Regel weniger genau als für das richtig angegebene Modell.

Hier ist ein Diagramm des logarithmischen BIP gegen die logarithmische Bevölkerung für 50 US-Bundesstaaten im Jahr 2010. Für diese Stichprobe wurde eine Zufallsstichprobe von 10 Bundesstaaten ausgewählt (rot hervorgehoben). Für diese Stichprobe passen wir ein einfaches lineares Modell und ein Polynom vom Grad 5 an Punkte, das Polynom hat zusätzliche Freiheitsgrade, die es näher an den beobachteten Daten "winden" lassen, als die gerade Linie kann. Da die 50 Zustände als Ganzes jedoch einer nahezu linearen Beziehung folgen, ist die Prognoseleistung des Polynommodells für die 40 Out-of-Sample-Punkte im Vergleich zum weniger komplexen Modell, insbesondere bei der Extrapolation, sehr schlecht. Das Polynom passte effektiv zu einem Teil der zufälligen Struktur (Rauschen) der Stichprobe, die sich nicht auf die breitere Grundgesamtheit verallgemeinerte. Es extrapolierte besonders schlecht über den beobachteten Bereich der Probe hinaus.diese Überarbeitung dieser Antwort.)

Extrapolation aus einem zu komplexen Modell

Ryi=2x1,i+5+ϵix2x3x1x2x3

require(MASS) #for multivariate normal simulation    
nsample <- 25   #sample to regress 
nholdout <- 1e6  #to check model predictions
Sigma <- matrix(c(1, 0.5, 0.4, 0.5, 1, 0.3, 0.4, 0.3, 1), nrow=3)
df <- as.data.frame(mvrnorm(n=(nsample+nholdout), mu=c(5,5,5), Sigma=Sigma))
colnames(df) <- c("x1", "x2", "x3")
df$y <- 5 + 2 * df$x1 + rnorm(n=nrow(df)) #y = 5 + *x1 + e

holdout.df <- df[1:nholdout,]
regress.df <- df[(nholdout+1):(nholdout+nsample),]

overfit.lm <- lm(y ~ x1*x2*x3, regress.df)
correctspec.lm <- lm(y ~ x1, regress.df)
summary(overfit.lm)
summary(correctspec.lm)

holdout.df$overfitPred <- predict.lm(overfit.lm, newdata=holdout.df)
holdout.df$correctSpecPred <- predict.lm(correctspec.lm, newdata=holdout.df)
with(holdout.df, sum((y - overfitPred)^2)) #SSE
with(holdout.df, sum((y - correctSpecPred)^2))

require(ggplot2)
errors.df <- data.frame(
    Model = rep(c("Overfitted", "Correctly specified"), each=nholdout),
    Error = with(holdout.df, c(y - overfitPred, y - correctSpecPred)))
ggplot(errors.df, aes(x=Error, color=Model)) + geom_density(size=1) +
    theme(legend.position="bottom")

Hier sind meine Ergebnisse aus einem Durchlauf, aber es ist am besten, die Simulation mehrmals auszuführen, um den Effekt verschiedener generierter Stichproben zu sehen.

>     summary(overfit.lm)

Call:
lm(formula = y ~ x1 * x2 * x3, data = regress.df)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.22294 -0.63142 -0.09491  0.51983  2.24193 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)
(Intercept) 18.85992   65.00775   0.290    0.775
x1          -2.40912   11.90433  -0.202    0.842
x2          -2.13777   12.48892  -0.171    0.866
x3          -1.13941   12.94670  -0.088    0.931
x1:x2        0.78280    2.25867   0.347    0.733
x1:x3        0.53616    2.30834   0.232    0.819
x2:x3        0.08019    2.49028   0.032    0.975
x1:x2:x3    -0.08584    0.43891  -0.196    0.847

Residual standard error: 1.101 on 17 degrees of freedom
Multiple R-squared: 0.8297,     Adjusted R-squared: 0.7596 
F-statistic: 11.84 on 7 and 17 DF,  p-value: 1.942e-05

x1R2

>     summary(correctspec.lm)

Call:
lm(formula = y ~ x1, data = regress.df)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.4951 -0.4112 -0.2000  0.7876  2.1706 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   4.7844     1.1272   4.244 0.000306 ***
x1            1.9974     0.2108   9.476 2.09e-09 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 1.036 on 23 degrees of freedom
Multiple R-squared: 0.7961,     Adjusted R-squared: 0.7872 
F-statistic:  89.8 on 1 and 23 DF,  p-value: 2.089e-09

R2R2

>     with(holdout.df, sum((y - overfitPred)^2)) #SSE
[1] 1271557
>     with(holdout.df, sum((y - correctSpecPred)^2))
[1] 1052217

R2y^y(und hatte mehr Freiheitsgrade dazu als das korrekt angegebene Modell, könnte also eine "bessere" Passform ergeben). Sehen Sie sich die Summe der quadratischen Fehler für die Vorhersagen im Holdout-Satz an, aus denen wir die Regressionskoeffizienten nicht geschätzt haben, und sehen Sie, um wie viel schlechter sich das überangepasste Modell entwickelt hat. In Wirklichkeit ist das korrekt spezifizierte Modell dasjenige, das die besten Vorhersagen macht. Wir sollten unsere Einschätzung der prädiktiven Leistung nicht auf die Ergebnisse der Daten stützen, die wir zur Schätzung der Modelle verwendet haben. Hier ist ein Dichtediagramm der Fehler, wobei die korrekte Modellspezifikation mehr Fehler nahe 0 erzeugt:

Vorhersagefehler beim Holdout-Set

Die Simulation stellt eindeutig viele relevante Situationen im wirklichen Leben dar (stellen Sie sich eine reale Reaktion vor, die von einem einzelnen Prädiktor abhängt, und stellen Sie sich vor, Sie würden irrelevante "Prädiktoren" in das Modell einbeziehen), hat aber den Vorteil, dass Sie mit dem Datenerzeugungsprozess spielen können , die Stichprobengröße, die Art des überausgestatteten Modells und so weiter. Auf diese Weise können Sie die Auswirkungen einer Überanpassung am besten untersuchen, da Sie für beobachtete Daten im Allgemeinen keinen Zugriff auf das DGP haben und es sich immer noch um "echte" Daten in dem Sinne handelt, dass Sie sie untersuchen und verwenden können. Hier sind einige wertvolle Ideen, mit denen Sie experimentieren sollten:

  • Führen Sie die Simulation mehrmals durch und sehen Sie, wie sich die Ergebnisse unterscheiden. Bei kleinen Stichproben finden Sie mehr Variabilität als bei großen.
  • n <- 1e6x1
  • Versuchen Sie, die Korrelation zwischen den Prädiktorvariablen zu verringern, indem Sie mit den nicht diagonalen Elementen der Varianz-Kovarianz-Matrix spielen Sigma. Denken Sie daran, es positiv halb-definit zu halten (was auch bedeutet, symmetrisch zu sein). Wenn Sie die Multikollinearität reduzieren, sollten Sie feststellen, dass das überausgerüstete Modell nicht ganz so schlecht abschneidet. Bedenken Sie jedoch, dass korrelierte Prädiktoren im wirklichen Leben vorkommen.
  • Versuchen Sie, mit der Spezifikation des überpassten Modells zu experimentieren. Was ist, wenn Sie Polynomausdrücke einschließen?
  • ydf$y <- 5 + 2*df$x1 + rnorm(n=nrow(df))yxi
  • yx2x3x1df$y <- 5 + 2 * df$x1 + 0.1*df$x2 + 0.1*df$x3 + rnorm(n=nrow(df))x2x3xx1x2x3nsample <- 25x1x2x3 in einer kleinen Stichprobe so schwer zu erkennen sind, nutzt das vollständige Modell die Flexibilität seiner zusätzlichen Freiheitsgrade, um das Rauschen anzupassen, und dies wird schlecht verallgemeinert. Aber mitnsample <- 1e6Dies kann die schwächeren Effekte ziemlich gut abschätzen, und Simulationen zeigen, dass das komplexe Modell eine Vorhersageleistung aufweist, die die der einfachen Modelle übertrifft. Dies zeigt, wie "Überanpassung" sowohl ein Problem der Modellkomplexität als auch der verfügbaren Daten ist.

1
(-1) Es ist ziemlich wichtig zu verstehen, dass eine Überanpassung nicht nur aus der Einbeziehung von "irrelevanten" oder "fremden" Begriffen resultiert, die in einem korrekt spezifizierten Modell nicht vorkommen würden. In der Tat könnte argumentiert werden, dass in vielen Anwendungen die Idee eines einfachen echten Modells wenig Sinn macht und die Herausforderung der prädiktiven Modellierung darin besteht, ein Modell zu erstellen, dessen Komplexität im Verhältnis zur Menge der verfügbaren Daten steht.
Scortchi

1
Ich werde Ihr Bild an meinen Kongressabgeordneten zur Unterstützung der Einwanderungsreform senden
Prototyp

1
(+1) Ich denke, die Änderungen verbessern die Erklärung der Überanpassung, ohne die Verständlichkeit zu beeinträchtigen.
Scortchi

1
@Aksakal Ich habe versucht, die Frage zu beantworten: "Ich brauche Hilfe, um ein reales Beispiel für Überanpassung zu finden." Es ist unklar, ob OP gebeten wurde, ein veröffentlichtes Papier zu finden, das zu gut passt, oder - eine natürlichere Bedeutung von "kommen mit" - ihr eigenes Beispiel zu konstruieren. Wenn Überanpassung schlecht ist, warum würde dann jemand im wirklichen Leben überanpassen? Meine Antwort, dass ein Analyst es vorziehen könnte, für ein über- oder unterbestimmtes Modell Fehler zu machen (aus Angst vor OVB oder Verdacht, dass eine Beziehung krummlinig ist), ist ein solches Beispiel. Die Grafik / Simulation zeigt einfach die Konsequenz: Schlechte Vorhersage außerhalb der Stichprobe
Silverfish

1
@Aksakal Mir ist nicht klar, dass ein Polynommodell für den Graphen "unwirklich" ist. Das dominierende Merkmal ist linear, aber wissen wir, dass es vollständig linear ist? Wenn wir Zugang zu einer hypothetischen Million politischer Einheiten hätten und ich mein Leben so oder so einsetzen müsste, wäre es mir lieber, wenn wir eine leichte krummlinige Beziehung erkennen würden, als dass alle polynomialen Begriffe bedeutungslos wären. Trotzdem vermeidet nur ein lineares Modell eine Überanpassung, wenn es auf ein niedriges n passt. (Wir können dies nicht lösen, da es schwierig ist, Stichproben aus der theoretisch unendlichen Population "möglicher US-Bundesstaaten" zu entnehmen. Dies ist ein Vorteil von simulierten Daten!)
Silverfish

4

Als ich versuchte, dies selbst zu verstehen, fing ich an, in Analogien mit der Beschreibung realer Objekte zu denken. Ich denke, es ist so "real" wie möglich, wenn Sie die allgemeine Idee verstehen wollen:

Angenommen, Sie möchten jemandem das Konzept eines Stuhls beschreiben, damit er ein konzeptionelles Modell erhält, mit dem er vorhersagen kann, ob ein neues Objekt, das er findet, ein Stuhl ist. Du gehst nach Ikea, holst dir ein Muster von Stühlen und beschreibst sie mit zwei Variablen: Es ist ein Objekt mit vier Beinen, auf dem du sitzen kannst. Nun, das kann auch einen Hocker oder ein Bett oder viele andere Dinge beschreiben. Ihr Modell passt nicht so gut, als ob Sie versuchen würden, eine komplexe Verteilung mit zu wenigen Variablen zu modellieren - viele Dinge, die nicht zum Stuhl gehören, werden als Stühle identifiziert. Erhöhen wir also die Anzahl der Variablen und fügen hinzu, dass das Objekt zum Beispiel einen Back haben muss. Jetzt haben Sie ein ziemlich akzeptables Modell, das Ihre Stühle beschreibt, aber allgemein genug ist, um ein neues Objekt als eines zu identifizieren. Ihr Modell beschreibt die Daten und kann Vorhersagen treffen. Angenommen, Sie haben ein Set, bei dem alle Stühle schwarz oder weiß sind und aus Holz bestehen. Sie entscheiden sich, diese Variablen in Ihr Modell aufzunehmen, und plötzlich wird ein gelber Plastikstuhl nicht mehr als Stuhl identifiziert. Nachdem Sie Ihr Modell überarbeitet haben, haben Sie Funktionen Ihres Datensatzes aufgenommen, als wären sie Funktionen von Stühlen im Allgemeinen (wenn Sie dies vorziehen, haben Sie "Rauschen" als "Signal" identifiziert, indem Sie zufällige Abweichungen von Ihrer Stichprobe als interpretieren) ein Merkmal der ganzen "realen Welt Stühle"). Sie erhöhen also entweder Ihre Stichprobe und hoffen, neue Materialien und Farben hinzuzufügen, oder Sie verringern die Anzahl der Variablen in Ihren Modellen. t Identifizieren Sie einen gelben Plastikstuhl als Stuhl. Nachdem Sie Ihr Modell überarbeitet haben, haben Sie Funktionen Ihres Datensatzes aufgenommen, als wären sie Funktionen von Stühlen im Allgemeinen (wenn Sie dies vorziehen, haben Sie "Rauschen" als "Signal" identifiziert, indem Sie zufällige Abweichungen von Ihrer Stichprobe als interpretieren) ein Merkmal der ganzen "realen Welt Stühle"). Sie erhöhen also entweder Ihre Stichprobe und hoffen, neue Materialien und Farben hinzuzufügen, oder Sie verringern die Anzahl der Variablen in Ihren Modellen. t Identifizieren Sie einen gelben Plastikstuhl als Stuhl. Nachdem Sie Ihr Modell überarbeitet haben, haben Sie Funktionen Ihres Datensatzes aufgenommen, als wären sie Funktionen von Stühlen im Allgemeinen (wenn Sie dies vorziehen, haben Sie "Rauschen" als "Signal" identifiziert, indem Sie zufällige Abweichungen von Ihrer Stichprobe als interpretieren) ein Merkmal der ganzen "realen Welt Stühle"). Sie erhöhen also entweder Ihre Stichprobe und hoffen, neue Materialien und Farben hinzuzufügen, oder Sie verringern die Anzahl der Variablen in Ihren Modellen.

Dies mag eine vereinfachende Analogie sein und wird einer weiteren Prüfung unterzogen, aber ich denke, sie funktioniert als allgemeine Konzeptualisierung. Lassen Sie mich wissen, ob ein Teil einer Klärung bedarf.


Könnten Sie bitte die Idee von "Rauschen" und "Signal" und die Tatsache, dass das überausgestattete Modell Rauschen beschreibt, genauer erläutern, da ich Probleme habe, dies zu verstehen.
Quirik

4

Bei der prädiktiven Modellierung geht es darum, anhand der vorliegenden Daten die vorhandenen Trends zu ermitteln, die auf zukünftige Daten verallgemeinert werden können. Indem Sie Variablen in Ihr Modell aufnehmen, die geringfügige, nicht signifikante Auswirkungen haben, geben Sie diese Idee auf. Was Sie tun, ist die Berücksichtigung der spezifischen Trends in Ihrer spezifischen Stichprobe, die nur aufgrund von zufälligem Rauschen statt eines wahren, zugrunde liegenden Trends vorliegen. Mit anderen Worten, ein Modell mit zu vielen Variablen passt eher zum Rauschen als zum Erkennen des Signals.

Hier ist eine übertriebene Darstellung dessen, wovon ich spreche. Hier sind die Punkte die beobachteten Daten und die Linie ist unser Modell. Sieh dir das perfekt an - was für ein tolles Modell! Aber haben wir den Trend wirklich entdeckt oder passen wir einfach zum Geräusch? Wahrscheinlich letzteres.

Bildbeschreibung hier eingeben


4

Eine Form der Überanpassung ist im Sport weit verbreitet, nämlich das Ermitteln von Mustern zur Erklärung vergangener Ergebnisse durch Faktoren, die keine oder bestenfalls vage Aussagekraft für zukünftige Ergebnisse haben. Ein gemeinsames Merkmal dieser "Muster" ist, dass sie häufig auf sehr wenigen Fällen beruhen, so dass der reine Zufall wahrscheinlich die plausibelste Erklärung für das Muster ist.

Beispiele sind Dinge wie (die "Zitate" sind von mir erfunden, sehen aber oft ähnlich aus)

Team A hat alle X Spiele gewonnen, seit der Trainer seine magische rote Jacke trägt.

Ähnlich:

Wir werden uns in den Playoffs nicht rasieren, denn das hat uns geholfen, die letzten X Spiele zu gewinnen.

Weniger abergläubisch, aber auch eine Form der Überanpassung:

Borussia Dortmund hat noch nie ein Heimspiel in der Champions League gegen einen spanischen Gegner verloren, als er das letzte Auswärtsspiel der Bundesliga mit mehr als zwei Toren verloren hat, nachdem er selbst mindestens einmal getroffen hat.

Ähnlich:

Roger Federer hat alle seine Davis Cup-Einsätze für europäische Gegner gewonnen, als er bei den diesjährigen Australian Open mindestens das Halbfinale erreicht hatte.

Die ersten beiden sind ziemlich offensichtlicher Unsinn (zumindest für mich). Die letzten beiden Beispiele mögen in der Stichprobe durchaus zutreffen (dh in der Vergangenheit), aber ich würde sehr gerne gegen einen Gegner wetten, der diese "Information" seine Chancen auf Dortmund gegen Madrid erheblich beeinflussen würde, wenn er 4 verlieren würde: 1 auf Schalke am Samstag zuvor oder Federer besiegte Djokovic, auch wenn er in diesem Jahr die Australian Open gewann.


3

Hier ist ein Beispiel aus der "realen Welt", nicht in dem Sinne, dass jemand in der Forschung darauf gestoßen ist, sondern in dem Sinne, dass es alltägliche Konzepte ohne viele statistikspezifische Begriffe verwendet. Vielleicht ist diese Art zu sagen für manche Menschen, die in anderen Bereichen trainieren, hilfreicher.

Stellen Sie sich vor, Sie haben eine Datenbank mit Daten über Patienten mit einer seltenen Krankheit. Sie sind Medizinstudent und möchten wissen, ob Sie Risikofaktoren für diese Krankheit erkennen können. In diesem Krankenhaus gab es 8 Fälle von dieser Krankheit, und Sie haben 100 zufällige Informationen über sie aufgezeichnet: Alter, Rasse, Geburtsreihenfolge, hatten sie als Kind Masern, was auch immer. Sie haben auch die Daten für 8 Patienten ohne diese Krankheit aufgezeichnet.

Sie entscheiden sich für die Verwendung der folgenden Heuristik für Risikofaktoren: Wenn ein Faktor bei mehr als einem Ihrer erkrankten Patienten einen bestimmten Wert annimmt, aber bei 0 Ihrer Kontrollen, wird er als Risikofaktor betrachtet. (Im wirklichen Leben würden Sie eine bessere Methode verwenden, aber ich möchte es einfach halten). Sie stellen fest, dass 6 Ihrer Patienten Vegetarier sind (aber keine der Kontrollen ist vegetarisch), 3 schwedische Vorfahren haben und zwei von ihnen eine stotternde Sprachbehinderung haben. Von den anderen 97 Faktoren kommt nichts bei mehr als einem Patienten vor, ist jedoch bei den Kontrollen nicht vorhanden.

Jahre später interessiert sich jemand anderes für diese Waisenkrankheit und wiederholt Ihre Forschung. Da er in einem größeren Krankenhaus arbeitet, das eine Kooperation zum Datenaustausch mit anderen Krankenhäusern unterhält, kann er im Gegensatz zu Ihren 8 Fällen Daten zu 106 Fällen verwenden. Und er findet heraus, dass die Prävalenz von Stottern in der Patientengruppe und in der Kontrollgruppe gleich ist; Stottern ist kein Risikofaktor.

Was hier passiert ist, ist, dass Ihre kleine Gruppe zufällig 25% Stotterer hatte. Ihre Heuristik konnte nicht erkennen, ob dies medizinisch relevant ist oder nicht. Sie gaben Kriterien an, um zu entscheiden, wann Sie ein Muster in den Daten für "interessant" genug halten, um in das Modell aufgenommen zu werden, und nach diesen Kriterien war das Stottern interessant genug.

Ihr Modell wurde überpasst, weil es fälschlicherweise einen Parameter enthielt, der in der realen Welt nicht wirklich relevant ist. Es passt sehr gut zu Ihrer Probe - den 8 Patienten + 8 Kontrollen -, aber es passt nicht zu den Daten der realen Welt. Wenn ein Modell Ihre Stichprobe besser beschreibt als die Realität, wird es als überpasst bezeichnet.

Wenn Sie einen Schwellenwert von 3 von 8 Patienten mit einem Merkmal gewählt hätten, wäre dies nicht geschehen - aber Sie hätten eine höhere Chance gehabt, etwas wirklich Interessantes zu verpassen. Besonders in der Medizin, wo viele Krankheiten nur bei einem kleinen Teil der Menschen mit Risikofaktoren auftreten, ist dies ein schwieriger Kompromiss. Und es gibt Methoden, um dies zu vermeiden (vergleichen Sie im Grunde genommen mit einer zweiten Stichprobe, um festzustellen, ob die Erklärungskraft gleich bleibt oder fällt), aber dies ist ein Thema für eine andere Frage.


Sehr erinnernd an xkcd.com/882
Floris

3

Hier ist ein reales Beispiel für eine Überanpassung, bei der ich mitgeholfen und dann (erfolglos) versucht habe, sie abzuwenden:

Ich hatte mehrere tausend unabhängige, bivariate Zeitreihen mit jeweils nicht mehr als 50 Datenpunkten, und das Modellierungsprojekt umfasste die Anpassung einer Vektorautoregression (VAR) an jede einzelne. Es wurde kein Versuch unternommen, über Beobachtungen hinweg zu regulieren, Varianzkomponenten zu schätzen oder ähnliches. Die Zeitpunkte wurden über einen Zeitraum von einem Jahr gemessen, sodass die Daten allen saisonalen und zyklischen Effekten unterworfen waren, die in jeder Zeitreihe nur einmal auftraten.

Eine Teilmenge der Daten wies im Vergleich zu den übrigen Daten eine unplausibel hohe Granger-Kausalitätsrate auf. Stichproben ergaben, dass positive Spitzen in dieser Teilmenge ein oder zwei Verzögerungen auftraten. Aus dem Zusammenhang ging jedoch hervor, dass beide Spitzen direkt von einer externen Quelle verursacht wurden und dass eine Spitze nicht die andere verursachte. Vorhersagen außerhalb der Stichprobe mit diesen Modellen wären wahrscheinlich falsch, da die Modelle überarbeitet waren: Anstatt die Spitzen durch Mitteln aus den restlichen Daten zu "glätten", gab es nur wenige Beobachtungen, die tatsächlich von den Spitzen verursacht wurden die Schätzungen.

Insgesamt denke ich, dass das Projekt nicht schlecht gelaufen ist, aber ich denke nicht, dass es Ergebnisse hervorgebracht hat, die bei weitem nicht so nützlich waren, wie sie hätten sein können. Ein Grund dafür ist, dass das Verfahren mit vielen unabhängigen VARs, selbst mit nur ein oder zwei Verzögerungen, eine schwierige Unterscheidung zwischen Daten und Rauschen hatte und daher auf Kosten der Gewährung von Einsicht über die Daten zu letzteren passte ehemalige.


1

Viele intelligente Leute in diesem Thread - viel mehr Kenner der Statistik als ich. Aber ich sehe immer noch kein leicht verständliches Beispiel für Laien. Das Presidential-Beispiel ist in Bezug auf die typische Überanpassung nicht ganz überzeugend, denn während es in jeder seiner wilden Behauptungen technisch überanpassungsfähig ist, passt ein überanpassungsfähiges Modell in der Regel zu dem gegebenen Geräusch, nicht nur zu einem Element.

Ich mag das Diagramm in der Bias-Varianz-Tradeoff-Erklärung in Wikipedia wirklich: http://en.wikipedia.org/wiki/Bias%E2%80%93variance_tradeoff

(Die unterste Tabelle ist das Beispiel für eine Überanpassung.)

Es fällt mir schwer, mir ein reales Beispiel vorzustellen, das nicht nach komplettem Hokuspokus klingt. Die Idee ist, dass Daten zum Teil durch messbare, verständliche Variablen verursacht werden - zum Teil durch zufälliges Rauschen. Der Versuch, dieses Rauschen als Muster zu modellieren, führt zu Ungenauigkeiten.

Ein klassisches Beispiel ist die Modellierung von SOLELY auf R ^ 2 in MS Excel (Sie versuchen, eine Gleichung / ein Modell mit Hilfe von Polynomen buchstäblich so nah wie möglich an die Daten anzupassen, egal wie unsinnig sie auch sein mögen).

Angenommen, Sie versuchen, den Eisverkauf als Funktion der Temperatur zu modellieren. Sie haben Daten aus der "realen Welt". Sie zeichnen die Daten und versuchen, R ^ 2 zu maximieren. Sie werden feststellen, dass bei Verwendung von Daten aus der realen Welt die engste Anpassungsgleichung nicht linear oder quadratisch ist (was logisch sinnvoll wäre). Wie bei fast allen Gleichungen gilt: Je mehr unsinnige Polynomterme Sie hinzufügen (x ^ 6 -2x ^ 5 + 3x ^ 4 + 30x ^ 3-43,2x ^ 2-29x), desto genauer passen sie zu den Daten. Wie hängt die Temperatur also sinnvoll mit dem Eisverkauf zusammen? Wie würden Sie dieses lächerliche Polynom erklären? Die Wahrheit ist, es ist nicht das wahre Modell. Sie haben die Daten überarbeitet.

Sie nehmen Lärm, der möglicherweise auf Verkaufsförderungsaktionen oder andere Variablen oder "Lärm" zurückzuführen ist, wie einen Schmetterling, der mit den Flügeln im Kosmos flattert (etwas, das niemals vorhersehbar ist), und versuchen, diesen Lärm basierend auf der Temperatur zu modellieren. Wenn Ihr Rauschen / Fehler normalerweise nicht auf Null gemittelt wird oder automatisch korreliert wird, bedeutet dies, dass es mehr Variablen gibt - und schließlich kommt es zu einem allgemein zufällig verteilten Rauschen, aber das ist immer noch das Beste, was ich kann erkläre es.


2
Die späteren ‚Modelle‘ im Präsidenten Comic tun passen alle gegebenen Lärm.
Ben Voigt

Der Comic ist meiner Meinung nach für die meisten überpassenden Szenarien nicht analog, obwohl die lächerlichen Regeln alle früheren Präsidenten genau vorhersagen würden. Die meisten Prognosen sagen keine dichotome Variable voraus. Es wird auch humorvoll auf die Regel hingewiesen, die bei der nächsten Wahl verletzt wird - mit anderen Worten, das Überkleidungsmodell ist die ganze Zeit falsch, was es zu einem perfekten Prädiktor für die Zukunft macht. Die meisten Überanpassungsmodelle basieren nicht auf einer fehlerhaften Variablen, die auf ihre Aktualität geprüft werden kann. In der Regel basieren sie auf zu vielen Variablen im Modell, die zufällig alle eingehen, um R ^ 2 zu reduzieren.
John Babson

0

Die meisten Optimierungsmethoden haben einige Fudge-Faktoren, auch Hyperparameter genannt. Ein echtes Beispiel:

Nmin=5,  finc=1.1,  fdec=0.5,  αstart=0.1,  fα=0.99.

Ist das über Fitting, oder einfach nur passend zu einem bestimmten Satz von Problemen?


0

Studieren Sie für eine Prüfung, indem Sie die Antworten auf die letztjährige Prüfung auswendig lernen.


0

Mein Favorit ist die Formel 3964, die ich vor der Fußball-Weltmeisterschaft 1998 entdeckt habe:

Brasilien gewann die Meisterschaften 1970 und 1994. Fassen Sie diese beiden Zahlen zusammen und Sie erhalten 3964; Deutschland gewann 1974 und 1990 und summierte sich erneut auf 3964; Das gleiche gilt für Argentinien, das 1978 und 1986 gewann (1978 + 1986 = 3964).

Dies ist eine sehr überraschende Tatsache, aber jeder kann erkennen, dass es nicht ratsam ist, eine zukünftige Vorhersage auf dieser Regel zu gründen. Tatsächlich besagt die Regel, dass der Gewinner der Weltmeisterschaft 1998 England seit 1966 + 1998 = 3964 und England 1966 gewann. Dies geschah nicht und der Gewinner war Frankreich.


-2

Ein bisschen intuitiv, aber vielleicht hilft es. Angenommen, Sie möchten eine neue Sprache lernen. Wie lernst du? Anstatt die Regeln in einem Kurs zu lernen, verwenden Sie Beispiele. Insbesondere Fernsehsendungen. Also magst du Krimishows und siehst ein paar Serien von Polizisten-Shows. Dann nimmst du eine weitere Krimisendung und siehst dir Serien aus dieser an. Bei der dritten Show siehst du - du weißt fast alles, kein Problem. Sie brauchen keine englischen Untertitel.

Aber dann probieren Sie Ihre neu erlernte Sprache bei Ihrem nächsten Besuch auf der Straße aus und stellen fest, dass Sie über nichts anderes sprechen können, als zu sagen: "Offizier! Dieser Mann hat meine Tasche genommen und diese Dame erschossen!". Während Ihr "Trainingsfehler" Null war, ist Ihr "Testfehler" hoch, da die Sprache "überarbeitet" wurde, nur eine begrenzte Teilmenge von Wörtern studiert wurde und davon ausgegangen wurde, dass sie ausreicht.


8
Das ist nicht übertrieben, es lernt nur einen Teil der Sprache. Eine Überanpassung wäre, wenn Sie nach dem Anschauen von Krimisendungen eine ganze, aber seltsame Sprache lernen, die in allen kriminellen Themen mit Englisch übereinstimmt, aber völlig Kauderwelsch (oder vielleicht Chinesisch) ist, wenn Sie über ein anderes Thema sprechen.
Amöbe
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.