Capítulo 7 Regresión lineal

La regresión lineal es uno de los métodos fundamentales tanto en estadística como en machine learning supervisado. Su objetivo es modelar la relación entre una variable de interés (variable dependiente u objetivo) y uno o más predictores (variables explicativas).

Este modelo es especialmente valioso porque combina tres propiedades esenciales:

  1. Interpretabilidad: Permite entender el efecto marginal de cada variable.
  2. Simplicidad computacional: Puede estimarse incluso con grandes bases de datos.
  3. Buena capacidad predictiva: Cuando la relación es más o menos lineal, funciona sorprendentemente bien.

A lo largo de este documento veremos tanto la teoría detrás del modelo como su uso práctico con ejemplos simples en R.


7.1 Planteo del modelo

En el caso univariado, el modelo de regresión lineal tiene la forma:

\[ Y_i = \beta_0 + \beta_1 X_i + u_i \]

donde:

  • \(Y_i\) es el resultado observado,
  • \(X_i\) es el predictor,
  • \(\beta_0\) es el intercepto,
  • \(\beta_1\) mide el cambio esperado en \(Y\) ante un aumento de una unidad en \(X\),
  • \(u_i\) es el error aleatorio que captura todo lo que no puede representarse con este modelo simple (factores no observables, errores de medición, etc.).

En el caso múltiple, el modelo se generaliza a:

\[ Y_i = \beta_0 + \beta_1 X_{1i} + \cdots + \beta_k X_{ki} + u_i. \]


7.2 ¿Cómo se estiman los parámetros?

Los parámetros se estiman por mínimos cuadrados ordinarios (MCO), eligiendo los valores de \(\beta_0, \beta_1, ..., \beta_k\) que minimizan la suma de cuadrados de los residuos:

\[ \min_{\beta} \sum_{i=1}^n (Y_i - \widehat{Y_i})^2 \]

La solución viene dada por:

