Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No...

38
Complejidad y Eleccion de Modelos Walter Sosa-Escudero Universisad de San Andr´ es y CONICET

Transcript of Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No...

Page 1: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Complejidad y Eleccion de Modelos

Walter Sosa-Escudero

Universisad de San Andres y CONICET

Page 2: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Un problema

Predecir gastos Y en base a ingresos X.

Datos de Y y X.

Relevancia? gastos se relevan cada 10 anos, ingresos 3 veces por ano.

Desafio: predecir fuera de la muestra.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 3: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Estrategia: guardar un punto, estimar para los restantes y ver como predice el puntoque guardamos.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 4: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Modelo lineal y cuadratico

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 5: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 6: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Sobreajuste

1 A medida que el modelo se complica, pasa mas cerca de los datos.

2 En algun momento pasa por todos los datos.

3 Pero predice muy mal el dato que dejamos para evaluar

Sobreajuste: modelos demasiado complicados ajustan bien a los datos pero predicenmal fuera de la muestra.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 7: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Complejidad

y = b0 + b1x+ uy = b0 + b1x+ b2x

2 + uy = b0 + b1x+ b2x

2 + b3x3 + u

y = b0 + b1x+ b2x2 + b3x

3 + b4x4 + u

y = b0 + b1x+ b2x2 + b3x

3 + b4x4 + b5x

5 + u

Mas complejo, mas variables.

En algun momento el modelo ajusta perfecto pero predice horrible.

Regularizacion: nivel optimo de complejidad

Resultado: por n puntos, un polinomio de grado n − 1 ajusta pefectamente a los datos.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 8: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Esta clase

Prediccion dentro y fuera de la muestra.

Como evaluar la prediccion fuera de la muestra: cross validation

Como elegir modelos de complejidad optima: LASSO

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 9: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

La herencia: modelo lineal y minimos cuadrados

Predecir Y en base a X.

Modelo lineal con p predictores

Yi = β0 + β1X1i + · · ·+ βpXpi + ui

para i = 1, . . . , n datos.

Yi = β0 + β1X1i + · · ·+ βpXpi.

ei = Yi − Yi.

β = mınβ

n∑i=1

e2i = mınβSRC

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 10: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Modelo lineal, metodo de minimos cuadrados.

Dado el modelo, Yi es el mejor predictor dentro de la muestra (min SRC). SRC: mideperformance dentro de la muestra.

Problemas:

Y fuera de la muestra?

Elegir el modelo: elegir que variables usar (todas? algunas? cuales?)

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 11: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Sobreajuste

Agregar variables nunca empeora SRC. Por que?.

Predecir dentro de la muestra? El mejor modelo es el que mas variables incorpora.

Si p = n el modelo predice perfectamente dentro de la muestra.

Sobreajuste: en algun momento aumentar variables hace predecir muy mal fuerade la muestra.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 12: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Complejidad

Complejidad: mas variables.

Idea mas general que lo que uno sospecha.

Ej: polinomio. Curvas mas complejas requieren ‘mas variables’.

Complejidad optima: prediccion dentro de la muestra: usar todas. Fuera de la muestra:no necesariamente (sobreajuste).

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 13: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Problemas:

Complejidad? Cantidad de variables.

Performance predictiva fuera de la muestra? Cross validation. Ojo, SRC no. Porque?

Grado de complejidad optimo? Regularizacion

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 14: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Cross validation

Performance fuera de la muestra?

Partir en muestra de entrenamiento y muestra de evaluacion.

Desafio Netflix

Problema 1: como partir?

Problema 2: no usar todos los datos empeora la performance.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 15: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Cross validation (CV)

1 Partir los datos al azar en K partes.

2 Ajustar el modelo dejando afuera una de las particiones.

3 Computar el error de prediccion para los datos no utilizados.

4 Repetir para k = 1, . . . ,K.

Error de prediccion por CV:

CV (Y ) =1

N

n∑i=1

(Yi − Y−k(xi)

)2Y−k(xi) es la prediccion hecha cuando la observacion no fue usada para estimar.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 16: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Cada observacion es usada en dos roles: entrenamiento y test.

K = 1: no test data

K = N : ‘leave one out’. Ir dejando de lado una obseracion por vez. Estima elmodelo n veces con n− 1 datos.

K: estima el modelo K veces con n−K datos.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 17: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Eleccion de K:

K chico: maximiza datos para estimar, sensible a los valores particulares.

K grande: maximiza datos para evaluar, modelo estimado menos precisamente.

