49 votos

¿Qué significa R cuadrado negativo?

Imaginemos que tenemos algunos datos, y luego ajustamos los datos con un modelo (una regresión no lineal). Luego calculamos el R-cuadrado ($R^2$).

¿Qué significa cuando el R-cuadrado es negativo? ¿Eso significa que mi modelo es malo? Sé que el rango de $R^2$ puede ser [-1,1]. ¿Qué significa también cuando $R^2$ es 0?

6 votos

Esto significa que has hecho algo mal ya que $R^2$ se encuentra en $[0, 1]$ por definición. $R^2$ ajustado, por otro lado, puede ser negativo, lo que puedes asumir con seguridad que significa que tu modelo es un ajuste muy pobre a los datos. Cuando $R^2$ es exactamente cero esto significa que $\bar{y}$ es igual de buen predictor de $y$ como la línea de regresión de mínimos cuadrados en sí misma.

1 votos

Esto es posible para una regresión sin una intercepción ver por ejemplo stats.stackexchange.com/questions/164586/…

0 votos

79voto

Joe Puntos 152

$R^2$ puede ser negativo, simplemente significa que:

  1. El modelo se ajusta muy mal a tus datos
  2. No estableciste una intercepción

Para las personas que dicen que $R^2$ está entre 0 y 1, esto no es cierto. Aunque un valor negativo para algo con la palabra 'elevado al cuadrado' en ella podría sonar como si rompiera las reglas de las matemáticas, puede ocurrir en un modelo de $R^2$ sin una intercepción. Para entender por qué, necesitamos mirar cómo se calcula $R^2$.

Esto es un poco largo - Si quieres la respuesta sin entenderla, entonces ve al final. De lo contrario, he intentado escribir esto en palabras simples.

Primero, definamos 3 variables: $RSS$, $TSS$ y $ESS$.

Calculando RSS:

Para cada variable independiente $x$, tenemos la variable dependiente $y$. Graficamos una línea lineal de mejor ajuste, que predice el valor de $y$ para cada valor de $x$. Llamemos a los valores de $y$ que la línea predice como $\hat y$. El error entre lo que tu línea predice y cuál es el valor real de $y$ se puede calcular por sustracción. Todas estas diferencias se elevan al cuadrado y se suman, lo cual da el Suma de los Residuos al Cuadrado $RSS$.

Poniéndolo en una ecuación, $RSS = \sum (y - \hat y)^2$

Calculando TSS:

Podemos calcular el valor promedio de $y$, que se llama $\bar y$. Si graficamos $\bar y$, es solo una línea horizontal a través de los datos porque es constante. Lo que podemos hacer con ello, sin embargo, es restar $\bar y$ (el valor promedio de $y$) de cada valor real de $y$. El resultado se eleva al cuadrado y se suma, lo cual da la Suma Total de Cuadrados $TSS$.

Poniéndolo en una ecuación $TSS = \sum (y - \bar y)^2$

Calculando ESS:

Las diferencias entre $\hat y$ (los valores de $y$ predichos por la línea) y el valor promedio $\bar y$ se elevan al cuadrado y se suman. Esto es la Suma Explicada de Cuadrados, que es igual a $\sum (\hat y - \bar y)^2$

Recuerda, $TSS = \sum (y - \bar y)^2$, pero podemos agregar un $ + \hat y - \hat y$ en ello, porque se cancela a sí mismo. Por lo tanto, $TSS = \sum (y - \hat y + \hat y -\bar y)^2$. Expandiendo estos paréntesis, obtenemos $TSS = \sum (y - \hat y)^2 + 2* \sum (y - \hat y)(\hat y - \bar y) + \sum (\hat y - \bar y)^2$

Cuando, y solo cuando la línea se grafica con una intercepción, siempre es cierto lo siguiente: $2* \sum (y - \hat y)(\hat y - \bar y) = 0$. Por lo tanto, $TSS = \sum (y - \hat y)^2 + \sum (\hat y - \bar y)^2$, lo cual te darás cuenta que simplemente significa que $TSS = RSS + ESS$. Si dividimos todos los términos por $TSS$ y reorganizamos, obtenemos $1 - \frac {RSS}{TSS} = \frac {ESS}{TSS}$.

He aquí la parte importante:

