Wie berechnet man aus der Probe R im Quadrat?

10

Ich weiß, dass dies wahrscheinlich woanders diskutiert wurde, aber ich konnte keine explizite Antwort finden. Ich versuche, die Formel zu verwenden, um eines linearen Regressionsmodells außerhalb der Stichprobe zu berechnen , wobei die Summe der quadratischen Residuen und die Gesamtsumme der Quadrate ist. Für das Trainingsset ist das klarR2=1SSR/SSTR2SSRSST

SST=Σ(yy¯train)2

Was ist mit dem Testset? Sollte ich weiterhin für außerhalb von Beispiel oder stattdessen verwenden?y¯trainyy¯test

Ich habe festgestellt, dass wenn ich , das resultierende manchmal negativ sein kann. Dies steht im Einklang mit der Beschreibung der Funktion von sklearn , bei der (die auch von der Funktion ihres linear_models zum Testen von Beispielen verwendet wird). Sie geben an, dass "ein konstantes Modell, das immer den erwarteten Wert von y vorhersagt, ohne Berücksichtigung der Eingabemerkmale, einen R ^ 2-Wert von 0,0 erhalten würde."y¯testR2r2_score()y¯testscore()

An anderen Orten haben die Leute jedoch wie hier und hier verwendet (die zweite Antwort von dmi3kno). Also habe ich mich gefragt, was mehr Sinn macht? Jeder Kommentar wird sehr geschätzt!y¯train

verrückter Fahrer
quelle

Antworten:

3

Du hast Recht.

Die OSR Residuen basieren auf Testdaten, die Basislinie sollte jedoch weiterhin Trainingsdaten sein. Wenn dies gesagt ist, ist Ihr SST ; Beachten Sie, dass dies für S S T = Σ ( y - ˉ y t r a i n ) 22SST=Σ(yy¯train)2R2

user152317
quelle
3
Obwohl ich einige offensichtliche und einige offensichtliche Fehler aus früheren Änderungen behoben habe, sind einige der Notationen und einige der beabsichtigten Bedeutungen immer noch unklar.
Nick Cox
Danke für die Antwort! Haben Sie einen Hinweis darauf? Es scheint, dass stat-Software häufig die alternative Definition verwendet, mit y_test?
Matifou