Regla: 5 o 10 (ver Kohavi (1995)

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 18: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Cross validation para eleccion de modelos:

Supongamos que α indiza la complejidad de un modelo. Ejemplo: α = grado depolinomio.

Cross validation para un modelo indizado por α:

CV (Y , α) =1

N

n∑i=1

(Yi − Y−k(xi, α)

)2Idea: computar CV (Y , α) para una grilla de valores de α y minimizar.

Ejemplo: error de CV para distintos grados de polinomio, elegir el que minimiza CV (f , α)

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 19: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Ejemplo: eleccion de grado de un polinomio

Vinos: Predecir calidad de un vino en base a su nivel de acidez. Polinomio en base a acidez.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 20: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Regularizacion

Idea: de todos los modelos posibles, elegir el que tiene menor error predictivo porcross validation.

Fuerza bruta: estimar todos los modelos posibles, computar el error de prediccionpor CV. Quedarse con el mejor.

Problema: computacionalmente inviable para p moderado (p = 20, 1.048.576modelos)

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 21: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Stepwise selection

Forward selection:

Empezar sin ningun predictor

Probar todos los modelos con 1 predictor. Elegir el que minimiza CV.

Agregar de a 1, sin quitar los ya incorporados. p(p+ 1)/2 modelos.

De los p modelos elegidos, elegir el que minimiza CV.

Backward selection: empieza con el modelo completo. Busqueda no exhaustiva. Losincoporados no ‘salen’. Forward tiene una ventaja en modelos de alta dimension (masadelante).

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 22: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

¿No vale empezar con el modelo general y eliminar variables no significativas?

Backward selection aproxima esa idea (no exactamente ya que el criterio es deajuste/prediccion.

‘Tachar’ variables/coeficientes es una forma extrema de ‘achicarlos’.

LASSO: una manera formal y algoritmica de realizar esa tarea.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 23: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

LASSO

Para λ ≥ 0 dado, consideremos la siguiente funcion objetivo (a minimizar):

Rl(β) =

n∑i=1

(yi − x′iβ)2 + λ

p∑s=2

|βs|

(el primer coeficiente corresponde al intercepto).

¿λ = 0?

¿λ =∞?∑ni=1(yi − x′iβ)2 penaliza falta de ajuste.

¿∑p

s=2 |βs| ?

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 24: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Rl(β) =

n∑i=1

(yi − x′iβ)2 + λ

p∑s=2

|βs|

LASSO magic: automaticamente elige que variables entran (βs 6= 0) y cuales no(βs = 0)

Por que? Coeficientes anulados como ‘soluciones de esquina’

Rl(β) es una funcion no diferenciable.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 25: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Por que ‘elige’?

Caso extremo (facil de generalizar): un solo predictor, un solo coeficiente.

Rl(β) =

n∑i=1

(yi − xiβ)2 + λ|β|

= A(β) + P (β)

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 26: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

A(β) =∑n

i=1(yi − xiβ)2, P (β) = λ|β|

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 27: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 28: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Eleccion de λ

λ chico: → MCO.

λ grande: → 0

Idea: estimar todos los modelos para una ‘grilla’ de valores de λ. Para cada unocomputar el error por CV. Elegir el de mejor.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 29: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Regularizar

Trade off sesgo-varianza: modelos mas complejos son menos sesgados pero masvolatiles.

Shrinkage: LASSO ‘sesga’ los coeficientes a cero.

Regularizar: controlar el comportamiento de parametros/variables con elementosde afuera del modelo (λ)

λ es un hiperparametro.

Aprendizaje: eleccion de un modelo optimo a traves de la eleccion de unhiperparametro.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 30: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Para que regularizar?

Capacidad predictiva optima. Evita sobreajuste.

Reduccion de dimensionalidad. Economiza trabajo de campo ex post.

Ejemplo: gasto.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 31: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Alternativas y extensiones

Ridge: Rr(β) =∑n

i=1(yi − x′iβ)2 + λ∑p

s=2 β2s

Elastic Net: Re(β) =∑n

i=1(yi − x′iβ)2 + λ1∑p

s=2 |βs|+ λ2∑p

s=2 β2s

LASSO logit: Rl(β) = L(β) + λ∑p

s=2 |βs|

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 32: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Ejemplo: Hitters

Fuente: James, Witten, Hastie y Tibshirani (2013)

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 33: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Ejemplo: Hitters

Puntos: OLS, rojo: LASSO, azul: ridge

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 34: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Ejemplo: Hitters

Puntos: OLS, rojo: LASSO, azul: ridge

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 35: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Tips

Siempre estandarizar

Referencia simple: James, Witten, Hastie y Tibshirani (2013).

Referencia avanzada: Hastie y Tibshirani (2015)

R: glmnet

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 36: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Resumen

Sobreajuste

Dentro de la muestra: modelos complejos

Fuera de la muestra: complejidad optima.

Regularizar: elegir complejidad optima

Cross validation: forma de medir performance predictiva fuera de la muestra.

LASSO: metodo para regularizar el modelo lineal.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 37: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Palabras/conceptos clave:

Complejidad, eleccion de modelos, sobreajuste, muestra de entremaniento y evaluacion,prediccion fuera y dentro de la muestra, cross validation, regularizacion, LASSO,hiperparametro, trade off sesgo-varianza, shrinkage, aprendizaje, seleccion automatica,backward/forward, dimensionalidad, red elastica, ridge.

Walter Sosa-Escudero Complejidad y Eleccion de Modelos

Page 38: Walter Sosa-Escudero · 2018. 11. 5. · Walter Sosa-Escudero Complejidad y Eleccion de Modelos >No vale empezar con el modelo general y eliminar variables no signi cativas? Backward

Walter Sosa-Escudero Complejidad y Eleccion de Modelos