$R^2$ se define como cuánta de la varianza es explicada por tu modelo (qué tan bueno es tu modelo). En forma de ecuación, eso es $R^2 = 1 - \frac {RSS}{TSS}$. ¿Te suena familiar? Cuando la línea se grafica con una intercepción, podemos sustituir esto como $R^2 = \frac {ESS}{TSS}$. Dado que tanto el numerador como el denominador son sumas de cuadrados, $R^2$ debe ser positivo.

Pero

Cuando no especificamos una intercepción, $2* \sum (y - \hat y)(\hat y - \bar y)$ no necesariamente es igual a $0$. Esto significa que $TSS = RSS + ESS + 2* \sum (y - \hat y)(\hat y - \bar y)$.

Dividiendo todos los términos por $TSS$, obtenemos $1 - \frac{RSS}{TSS} = \frac {ESS + 2* \sum (y - \hat y)(\hat y - \bar y)}{TSS}$.

Finalmente, sustituimos para obtener $R^2 = \frac {ESS + 2* \sum (y - \hat y)(\hat y - \bar y)}{TSS}$. Esta vez, el numerador tiene un término que no es una suma de cuadrados, por lo que puede ser negativo. Esto haría que $R^2$ sea negativo. ¿Cuándo sucedería esto? $2* \sum (y - \hat y)(\hat y - \bar y)$ sería negativo cuando $y - \hat y$ es negativo y $\hat y - \bar y$ es positivo, o viceversa. Esto ocurre cuando la línea horizontal de $\bar y$ explica realmente mejor los datos que la línea de mejor ajuste.

He aquí un ejemplo exagerado de cuando $R^2$ es negativo (Fuente: Universidad de Houston Clear Lake)

Un ejemplo exagerado de cuando R^2 es negativo (Fuente: Universidad de Houston Clear Lake)

En resumen:

  • Cuando $R^2 < 0$, una línea horizontal explica los datos mejor que tu modelo.

También preguntaste sobre $R^2 = 0$.

  • Cuando $R^2 = 0$, una línea horizontal explica los datos igual de bien que tu modelo.

Te felicito por haber llegado hasta aquí. Si encontraste esto útil, también deberías darle votos positivos a la respuesta de fcop aquí al cual tuve que referirme, porque ha pasado un tiempo.

8 votos

¡Respuesta realmente fantástica! ¿Lo único que me falta es la intuición detrás de por qué $2* \sum (y - \hat y)(\hat y - \bar y) = 0$ cuando, y solo cuando, hay un intercepto establecido?

1 votos

Creo que tengo una explicación parcial: expandir la expresión da $y_i(\sum{\hat{y_i}}-\sum{\bar{y}}) + \hat{y_i}(\sum{\bar{y}} - \sum{\hat{y_i}})$. Se va a cero si el valor esperado de las predicciones es igual al valor esperado de los datos. Supongo que permitir una intercepción otorga el grado extra de libertad necesario en la regresión de mínimos cuadrados para que eso suceda.

0 votos

Gran respuesta pero no estoy seguro si la afirmación no probada $2* \sum (y - \hat y)(\hat y - \bar y) = 0$ si y solo si la intersección es distinta de cero es verdadera. Creo que la versión correcta debería ser $2* \sum (y - \hat y)(\hat y - \bar y) = 0$ si y solo si el modelo es un modelo de regresión lineal y el modelo está siendo evaluado en los mismos datos en los que se ajustó, como se discute en este artículo.

34voto

Thor84no Puntos 80

Ninguna de las respuestas hasta ahora es completamente correcta, así que intentaré dar mi comprensión de R-Squared. He dado una explicación más detallada sobre esto en mi publicación de blog aquí "¿Qué es R-Squared"

Error Cuadrado Total

El objetivo de la regresión de mínimos cuadrados ordinarios es obtener una línea que minimice el error cuadrático total. La línea predeterminada con el mínimo error cuadrático total es una línea horizontal a través de la media. Básicamente, si no puedes hacerlo mejor, simplemente puedes predecir el valor medio y eso te dará el mínimo error cuadrático total.

línea horizontal a través de la media

R-Squared es una forma de medir cuánto mejor que la línea media has hecho en base al error cuadrático total. La ecuación para R-Squared es

ecuación para r-squared

