So überprüfen Sie, ob mein Regressionsmodell gut ist

10

Eine Möglichkeit, die Genauigkeit des logistischen Regressionsmodells mithilfe von 'glm' zu ermitteln, besteht darin, das AUC-Diagramm zu ermitteln. Wie kann man dasselbe für ein Regressionsmodell überprüfen, das mit einer kontinuierlichen Antwortvariablen gefunden wurde (family = 'gaussian')?

Mit welchen Methoden wird überprüft, wie gut mein Regressionsmodell zu den Daten passt?

user1140126
quelle
Vielleicht möchten Sie einen Blick auf das r-squaredTag und das goodness-of-fitTag werfen ..
Makro
2
Die "Gaußsche" Familie mit einer linearen Verknüpfung ist nur eine gewöhnliche Regression der kleinsten Quadrate (OLS). Methoden zur Überprüfung solcher Anpassungen werden wahrscheinlich in tausend Fragen auf dieser Website diskutiert (ich übertreibe nicht).
whuber
Dieser Thread ist relevant: stats.stackexchange.com/q/414349/121522
mkt - Reinstate Monica

Antworten:

15

Ich würde zunächst eine kurze Suche nach " linearer Regressionsmodelldiagnose " vorschlagen . Aber hier sind einige, die ich Ihnen empfehlen würde, zu überprüfen:

Stellen Sie sicher, dass die Annahmen zufriedenstellend erfüllt sind

  • Verwenden Sie Streudiagramm oder Komponente plus Restdiagramm, um die lineare Beziehung zwischen dem / den unabhängigen Prädiktor (en) und der abhängigen Variablen zu untersuchen.

  • Erstellen Sie ein Diagramm mit standardisiertem Residuum gegenüber dem vorhergesagten Wert und stellen Sie sicher, dass es keinen Extrempunkt mit sehr hohem Residuum gibt und die Streuung des Residuums entlang des vorhergesagten Werts weitgehend ähnlich ist und sich weitgehend gleichmäßig über und unter dem Mittelwert des Residuums verteilt. Null.

  • Sie können auch die y-Achse in Rest ändern . Dieses Diagramm hilft bei der Identifizierung ungleicher Varianz.2

  • Überprüfen Sie das Studiendesign erneut, um sicherzustellen, dass die Annahme der Unabhängigkeit angemessen ist.

  • Rufen Sie den Varianzinflationsfaktor (VIF) oder die Toleranzstatistik ab, um mögliche Kollinearität zu untersuchen.

Untersuchen Sie mögliche Einflusspunkte.

  • Überprüfen Sie Statistiken wie Cooks D, DFits oder DF Beta, um festzustellen, ob ein bestimmter Datenpunkt Ihre Regressionsergebnisse drastisch verändert. Mehr finden Sie hier .

Untersuchen Sie die Änderung der und der angepassten StatistikR 2R2R2

  • Als Verhältnis der Regressionssumme der Quadrate zur Gesamtsumme der Quadrate kann Ihnen sagen, wie viele% der Variabilität in Ihrer abhängigen Variablen durch das Modell erklärt werden.R2
  • Das angepasste kann verwendet werden, um zu überprüfen, ob die zusätzliche Summe der Quadrate, die durch die zusätzlichen Prädiktoren verursacht wurden, wirklich die Freiheitsgrade wert ist, die sie einnehmen werden.R2

Überprüfen Sie die erforderliche Interaktion

  • Wenn es einen unabhängigen Hauptprädiktor gibt, überprüfen Sie vor der Interpretation seines unabhängigen Effekts, ob er mit anderen unabhängigen Variablen interagiert. Wenn die Interaktion nicht angepasst wird, kann dies Ihre Schätzung beeinflussen.

Wenden Sie Ihr Modell auf einen anderen Datensatz an und überprüfen Sie dessen Leistung

  • Sie können die Regressionsformel auch auf andere separate Daten anwenden und sehen, wie gut sie vorhergesagt werden. Diagramme wie Streudiagramme und Statistiken wie% Unterschied zum beobachteten Wert können als guter Anfang dienen.
Pinguin_Kacht
quelle
2
(+1): Sehr vollständige Antwort! Wenn Sie R verwenden, plot.lmkönnen Sie die meisten der von Penguin_Knight erwähnten Diagnoseplots erhalten.
Zach
4

Ich möchte meine Regressionsmodelle gegenseitig validieren, um festzustellen, wie gut sie sich auf neue Daten verallgemeinern lassen. Meine bevorzugte Metrik ist der mittlere absolute Fehler bei den kreuzvalidierten Daten, aber der mittlere quadratische Fehler ist häufiger und gleichermaßen nützlich.

Ich finde nicht, dass R2 eine gute Metrik dafür ist, wie gut Ihr Modell zu den Trainingsdaten passt, da fast jede auf den Trainingsdaten berechnete Fehlermetrik zu einer Überanpassung neigt. Wenn Sie R2 im Trainingssatz berechnen müssen, empfehle ich die Verwendung von angepasstem R2 .

Zach
quelle
1

Mit untersuchen, wie gut Ihr Modell zu den Trainingsdaten passt. Hier erfahren Sie, wie viel Prozent der Varianz in den Daten vom Modell erklärt werden.R2

Ich schlage vor, RMSE (Root Mean Square Error) Ihrer Vorhersagen für Ihren Testsatz im Vergleich zum tatsächlichen Wert zu verwenden. Dies ist eine Standardmethode zum Melden von Vorhersagefehlern einer kontinuierlichen Variablen.

BGreene
quelle
1
@Macro Aber die Frage stellte ursprünglich eine Leistungsmetrik für eine OLS-Regression mit Gaußschen Fehlern. Er kommt aus der logistischen Regression.
Erik
@Erik, danke, ich habe falsch verstanden. Was den ersten Teil betrifft, denke ich nicht, dass isoliert verwendet werden kann, um "zu überprüfen, ob mein Regressionsmodell gut ist", um die Wörter des OP zu verwenden. Ihr Modell könnte kläglich versagen, die überwiegende Mehrheit der Daten effektiv vorherzusagen, während es immer noch einen hohen . Siehe hier für ein Beispiel - in Beispiel (1), gibt es so gut wie keine Aussagekraft , aber ist immer noch hoch. R 2 R 2R2R2R2
Makro
@ Macro, ich stimme Ihren Kommentaren zu, wollte aber eine einfache Erklärung, um das OP in die richtige Richtung zu
lenken
0

Ich bin es gewohnt, die Funktionsform meines Parameterschätzers zu überprüfen, indem ich eine nichtparametrische (z. B. eine Kernel-Regression) oder semiparametrische Schätzung aufzeichne und mit der parametrisch angepassten Kurve vergleiche. Ich denke, dies ist im ersten Schritt oft schneller (und vielleicht aufschlussreicher) als das Einbeziehen von Interaktionsbegriffen oder Begriffen höherer Ordnung.

Das R-Paket np bietet viele nette nichtparametrische und semiparametrische Funktionen, und seine Vignette ist gut geschrieben: http://cran.r-project.org/web/packages/np/vignettes/np.pdf

Arne Jonas Warnke
quelle