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=1−SSR/SSTR2SSRSST

SST=Σ(y−y¯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

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=Σ(y−y¯train)2R2


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
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.