\[\begin{equation} \tag{7.1} \hat{\beta} = (X'X)^{-1}X'Y \end{equation}\]

Intuitivamente, buscamos la recta o hiperplano que pasa “mejor” por los datos.

Modelo lineal y MCO

Figura 7.1: Modelo lineal y MCO


7.3 ¿Cómo funciona en la práctica?

La teoría proporciona las ecuaciones y propiedades del modelo, pero en la práctica necesitamos:

  1. Estimarlo con datos reales, lo cual hacemos con una función como lm() en R.
  2. Interpretar el resultado para entender cómo influyen las variables.
  3. Verificar si el modelo es adecuado mediante análisis de residuos.

Veamos un ejemplo concreto usando el dataset mtcars donde:

  • mpg: rendimiento del auto,
  • wt: peso del vehículo en miles de libras.
library(tidyverse)

data(mtcars)

# Modelo simple: mpg explicado por peso
m1 <- lm(mpg ~ wt, data = mtcars)
summary(m1)
## 
## Call:
## lm(formula = mpg ~ wt, data = mtcars)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4.5432 -2.3647 -0.1252  1.4096  6.8727 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  37.2851     1.8776  19.858  < 2e-16 ***
## wt           -5.3445     0.5591  -9.559 1.29e-10 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.046 on 30 degrees of freedom
## Multiple R-squared:  0.7528, Adjusted R-squared:  0.7446 
## F-statistic: 91.38 on 1 and 30 DF,  p-value: 1.294e-10

7.4 Interpretación de coeficientes

7.4.1 Intercepto (\(\beta_0\))

En el modelo:

\[ \widehat{mpg} = 37.285 - 5.344\cdot wt \]

El intercepto 37.285 representa el consumo esperado cuando wt = 0.

Aunque wt = 0 no es realista, el intercepto permite “anclar” la recta. Su interés es principalmente técnico.


7.4.2 Coeficiente de pendiente (\(\beta_1\))

El coeficiente \(-5.344\) indica que:

Por cada 1 unidad adicional de wt (mil libras), el rendimiento de combustible (mpg) disminuye en 5.344 unidades.

Ejemplo concreto:

  • Un auto que pesa 2.0 (2000 lbs) tiene
    \(\widehat{mpg} = 37.285 - 5.344(2) = 26.597\)

  • Uno de 3.0 (3000 lbs):
    \(\widehat{mpg} = 37.285 - 5.344(3) = 21.253\)

Diferencia: el auto más pesado rinde 5.344 mpg menos (valor del coeficiente).


7.4.3 Modelo múltiple: pensar en “mantener todo lo demás constante”

Si agregamos el hp (caballos de fuerza):

m2 <- lm(mpg ~ wt + hp, data = mtcars)
summary(m2)
## 
## Call:
## lm(formula = mpg ~ wt + hp, data = mtcars)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -3.941 -1.600 -0.182  1.050  5.854 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 37.22727    1.59879  23.285  < 2e-16 ***
## wt          -3.87783    0.63273  -6.129 1.12e-06 ***
## hp          -0.03177    0.00903  -3.519  0.00145 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.593 on 29 degrees of freedom
## Multiple R-squared:  0.8268, Adjusted R-squared:  0.8148 
## F-statistic: 69.21 on 2 and 29 DF,  p-value: 9.109e-12

Esto significa:

  • wt: por cada mil libras adicionales, el mpg baja 3.9 puntos manteniendo constante la potencia del motor.
  • hp: por cada caballo de fuerza extra, el mpg baja 0.03 puntos para un mismo peso.

Esto es clave:
los coeficientes miden relaciones ceteris paribus.


7.5 Predicción

Para predecir:

new_car <- data.frame(wt = 2.5, hp = 120)
predict(m2, new_car)

7.6 Conclusión

La regresión lineal es una herramienta poderosa y flexible. Su valor radica tanto en su simplicidad como en la capacidad de interpretar el efecto marginal de cada variable.


7.7 Anexo. Relacion entre estimacion optima y prediccion optima

Dado:

\[\begin{equation} \tag{7.2} Y_i = X_i^{'} \beta + u_i \end{equation}\]

con \(i=1,...,n\)

La predicción de \(Y\) se define como:

\[\begin{equation} \tag{7.3} \hat{Y_i} \equiv X_i^{'} \hat{\beta} \end{equation}\]

Donde \(\hat{Y_i}\) es el predictor (variable aleatoria) y \(\hat{\beta}\) es el estimador (parámetro). Por el TGM:

  • \(E(\hat{Y_i}) = X_i^{'} \beta\) (predictor insesgado)

  • \(V(\hat{Y_i}) = X_i^{'} V(\hat{\beta})X_i = \sigma^2X_i^{'}(X'X)^{-1}X_i\)

donde \(V(\hat{\beta}) = \sigma^2(X'X)^{-1}\)

Entonces, si el estimador \(\hat{\beta}\) es insegado y de varianza mínima, \(\hat{Y_i}\) es un predictor insegado y de varianza mínima, ambos en la clase de estimadores/predictores lineales e insesgados.

El resultado anterior surge del hecho que predecir requiere estimar (en este caso \(\beta\)). Retomamos el \(EMC\) en el caso de los estimadores:

\[\begin{equation} \tag{7.4} EMC(\hat{\beta}) \equiv E(\hat{\beta} - \beta)^2 \end{equation}\]

El \(EMC\) mide en promedio cuan lejos esta \(\hat{\beta}\) (estimador) de \(\beta\), el parámetro que se quiere estimar.

Recordar que por definición:

  • \(V(\hat{\beta}) \equiv E(\hat{\beta} - E(\hat{\beta}))^2\) (dispersión)

  • \(Sesgo(\hat{\beta}) \equiv E(\hat{\beta}) - \beta\) (centro)

A partir de (7.4) y las definiciones anteriores reescribimos el \(EMC\) en términos de la descomposición sesgo-varianza:

\[\begin{equation} \tag{7.5} EMC(\hat{\beta}) = Sesgo^2(\hat{\beta}) + V(\hat{\beta}) \end{equation}\]

Es decir, cuán mal estima \(\hat{\beta}\) depende de cuán descentrado está en relación a la verdad (sesgo) más cuán disperso es en relación a su propio centro (varianza).

Para ver la relación entre el error de estimación y el error de predicción se define el error de pronóstico como:

\[\begin{equation} \tag{7.6} Err(\hat{Y}) \equiv E(Y - \hat{Y})^2 \end{equation}\]

Como vimos antes, dado el modelo genérico13 \(Y = f(X) + u\) donde \(E(u) = 0\) y \(V(u) = \sigma^2\):

  • \(f(X)\) es la parte sistemática

  • \(u\) la parte no sistemática

Resultado importante en teoría de la predicción: si se quiere predecir una variable aleatoria \(Y\) con una constante \(m\) el mejor predictor es su esperanza,14 es decir, \(m = E(Y)\).15

Entonces, si \(E(Y) = f(X)\), \(u\) es no observable y \(f(X)\) es conocida, \(f(X)\) es el mejor predictor porque, como se dijo arriba, el mejor predictor de una variable aleatoria es su esperanza.

En la práctica \(f(X)\) es desconocida y, por lo tanto, se debe estimar \(\hat{f}(X)\).

\[\begin{equation} \tag{7.7} Err(\hat{Y}) = E(Y - \hat{f})^2 \end{equation}\]

\[\begin{equation} \tag{7.8} Err(Y - \hat{f}) = EMC(\hat{f}) + \sigma^2 \end{equation}\]

En términos de la ecuación (6.3) el error de pronóstico es la suma de un error reducible \((EMC)\) y otro irreducible \((\sigma^2)\). Además, notar que el error de predicción y el \(EMC\) difieren solo por una constante \(\sigma^2\).

Nuevamente, puede verse la relación entre predicción y estimación. Predecir correctamente \((Err(Y - \hat{f}))\) requiere estimar \((EMC(\hat{f}))\) correctamente (porque \(\sigma^2\) no se puede controlar). Es decir, tener bajo sesgo y baja varianza. Utilizando la descomposición:

\[\begin{equation} \tag{7.9} Err(Y-\hat{f}) = \underbrace{Sesgo^2(\hat{f}) + V(\hat{f})}_{\text{EMC}} + \sigma^2 \end{equation}\]

En la econometría tradicional si \(\hat{f}\) es insesgado minimizar el error de pronóstico es minimizar la varianza. Machine learning hace uso de que estrategias sesgadas pueden implicar una reducción drástica en la varianza, por lo tanto, puede ser que el mínimo \(EMC\) ocurra para predictores sesgados.

Bibliografia

Hastie, Trevor, Robert Tibshirani, y Jerome Friedman. 2008. The Elements of Statistical Learning. Data Mining, Inference, and Prediction. Springer. https://hastie.su.domains/Papers/ESLII.pdf.

  1. No necesariamente lineal.↩︎

  2. Cuando lo “mejor” se mide con el \(EMC\). Para más detalles véase (Hastie, Tibshirani, y Friedman 2008).↩︎

  3. En el Capítulo 10 veremos que este resultado es importante para la metodología de arboles de decisión.↩︎