Ahora SS Regresión y SS Total son ambas sumas de términos cuadrados. Ambas siempre son positivas. Esto significa que estamos tomando 1 y restando un valor positivo. Así que el valor máximo de R-Squared es positivo 1, pero el mínimo es menos infinito. Sí, es correcto, el rango de R-Squared está entre menos infinito y 1, no entre -1 y 1 ni entre 0 y 1

¿Qué es el Error Cuadrático Total?

El error cuadrático total es tomar el error en cada punto, elevarlo al cuadrado y sumar todos los cuadrados. Para el error total, se utiliza la línea horizontal a través de la media, porque eso da el menor error cuadrático total si no tienes otra información, es decir, no puedes hacer una regresión.

imagen de la descripción aquí

Como ecuación es la siguiente

ecuación de error total cuadrático

Ahora, con la regresión, nuestro objetivo es hacerlo mejor que la media. Por ejemplo, esta línea de regresión dará un error cuadrático total menor que usar la línea horizontal.

imagen de la descripción aquí

La ecuación para el error cuadrático total de regresión es esta

imagen de la descripción aquí

Lo ideal sería tener un error de regresión cero, es decir, que tu línea de regresión coincida perfectamente con los datos. En ese caso, obtendrías un valor de R-Squared de 1

valor de r-squared de 1

R-Squared Negativo

Toda la información anterior es bastante estándar. ¿Y qué pasa con el R-Squared negativo?

Bueno, resulta que no hay ninguna razón por la que tu ecuación de regresión deba dar un error cuadrático total menor que el valor medio. Generalmente se piensa que si no puedes hacer una predicción mejor que el valor medio, simplemente usarías el valor medio, pero no hay nada que obligue a que así sea. Por ejemplo, podrías predecir la mediana para todo.

En la práctica real, con la regresión de mínimos cuadrados ordinarios, el momento más común para obtener un valor de R-Squared negativo es cuando fuerzas un punto por el que debe pasar la línea de regresión. Esto se hace típicamente estableciendo la intersección, pero puedes forzar la línea de regresión a través de cualquier punto.

Cuando haces eso, la línea de regresión pasa por ese punto e intenta obtener el mínimo error cuadrático total mientras pasa por ese punto.

punto fijo

Por defecto, las ecuaciones de regresión usan el promedio de x y el promedio de y como el punto por el que pasa la línea de regresión. Pero si la fuerzas a pasar por un punto que está lejos de donde normalmente estaría la línea de regresión, puedes obtener un error cuadrático total que sea mayor que usando la línea horizontal.

En la imagen a continuación, ambas líneas de regresión fueron forzadas a tener una intersección y de y de 0. Esto causó un R-Squared negativo para los datos que están muy desplazados desde el origen.

r cuadrado negativo

Para el conjunto de puntos superiores, los rojos, la línea de regresión es la mejor línea de regresión posible que también pasa por el origen. Simplemente resulta que esa línea de regresión es peor que usar una línea horizontal y, por lo tanto, da un R-Squared negativo.

R-Squared Indefinido

Hay un caso especial que nadie mencionó, donde puedes obtener un R-Squared indefinido. Eso es si tus datos son completamente horizontales, entonces tu error cuadrático total es cero. Como resultado, tendrías un cero dividido por cero en la ecuación de R-Squared, lo cual es indefinido.

imagen de la descripción aquí

imagen de la descripción aquí

2 votos

Una respuesta muy viva, ¡me gustaría ver muchas más respuestas de este tipo!

1voto

Charles Ma Puntos 12330

La pregunta está pidiendo acerca de "un modelo (una regresión no lineal)". En este caso no hay límite de lo negativo que puede ser R-cuadrado.

R-cuadrado = 1 - SSE / TSS

Mientras el término SSE sea significativamente grande, obtendrás un R-cuadrado negativo. Puede ser causado por un ajuste general malo o una predicción extremadamente mala.

Por ejemplo:

In [78]: from sklearn import metrics

In [79]: actual = np.array([1,2,3,4,5,6])

In [80]: preds = np.array([1,2,3,4,5,60]) # el modelo puede predecir cualquier cosa

In [81]: metrics.r2_score(actual, preds)
Out[81]: -165.62857142857143

In [82]: sse = np.sum((actual - preds) ** 2)

In [83]: sse
Out[83]: 2916

In [84]: tss = np.sum((actual - np.mean(actual)) ** 2)

In [85]: tss
Out[85]: 17.5

