9 votos

Suma de los cuadrados de los residuos en lugar de la suma de los residuos

Mientras trabajaba en mi libro de estadísticas, me encontré con el tema de la regresión lineal. Durante el capítulo el autor comienza explicando que se quiere minimizar los residuos para que su y = a + bx encaje lo mejor posible: Entiendo esto, pero a mitad del capítulo, de repente los residuos se convierten en cuadrados de la suma de los residuos. ¿Por qué se hace esto? He estado buscando en Google, pero no pude encontrar la respuesta correcta. ¿Quién quiere ayudarme a entender por qué se usan las sumas de los cuadrados de los residuos en vez de sólo las sumas de los residuos?

Saludos cordiales, Bas

12voto

Zizzencs Puntos 1358

Las sumas de los residuos siempre serán 0, así que eso no funcionará.

Una pregunta más interesante es por qué utilizar la suma de los residuos al cuadrado frente a la suma del valor absoluto de los residuos. Esto penaliza más a los grandes residuos que a los pequeños. Creo que la razón por la que se hace esto es porque las matemáticas funcionan más fácilmente y, antes de las computadoras, era mucho más fácil estimar la regresión usando residuos al cuadrado. Hoy en día, esta razón ya no se aplica regresión de la desviación media absoluta es, en efecto, posible. Es una forma de regresión robusta.

10voto

Ludwi Puntos 188

Otra forma de motivar los residuos cuadrados es hacer la suposición, a menudo razonable, de que los residuos son de distribución gaussiana. En otras palabras, asumimos que $$y = ax + b + \varepsilon $$ para el ruido gaussiano $ \varepsilon $ . En este caso, la probabilidad logarítmica de los parámetros $a, b$ está dada por $$ \log p(y \mid x, a, b) = \log \mathcal {N}(y; ax + b, 1) = - \frac {1}{2} (y - [a + bx])^2 + \text {const},$$ para que maximizar la probabilidad equivale a minimizar los residuos cuadrados.

Si el ruido $ \varepsilon $ fue Laplace distribuyó el valor absoluto de los residuos sería más apropiado. Pero debido a la teorema del límite central El ruido gaussiano es mucho más común.

6voto

kyle Puntos 274

Buenas respuestas, pero tal vez pueda dar una respuesta más intuitiva. Suponga que está ajustando un modelo lineal, representado aquí por una línea recta parametrizada por una pendiente e interceptar.

Cada residuo es un resorte entre cada punto de datos y la línea, y está tratando de tirar de la línea hacia sí mismo. enter image description here
Una cosa sensata es encontrar la pendiente e interceptar que minimice la energía del sistema. La energía en cada resorte (es decir, residual) es proporcional a su longitud al cuadrado. Así que lo que el sistema hace es minimizar la suma de los residuos al cuadrado, es decir, minimizar la suma de la energía en los muelles.

5voto

Eero Puntos 1612

Esto es más bien una respuesta al comentario de @PeterFlom sobre mi comentario, pero es demasiado grande para caber en un comentario (y se relaciona con la pregunta original).

Aquí hay un código R para mostrar un caso en el que hay múltiples líneas que dan todos los mismos valores mínimos de MAD/SAD.

La primera parte del ejemplo son datos claramente artificiales para demostrar, pero el final incluye más bien un elemento aleatorio para demostrar que el concepto general seguirá siendo válido en algunos casos más realistas.

x <- rep(1:10, each=2)
y <- x/10 + 0:1
plot(x,y)

sad <- function(x,y,coef) { # mad is sad/n
    yhat <- coef[1] + coef[2]*x
    resid <- y - yhat
    sum( abs( resid ) )
}

library(quantreg)
fit0 <- rq( y~x )
abline(fit0)

fit1 <- lm( y~x, subset= c(1,20) )
fit2 <- lm( y~x, subset= c(2,19) )
fit3 <- lm( y~x, subset= c(2,20) )
fit4 <- lm( y~x, subset= c(1,19) )

fit5.coef <- c(0.5, 1/10)

abline(fit1)
abline(fit2)
abline(fit3)
abline(fit4)
abline(fit5.coef)
for (i in seq( -0.5, 0.5, by=0.1 ) ) {
    abline( fit5.coef + c(i,0) )
}

tmp1 <- seq( coef(fit1)[1], coef(fit2)[1], len=10 )
tmp2 <- seq( coef(fit1)[2], coef(fit2)[2], len=10 )

for (i in seq_along(tmp1) ) {
    abline( tmp1[i], tmp2[i] )
}

sad(x,y, coef(fit0))
sad(x,y, coef(fit1))
sad(x,y, coef(fit2))
sad(x,y, coef(fit3))
sad(x,y, coef(fit4))
sad(x,y, fit5.coef )

for (i in seq( -0.5, 0.5, by=0.1 ) ) {
    print(sad(x,y, fit5.coef + c(i,0) ))
}

for (i in seq_along(tmp1) ) {
    print(sad(x,y, c(tmp1[i], tmp2[i]) ) )
}

set.seed(1)
y2 <- y + rnorm(20,0,0.25)
plot(x,y2)
fitnew <- rq(y2~x)  # note the still non-unique warning
abline(fitnew)
abline(coef(fitnew) + c(.1,0))
abline(coef(fitnew) + c(0, 0.01) )
sad( x,y2, coef(fitnew) )
sad( x,y2, coef(fitnew)+c(.1,0))
sad( x,y2, coef(fitnew)+c(0,0.01))

4voto

nikolaMM94 Puntos 38

Además de los puntos hechos por Peter Flom y Lucas, una razón para minimizar la suma de los residuos al cuadrado es la Teorema de Gauss-Markov . Esto dice que si se cumplen las suposiciones de la regresión lineal clásica, entonces el estimador de mínimos cuadrados ordinarios es más eficiente que cualquier otro estimador lineal no sesgado. Más eficiente' implica que las varianzas de los coeficientes estimados son menores; en otras palabras, los coeficientes estimados son más precisos. El teorema se mantiene incluso si los residuos no tienen una distribución normal o gaussiana.

Sin embargo, el teorema no es pertinente para la comparación específica entre la minimización de la suma de valores absolutos y la minimización de la suma de cuadrados, ya que la primera no es una lineal estimador. Vea esto tabla que contrasta sus propiedades mostrando las ventajas de los mínimos cuadrados como estabilidad en respuesta a pequeños cambios en los datos, y teniendo siempre una solución única.

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