Vorhersageintervall basierend auf Kreuzvalidierung (CV)

19

In den Lehrbüchern und YouTube-Vorlesungen habe ich viel über iterative Modelle wie Boosten gelernt, aber ich habe nie etwas darüber gesehen, wie man ein Vorhersageintervall ableitet.

Kreuzvalidierung wird für Folgendes verwendet:

  • Modellauswahl : Probieren Sie verschiedene Modelle aus und wählen Sie das Modell , das am besten passt. Verwenden Sie beim Boosten CV, um die Tuning-Parameter auszuwählen.
  • Modellbewertung : Schätzen Sie die Leistung des ausgewählten Modells

Für die Modellbewertung sind mehrere Parameter wichtig, einer davon ist der erwartete Vorhersagefehler. Die Kreuzvalidierung liefert eine gute Schätzung des Vorhersagefehlers, wie im Buch "Die Elemente des statistischen Lernens" beschrieben.

Aber wie verwenden wir den erwarteten Vorhersagefehler, um ein Vorhersageintervall zu erstellen?

Und wenn Sie beispielsweise den Preis eines Hauses vorhersagen, ist das Vorhersageintervall für ein Haus von 500.000 € höher als für ein Haus von 200.000 €. Wie schätzen wir diese Vorhersageintervalle mithilfe der Kreuzvalidierung?

Kasper
quelle
Dies ist ein Schritt in die richtige
Kasper
Ich denke, was Sie suchen, sind konforme Vorhersagen. Siehe den Artikel von Shafer und Vovk jmlr.csail.mit.edu/papers/volume9/shafer08a/shafer08a.pdf .
Alexey Zaytsev
Könnten Sie bitte erklären, warum Sie glauben, dass das Vorhersageintervall für ein Haus mit 500.000 im Vergleich zu einem Haus mit 200.000 "höher" ist? Ist das eine Funktion der Anzahl der Proben? Können Sie annehmen, dass Stichproben aus der Gesamtverteilung gezogen wurden?
Justanotherbrain

Antworten:

3

Nachdem ich diese Frage noch einmal durchgelesen habe, kann ich Ihnen die folgende Grenze geben:

Es sei angenommen , die Proben werden gezogen iid wird die Verteilung festgelegt, und der Verlust wird durch begrenzte , dann mit einer Wahrscheinlichkeit von mindestens 1 - δ , E [ E ( h ) ] E ( h ) + B B1-δ

E[E(h)]E^(h)+BLog1δ2m

Dabei ist die Stichprobengröße und 1 - δ die Zuverlässigkeit. Die Schranke hält trivialerweise McDiarmid's Ungleichung durch.m1-δ

ist die Probengröße, E [ E ( h ) ] sind die Verallgemeinerung Fehler und E ( h ) ist der Test fürFehlerhypothese.mE[E(h)]E^(h)

Bitte melden Sie nicht nur den Kreuzvalidierungsfehler oder den Testfehler, diese sind im Allgemeinen bedeutungslos, da es sich nur um Punktschätzungen handelt.


Alter Beitrag zur Aufzeichnung:

Ich bin mir nicht sicher, ob ich Ihre Frage vollständig verstanden habe, aber ich werde es versuchen.

Erstens bin ich mir nicht sicher, wie Sie ein Vorhersageintervall für die Modellauswahl definieren würden, da die Vorhersageintervalle meines Wissens einige Verteilungsannahmen treffen. Stattdessen können Sie Konzentrationsunterschiede ableiten, die eine Zufallsvariable mit einiger Wahrscheinlichkeit an ihre Varianz binden. Konzentrationsungleichungen werden beim maschinellen Lernen verwendet, einschließlich der fortgeschrittenen Theorie zur Steigerung. In diesem Fall möchten Sie den Verallgemeinerungsfehler (Ihren Fehler im Allgemeinen, Punkte, die Sie nicht gesehen haben) an Ihren empirischen Fehler (Ihren Fehler in der Testmenge) plus einen Komplexitätsterm und einen Term, der sich auf die Varianz bezieht, binden.