In [86]: r_2 = 1 - sse / tss

In [87]: r_2
Out[87]: -165.62857142857143

0voto

user233900 Puntos 8

Un $R^2$ negativo puede indicar una calibración relativa deficiente del modelo. Esto se aplica estrictamente al $R^2$ de Efron en el contexto de regresión logística. Creo que esto se puede extrapolar (al menos como una intuición) al $R^2$ estándar para el modelo de probabilidad lineal.

Esto se deriva de la equivalencia entre el $R^2$ de Efron y el Brier Skill Score (BSS):

$$\text{R^2 de Efron} = 1 - \frac{\sum_{i=1}^N ({y_i} - \hat \pi_i)^2}{\sum_{i=1}^N ({y_i} - \bar y)^2}$$

Mientras que:

$$BSS = 1 - \frac{BS}{BS_{\text{ref}}} = 1 - \frac{\frac{1}{N} \sum_{t=1}^N (f_t - o_t)^2}{\frac{1}{N} \sum_{t=1}^N (\bar o - o_t)^2} = 1 - \frac{\sum_{t=1}^N (o_t - f_t)^2}{\sum_{t=1}^N (o_t - \bar o)^2}$$

donde

  • $y_i$ - evento, $o_t$ - resultado real
  • $\hat \pi_i$ - probabilidad predicha por el modelo, $f_t$ - probabilidad pronosticada
  • $i$ - observación, $t$ - pronóstico

Notación tomada de UCLA para el $R^2$ de Efron y de Wiki para BSS.

Algunas pautas recomiendan que todos los modelos clínicos de predicción deben tener un BSS>0.

1 votos

Sería interesante agregar un ejemplo de un modelo con un alto AUC y un Efron's $R^2 negativo.

-1voto

Will Puntos 116

Como señaló el comentarista anterior, r^2 está entre [0,1], no entre [-1,+1], por lo que es imposible que sea negativo. No se puede elevar al cuadrado un valor y obtener un número negativo. ¿Quizás estás viendo r, la correlación? Puede estar entre [-1,+1], donde cero significa que no hay relación entre las variables, -1 significa que hay una relación negativa perfecta (a medida que una variable aumenta, la otra disminuye), y +1 es una relación positiva perfecta (ambas variables aumentan o disminuyen simultáneamente).

Si de hecho estás viendo r^2, entonces, como menciona el comentarista anterior, probablemente estás viendo el r^2 ajustado, no el r^2 real. Considera lo que significa la estadística: enseño estadísticas de ciencias del comportamiento, y la manera más fácil que he aprendido de enseñarles a mis estudiantes sobre el significado de r^2 es "% de la varianza explicada." Así que si tienes r^2=0.5, el modelo explica el 50% de la variación de la variable dependiente. Si tienes un r^2 negativo, significaría que el modelo explica un % negativo de la variable de resultado, lo cual no es una sugerencia intuitivamente razonable. Sin embargo, el r^2 ajustado tiene en cuenta el tamaño de la muestra (n) y el número de predictores (p). Una fórmula para calcularlo está aquí. Si tienes un r^2 muy bajo, entonces es razonable obtener valores negativos. Claro, un r^2 ajustado negativo no tiene un significado más intuitivo que un r^2 normal, pero como menciona el comentarista anterior, simplemente significa que tu modelo es muy deficiente, si no simplemente inútil.

3 votos

En cuanto al porcentaje de varianza explicada, tal vez si el modelo es tan pobre como para aumentar la varianza (ESS > TSS), se podría obtener un $R^2$ negativo, donde $R^2$ se define como el % de varianza explicada en lugar de la correlación al cuadrado entre los valores reales y los valores ajustados. Esto podría no ocurrir en una regresión con una intersección estimada por OLS, pero podría ocurrir en una regresión sin intersección o quizás en otros casos.

5 votos

$R^2$ es imposible que sea $<0$ en la muestra pero puede ser negativo al ser calculado fuera de la muestra, es decir, en una muestra de retención después de fijar todos los coeficientes de regresión. Como se explicó anteriormente, esto representa predicciones peores que al azar.

0 votos

@FrankHarrell, ¿estás seguro de que necesita estar en una muestra? Concedido, tendrías que ignorar bastante los datos para generar un modelo que sea peor que la media, pero no veo por qué no puedes hacerlo solo con datos dentro de la muestra.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X