Vorhersageintervalle für die kNN-Regression

9

Ich möchte Vorhersageintervalle für Vorhersagen berechnen, die durch kNN-Regression gemacht wurden. Ich kann keine explizite Referenz zur Bestätigung finden, daher lautet meine Frage: Ist dieser Ansatz zur Berechnung der Vorhersageintervalle korrekt?

Ich habe einen Referenzdatensatz, in dem jede Zeile ein Ort ist (z. B. Stadt). Ich habe zwei Merkmale (z. B. x1 und x2), die eine Stichprobe aus der Bevölkerung dieses Ortes beschreiben (z. B. könnte x1 das Durchschnittseinkommen der Einwohner sein). Die Stichprobengröße ist für jeden Standort unterschiedlich. Ich sage eine Zielvariable (z. B. y, z. B. die Gesamtzahl der Autos in dieser Stadt) basierend auf x1 und x2 voraus.

Eine Vorhersage für einen neuen Ort Z wird gemacht, indem k nächste Nachbarn von Z in Bezug auf x1 und x2 (die euklidische Entfernung) gefunden und über die Zielvariable dieser k Nachbarn gemittelt werden.

Ich berechne Vorhersageintervalle als y * + - t * s, wobei s die Standardabweichung des Ziels unter k nächsten Nachbarn ist und t aus der Standardnormalverteilung stammt (z. B. für das 95% -Vorhersageintervall t = 1,96). Ich ignoriere x1 und x2 und ignoriere die Tatsache, dass x1 und x2 über verschiedene Stichproben geschätzt werden. Ist der Ansatz sinnvoll?

inzl
quelle

Antworten:

2

Sie haben zwei Möglichkeiten, denke ich.

  1. Bootstrap

Generieren Sie 100 synthetische Datensätze durch Abtasten mit Ersetzen aus dem Originaldatensatz. Führen Sie die Knn-Regression für jeden neuen Datensatz aus und sortieren Sie die Punktvorhersagen. Das Konfidenzintervall ist nur der Abstand zwischen der Vorhersage des 5. und 95. Punktes.

  1. Pseudoreste

Grundsätzlich verwenden Sie entweder einen gepoolten Varianzschätzer (wenn Sie mehrere Beobachtungen am selben ) oder Pseudo-Residuen, um eine Varianzschätzung zu erhalten. Unter der Annahme eines homoskedastischen und normalen Fehlers können Sie die t-Verteilung so verwenden, dass: Wobei der vorhergesagte Durchschnitt ist, ist der Freiheitsgrad der t-Verteilung und ist die Anzahl der Punkte in der Nachbarschaft.x
y¯i±t(h,α)σni
y¯h=n2nni

Sie können mehr darüber lesen Sie hier

CarrKnight
quelle
2
Zumindest die erste Option (Bootstrap) bietet kein Vorhersageintervall, sondern ein Konfidenzintervall für die wahre Durchschnittsvorhersage.
Michael M
1
Dies ist ein weit verbreitetes Missverständnis. Das Vorhersageintervall ist genauso gut über Bootstrap möglich, siehe zum Beispiel Abschnitt 6.3.3 von "Bootstrap-Methoden und ihre Anwendungen" von Davison
CarrKnight
2
Ich wäre sehr daran interessiert, mehr darüber zu erfahren. Um diese Frage nicht zu entführen, habe ich einen neuen Thread geöffnet ( stats.stackexchange.com/questions/226565/… )
Michael M
@CarrKnight Ist es möglich / richtig, diese Methoden zu verwenden, wenn Ihre Daten Zeitreihen sind?
Arroba