Modelos de regresión Aprendizaje automático Alejandra Martínez F.C.E. y N. Universidad de Buenos Aires y CONICET
Introducción Un modelo de regresión es un modelo que permite describir cómo influye una variable X sobre otra variable Y. X : variable explicativa, independiente o covariable. Y : variable dependiente o respuesta. El objetivo es obtener estimaciones razonables de Y para distintos valores de X a partir de una muestra de n pares: (x 1, y 1 ),..., (x n, y n ).
Tipos de relación Determinística: Conocido el valor de X, el valor de Y queda perfectamente establecido. Es decir, Y = f (X ) Ejemplo: La relación existente entre la temperatura en grados centígrados (X ) y grados Fahrenheit (Y ) es: Y = 32 + 1.8X
No determinística: Conocido el valor de X, el valor de Y no queda perfectamente establecido. Son del tipo: Y = f (X ) + ε donde ε es un error desconocido (variable aleatoria). Ejemplo: En una planta a vapor, en 25 meses, se observó el promedio mensual de temperatura atmosférica (en Farenheit) (X ) y la cantidad de vapor consumido (en libras) (Y ).
Regresión lineal simple Consiste en describir la relación entre las dos variables mediante una recta. Determinística: Con dos puntos me queda determinada la recta... Este caso no es de nuestro interés.
No determinística: Volviendo el ejemplo de la planta a vapor: la función que proponemos para modelar la relación es f (x) = a + bx pero, en este caso, a y b son constantes desconocidas (también llamados parámetros). Problema: Ajustar la recta que represente al conjunto de datos de la mejor manera
Para a (ordenada al origen o intercept) y b (pendiente o slope) fijos, se llama: ŷ i = a + bx i : valores ajustados o predichos, e i = y i ŷ i : residuos. Objetivo: Hallar los mejores coeficientes a y b que representan la relación lineal entre las variables. A esos valores los denotaremos con â y b, respectivamente.
Un vez hallada la recta, es decir, hallados â y ˆb, tenemos que los valores ajustados en cada punto son: ŷ i = â + bx i
Un vez hallada la recta, es decir, hallados â y ˆb, tenemos que los valores ajustados en cada punto son: ŷ i = â + bx i
Método de mínimos cuadrados Problema: (â, b) = arg min (a,b) = arg min (a,b) = arg min (a,b) n i=1 e 2 i n (y i ŷ i ) 2 i=1 n (y i (a + bx i )) 2 i=1
Gráficamente, lo que se resuelve es la minimización de las distancias entre los valores observados y los valores predichos
Cómo resolvemos el problema de minimización? arg min (a,b) n i=1 (y i (a + bx i )) 2 = arg min F (a, b) (a,b) Hallando los puntos críticos: usando derivadas parciales. Buscamos (a, b) tales que n 2 (y i (a + bx i )) ( 1) = 0 Luego i=1 n 2 (y i (a + bx i )) ( x i ) = 0 i=1 b = n i=1 (x i x)(y i ȳ) n i=1 (x i x) 2 donde x = (1/n) n i=1 x i y ȳ = (1/n) n i=1 y i. â = ȳ b x Como la función es estrictamente convexa, los puntos hallados son mínimos absolutos.
Volviendo al ejemplo de la planta a vapor: ŷ = f (x) = 13.62 0.08x es decir, â = 13.62 y b = 0.08. Si x = 52 entonces la predicción obtenida para y es f (52) = 13.62 0.08 52 = 9.47.
Volviendo al ejemplo de la planta a vapor: ŷ = f (x) = 13.62 0.08x es decir, â = 13.62 y b = 0.08. Si x = 52 entonces la predicción obtenida para y es f (52) = 13.62 0.08 52 = 9.47.
En R, las estimaciones de los parámetros (entre otra información) se puede obtener con la función lm.
Dado un ajuste, Cómo podemos ver si el ajuste es bueno? Medida de asociación lineal: coeficiente de correlación lineal r de Pearson n r 2 i=1 = (y i ȳ) 2 n i=1 (y i ŷ i ) 2 n i=1 (y i ȳ) 2 Se cumple que Significado: 0 r 2 1 r 2 = 1: significa que los puntos están exactamente sobre una recta. r 2 cerca de 1: los puntos están cerca de una recta. r 2 cerca de 0: significa que la recta de mínimos cuadrados es prácticamente horizontal.
En el ejemplo de la planta a vapor teníamos que el r 2 = 0.7144, que no está tan mal. Observación: ȳ = 9.424. Inferencia estadística Para poder hacer tests e intervalos de confianza es necesario hacer (y validar) ciertos supuestos sobre los errores ε como independencia, homoscedasticidad y normalidad. Significación de los coeficientes: En el ejemplo nos había quedado â = 13.62 y b = 0.08, es decir, la recta ajustada 13.62 0.08x Una posible duda podría ser: Son los coeficientes â y b significativos? Convengamos que el 0.08 parece chiquito... En Estadística, lo grande o chico depende de la variabilidad que tengan los datos. Se pueden hacer tests para testear la significación de los coeficientes.
El R arroja los p-valores de los tests de la forma H 0 : a = 0 vs H 1 : a 0 De manera similar lo hace con todos los coeficientes involucrados en el problema de estimación. (En nuestro caso serían sólo a y b) Luego, como los p-valores son muy chicos, podemos suponer a 0 y b 0. Como además el modelo lineal estaba bastante bien (por el r 2 ), entonces la recta dada por f (x) = 13.62 0.08x es buena para modelar la relación entre X e Y. Si por el contrario, hubiésemos tenido un p-valor alto para la ordenada al origen (por ejemplo, de más de 0.20), entonces esto hubiese sugerido probar con el modelo lineal f (x) = bx.
Transformación de variables Ejemplo: Datos de las Naciones Unidas de 1998. El producto bruto interno o GDP (X ) y la tasa de mortalidad infantil cada 1000 nacimientos (Y ), sobre 193 países. Y = a + bx + ε?
Transformación de variables Primero probamos transformando la covariable. Usamos el ln. Y = a + b log(x ) + ε?
Transformación de variables Ahora transformamos la variable respuesta usando el ln. Como ahora el ajuste lineal parece razonable, ajustamos una recta. log(y ) = a + b log(x ) + ε?
Transformación de variables Como ahora el ajuste lineal parece razonable, ajustamos una recta usando mínimos cuadrados. Luego, log(y ) = â + b log(x )
Transformación de variables Y por lo tanto el modelo estimado queda Ŷ = f (X ) = eâ+ b log(x )
Regresión lineal múltiple Y = a + b 1 X 1 + b 2 + + b p X p + ε Ejemplo: En un estudio se tomaron 14 muestras de cementos. Las variables explicativas son los pesos (medidos en porcentajes) de 5 componentes del cemento y la variable que se quiere modelar es el calor generado en el fraguado (Y ).
Si hacemos un ajuste lineal con todas las variables Si bien el coeficiente de correlación r 2 es muy grande y por lo tanto la información dada por las covariables para el ajuste es mejor que no hacer uso de dicha información, ninguna variable es estadísticamente significativa.
Mediante técnicas de selección de variables, se puede ver que el mejor modelo es Y = a + b 2 X 2 + b 3 X 3 + ε
Obviamente, los modelos lineales no siempre resuelven todos los problemas de relación entre dos variables y, aún en el caso en los que sí pueden modelar la relación, no siempre los estimadores obtenidos mediante mínimos cuadrados son buenos. Ejemplo: Recta estimada mediante el método de mínimos cuadrados:
Regresión lineal robusta Ejemplo: En el clúster de estrellas CYG OB1 hay 47 estrellas. Se quiere modelar el logaritmo de la intensidad de la luz (Y ) en función del logaritmo de la temperatura en la superficie (X ).
Regresión lineal robusta Si realizamos un ajuste por mínimos cuadrados
El estimador de mínimos cuadrados consiste en resolver el problema (â, b) n = arg min ei 2 donde e i = y i (a + bx i ) (a,b) i=1 Una alternativa más resistente consiste en darle menos peso a residuos grandes. Least Median of Squares (LMS) (â, b) = arg min (a,b) Med { e 2 i } M estimadores de regresión (â, b) = arg min (a,b) n ( ei ) ρ σ i=1 ρ se llama ρ función. σ es un estimador del desvío de los datos. Si ρ(x) = x 2 recuperamos el estimador de mínimos cuadrados.
En general, para que sea poco sensible a datos atípicos, se le pide a ρ que tenga derivada acotada. Por ejemplo, La ρ función de Huber: { x 2 si x c ρ c (x) = 2c x c 2 si x > c Se suele tomar c = 1.345. La ρ función de Tukey o función bicuadrada: ρ c(x) = { Se suele tomar c = 4.685. ( cte x 1 ( ) ) x 2 2 c si x c 0 si x > c ρ(x) = x = Estimador L 1 o estimador de mínimas desviaciones absolutas (estimador LAD).
ρ funciones ρ(x) = x 2 ρ función de Huber ρ(x) = x ρ función de Tukey
Computacionalmente Least Median of Squares (LMS) = Queda como tarea. M estimadores de regresión Supongamos que ρ = Ψ. Como queremos resolver arg min (a,b) n ( ) yi (a + bx i ) ρ σ i=1 = arg min G(a, b) (a,b) Utilizaremos nuevamente las derivadas parciales. ( ) n i=1 Ψ yi (a+bx i ) ( ) 1 σ σ = 0 ( ) n i=1 Ψ yi (a+bx i ) ( ) x i σ σ = 0 O bien ( ) n i=1 Ψ yi (a+bx i ) σ = 0 ( ) n i=1 Ψ yi (a+bx i ) σ x i = 0
( ) ( ) 1 ( ) n i=1 Ψ yi (a+bx i ) yi (a+bx i ) yi (a+bx i ) σ σ σ = 0 ( ) ( ) 1 ( ) n i=1 Ψ yi (a+bx i ) yi (a+bx i ) yi (a+bx i ) σ σ σ x i = 0 Entonces, si definimos W (t) = Ψ(t)/t si t 0 y Ψ (0) si t = 0 y w i = W (e i / σ) entonces { n i=1 w i(y i (a + bx i )) = n i=1 w ie i = 0 n i=1 w i(y i (a + bx i )x i = n i=1 w ie i x i = 0 Por último, si llamamos x i = (1, x i ) t y β = (a, b) t entonces el problema anterior se reduce a buscar β tal que n w i x i (y i x t i β) = 0 i=1 Observemos que se resuelve iterativamente dado que w i = w i,β. Este procedimiento se llama Mínimos cuadrados pesados iterados (Iteratively reweighted least squares o IRWLS).
Utilicemos ahora el estimador LMS para ajustar una recta al ejemplo.
Usemos ahora la información obtenida por el estimador robusto para detectar los datos atípicos.
Las observaciones detectadas por el boxplot como datos atípicos son:
Las observaciones detectadas por el boxplot como datos atípicos son:
Si ahora sacamos las 5 observaciones atípicas detectadas y volvemos a usar mínimos cuadrados
Si hubiésemos querido usar el boxplot de los residuos obtenidos por mínimos cuadrados: No hubiésemos detectado ningún dato atípico. Raro, no?
Regresión logística En algunas ocasiones, la variable respuesta no es una variable continua sino que se sabe que tiene una distribución discreta como puede ser una Poisson o una Binomial. Supongamos que dado X = x, Y tiene una distribución Bernoulli de parámetro p = p(x) entonces Y = a + bx + ε ya no pareciera tener mucho sentido... Lo que se modela de manera lineal es la esperanza de la Bernoulli que es p. La función de enlace o función link es ( ) p g(p) = ln : (0, 1) R 1 p entonces el modelo es g(p) = a + bx
Ejemplo: Un grupo de 20 alumnos estuvieron entre 0 y 6 horas estudiando para un examen. Nos preguntamos cómo el número de horas estudiando para un examen afecta la probabilidad del alumno de pasar el examen?
Estimando mediante algún procedimiento los parámetros a y b resulta que
Como ( ) p(x) g(p(x)) = ln = â + 1 p(x) bx con â = 0.4077 y b = 1.5046 entonces eâ+ bx p(x) = eâ+ bx + 1
Como ( ) p(x) g(p(x)) = ln = â + 1 p(x) bx con â = 0.4077 y b = 1.5046 entonces eâ+ bx p(x) = eâ+ bx + 1
De esta manera, según este modelo, si un alumno estudia x = 2.3 horas, entonces, como â = 4.0777 y b = 1.5046 entonces p = eâ+ b 2.3 eâ+ b 2.3 + 1 = 0.3504 Por lo tanto, si tuviésemos que predecir el resultado del examen (es decir, el resultado de Y ) diríamos que desaprueba (o sea Y = 0).
Estimación de los parámetros La idea es hallar los estimadores de máxima verosimilitud de a y b. Es decir, hallar (â, b) = arg max l(a, b) donde l es el logaritmo de la verosimilitud (densidad o función de probabilidad conjunta). En nuestro caso, l(a, b) = n [ yi ln ( g 1 (a + bx i ) ) + (1 y i ) ln ( 1 g 1 (a + bx i ) )] i=1 ( ) p donde g(p) = ln. 1 p
Nuevamente, si todas las funciones son suficientemente buenas (en general lo son), (â, b) se hallan como los puntos críticos del problema: l a = 0 Que es un problema no lineal. Métodos l b = 0 1. Newton Raphson = Para n grande seguro converge pero para muestras pequeñas no necesariamente. 2. Algoritmo de Fisher Scoring = Pide segundas derivadas. En cada paso iterativo se realiza un procedimiento de mínimos cuadrados pesados usando pseudo-observaciones.
Bibliografía Apunte de regresión lineal. Mgs. María Eugenia Szretter Noste. Robust Statistics: Theory and Methods. R. Maronna, R. Martin y V. Yohai. (2006). Wiley Series in Probability and Statistics. Generalized Linear Models. Mc. Cullagh y Nelder. (1998). Londres: Chapman and Hall.