Comment calculer sur l'échantillon R au carré?

10

Je sais que cela a probablement été discuté ailleurs, mais je n'ai pas pu trouver de réponse explicite. J'essaie d'utiliser la formule pour calculer hors échantillon d'un modèle de régression linéaire, où est la somme des carrés des résidus et est la somme totale des carrés. Pour l'ensemble de formation, il est clair queR 2 S S R S S TR2=1SSR/SSTR2SSRSST

SST=Σ(yy¯train)2

Qu'en est-il de l'ensemble de test? Dois-je continuer à utiliser pour l'échantillon ou utiliser place?y ˉ y testy¯trainyy¯test

J'ai trouvé que si j'utilise , le résultant peut parfois être négatif. Ceci est cohérent avec la description de la fonction de sklearn , où ils ont utilisé (qui est également utilisé par la fonction de leur linear_model pour tester des échantillons). Ils affirment qu '"un modèle constant qui prédit toujours la valeur attendue de y, sans tenir compte des caractéristiques d'entrée, obtiendrait un score R ^ 2 de 0,0".R2 ˉ y testy¯testR2r2_score()y¯testscore()

Cependant, dans d'autres endroits, les gens ont utilisé comme ici et ici (la deuxième réponse de dmi3kno). Je me demandais donc ce qui avait le plus de sens? Tout commentaire sera grandement apprécié!y¯train

crazydriver
la source

Réponses:

3

Vous avez raison.

Les résidus OSR 2 sont basés sur des données de test, mais la ligne de base devrait toujours être des données d'entraînement. Cela dit, votre SST est ; notez que c'est la même chose pour2SST=Σ(yy¯train)2R2

user152317
la source
3
Bien que j'ai corrigé certaines erreurs évidentes et apparentes d'éditions précédentes, une partie de la notation et une partie de la signification voulue ne sont toujours pas claires.
Nick Cox
Merci d'avoir répondu! Avez-vous une référence à ce sujet? Il semble que les logiciels de statistiques utilisent couramment la définition alternative, avec y_test?
Matifou