Jetzt muss ich ein Missverständnis über die Kreuzvalidierung zerstreuen, das äußerst häufig vorkommt. Bei einer Kreuzvalidierung erhalten Sie nur eine unvoreingenommene Schätzung des erwarteten Fehlers eines Modells FÜR EINE FESTE MUSTERGRÖSSE. Der Beweis dafür funktioniert nur für das Leave-One-Out-Protokoll. Dies ist eigentlich ziemlich schwach, da Sie keine Informationen über die Varianz erhalten. Auf der anderen Seite liefert die Kreuzvalidierung ein Modell, das der strukturellen Risikominimierungslösung nahe kommt, die theoretisch die beste Lösung ist. Den Beweis finden Sie im Anhang hier: http://www.cns.nyu.edu/~rabadi/resources/scat-150519.pdf

Wie kann man also eine Verallgemeinerungsgrenze ableiten? (Denken Sie daran, dass eine Verallgemeinerungsgrenze im Grunde genommen ein Vorhersageintervall für den Verallgemeinerungsfehler für ein bestimmtes Modell ist.) Nun, diese Grenzen sind algorithmenspezifisch. Leider gibt es nur ein Lehrbuch, das alle gängigen Algorithmen des maschinellen Lernens (einschließlich Boosting) einschränkt. Das Buch ist Foundations of Machine Learning (2012) von Mohri, Rostamizadeh und Talwalkar. Vorlesungsfolien, die das Material abdecken, finden Sie auf der Website von Mohri: http://www.cs.nyu.edu/~mohri/ml14/

Während Elements of Statistical Learning ein wichtiges und etwas hilfreiches Buch ist, ist es nicht sehr streng und es lassen viele sehr wichtige technische Details in Bezug auf die Algorithmen aus und lassen jegliche Art von Verallgemeinerungsgrenzen vollständig aus. Grundlagen des maschinellen Lernens ist das umfassendste Buch zum maschinellen Lernen (was sinnvoll ist, da es von einigen der besten Fachleuten geschrieben wurde). Das Lehrbuch ist jedoch fortgeschritten, achten Sie also auf technische Details.

Die Verallgemeinerung gebunden zur Verstärkung kann (mit Nachweis) finden sich hier: http://www.cs.nyu.edu/~mohri/mls/lecture_6.pdf

Ich hoffe, das sind genug Hinweise, um Ihre Frage zu beantworten. Ich zögere, eine vollständige Antwort zu geben, da es ungefähr 50 Seiten dauern wird, bis alle notwendigen Details besprochen sind, geschweige denn die vorbereitenden Diskussionen ...

Viel Glück!

justanotherbrain
quelle
Wenn ich das gut verstehe, ergibt dies eine obere Schranke für den Generalisierungsfehler für jedes Quantil über die gesamte Verteilung (basierend auf einigen Annahmen). Ich verstehe jedoch Ihren Satz "Bitte melden Sie weder den Kreuzvalidierungsfehler noch den Testfehler" nicht. Bedeuten Sie, dass diese beiden Kennzahlen unbrauchbar sind, oder sind sie nur unbrauchbar, um ein Vorhersageintervall zu finden?
LouisBBBB
@LouisBBBB CV-Fehler und Testfehler ähneln dem Melden eines Stichprobenmittelwerts. Es ist in der Regel eine schlechte Praxis, den Stichprobenmittelwert ohne eine Art Konfidenzintervall anzugeben, da ich bei jedem Versuch ein anderes Ergebnis erhalte. Ich sagte bedeutungslos, aber vielleicht ist "nutzlos" besser ... Man könnte argumentieren, dass eine Punktschätzung eine gewisse Bedeutung hat (dh die Definition). Aber Punktschätzungen sind im Allgemeinen "nutzlos" in dem Sinne, dass sie die Fehlerverteilung nicht auf "nützliche Weise" charakterisieren. "Nützlich" im Kontext von Entscheidungen.
Justanotherbrain
Ich glaube ich verstehe was du sagst. Sie analysieren also lieber die Fehlerverteilung als den Mittelwert. Und wenn ich auf die Frage zurückkomme, wollte Kasper Schätzungen der Vorhersageintervalle "pro Punkt". Ihre Antwort war eine globale Obergrenze für die Länge des Vorhersageintervalls (oder etwas Ähnliches), stimmt das? Kennen Sie einen Weg, um eine lokale Obergrenze zu erreichen?
LouisBBBB
Ah - danke für die Klarstellung. Ich glaube, ich habe @ Kaspers Frage missverstanden und habe viele Anschlussfragen. Vielen Dank für den Hinweis, ich werde ein bisschen graben.
Justanotherbrain