web-dev-qa-db-fra.com

Comment la valeur R2 dans Scikit learn est-elle calculée?

La valeur R ^ 2 renvoyée par scikit learn (metrics.r2_score()) peut être négative. Les docs disent:

"Contrairement à la plupart des autres scores, le score R² peut être négatif (il n'est pas nécessaire qu'il soit réellement le carré d'une quantité R)."

Cependant, article wikipedia sur R ^ 2 ne mentionne aucune quantité R (non quadratique). Il utilise peut-être des différences absolues au lieu de différences carrées. Je n'en ai vraiment aucune idée

17
joeally

Le R^2 dans scikit learn est essentiellement le même que ce qui est décrit dans l'article de wikipedia sur le coefficient de détermination (grep pour "la définition la plus générale"). C'est 1 - residual sum of square / total sum of squares.

La grande différence entre un paramètre de statistiques classique et ce que vous essayez généralement de faire avec le machine learning, c'est que dans le machine learning, vous évaluez votre score sur des données invisibles, ce qui peut conduire à des résultats en dehors de [0,1]. Si vous postulez R^2 aux mêmes données que vous avez utilisées pour adapter votre modèle, elles se trouveront entre [0, 1]

Voir aussi ceci question très similaire

30
eickenberg

Puisque R ^ 2 = 1 - RSS/TSS, le seul cas où RSS/TSS> 1 se produit lorsque notre modèle est encore pire que le pire modèle supposé (qui est le modèle moyen absolu).

ici RSS = somme des carrés de différence entre les valeurs réelles (yi) et les valeurs prévues (yi ^) et TSS = somme des carrés de différence entre les valeurs réelles (yi) et la valeur moyenne (avant d'appliquer la régression). Vous pouvez donc imaginer que TSS représente le meilleur modèle (réel) et que RSS se situe entre notre meilleur modèle et le pire modèle moyen absolu, auquel cas nous obtiendrons RSS/TSS <1. Si notre modèle est encore pire que la pire moyenne modèle puis dans ce cas RSS> TSS (puisque différence entre l'observation réelle et la valeur moyenne <différence valeur prédite et observation réelle).

Vérifiez ici pour une meilleure intuition avec une représentation visuelle: https://ragrawal.wordpress.com/2017/05/06/intuition-behind-r2-and-other-regression-evaluation-metrics/

4
ManiS