Está en la página 1de 80

Modelos Lineales y Extensiones

Aprendizaje Supervisado

Gabriel Martos Venturini


gmartos@utdt.edu

Universidad Torcuato Di Tella

MiM + Analytics

G. Martos Modelos Lineales y Extensiones UTDT 1 / 80


Agenda

Regresión

Clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 2 / 80


Bibliografı́a recomendada

ISL: 3–4 y 6–7.


ESL: 3, 4 y 5.

G. Martos Modelos Lineales y Extensiones UTDT 3 / 80


Agenda

Regresión
Modelos lineales (refresh)
Modelos lineales multitarget
Selección y Regularización de modelos lineales
De los modelo lineales a los modelos aditivos

Clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 4 / 80


Agenda

Regresión
Modelos lineales (refresh)
Modelos lineales multitarget
Selección y Regularización de modelos lineales
De los modelo lineales a los modelos aditivos

Clasificación
Regresión logı́stica
Otras técnicas lineales para clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 5 / 80


Motivación: Ventas y gasto en publicidad por canal

G. Martos Modelos Lineales y Extensiones UTDT 6 / 80


El modelo lineal

I Interpretabilidad: Sus parámetros contienen mucha


información (que indica la pendiente del modelo?)

I Fácil de estimar.

I Es un modelo lineal en los parámetros (puedo estimar


relaciones no lineales con un modelo lineal!). Ejemplo:

Sales = β0 + β1 Advertising + β2 Advertising2 + ε

I PERO necesita ciertas “adaptaciones” para ser competitivo


en el contexto del ML.

G. Martos Modelos Lineales y Extensiones UTDT 7 / 80


Refresh (caso univariante)
I Y continua.

I El modelo plantea que:

Y = β0 + β1 X +ε.
| {z }
f (X ;β0 ,β1 )

I Para hacer predicciones con el modelo necesito aprender


(estimar) (β0 , β1 ).

I Dada una muestra de TRAIN {yi , xi }ni=1 minimizo el riesgo


empı́rico:
n
X 2
min RSS(b0 , b1 ) = min yi − (b0 + b1 xi ) .
(b0 ,b1 ) (b0 ,b1 )
i=1

G. Martos Modelos Lineales y Extensiones UTDT 8 / 80


I Si bien es cierto que para este modelo existe una solución
analı́tica para el problema minimización del riesgo empı́rico:
Pn
(y − ȳ )(xi − x̄) covx,y
β̂1 = i=1 Pn i 2
= y β̂0 = ȳ − β̂1 x̄.
(x
i=1 i − x̄) sx2
I n  0: Aproximar solución con métodos numéricos.

G. Martos Modelos Lineales y Extensiones UTDT 9 / 80


Regresión lineal múltiple
I El modelo de regresión con p regresores:

Y = β0 + β1 X1 + β2 X2 + · · · + βp Xp +ε,
| {z }
f (x;β0 ,...,βp )

x = (X1 , . . . , Xp ) y β ∈ Rp+1 vector parámetros.

I Dada una muestra de entrenamiento {(x1 , y1 ), · · · , (xn , yn )},


aprender f (x; β0 , . . . , βp ) minimizando error empı́rico:

RSS(b) = (y − Xb)T (y − Xb)


donde
     
b0 y1 1 x1,1 . . . xp,1
 .. 
b =  . , y =  ...  , y X =  ... .. .. .. 
  
. . . 
bp yn 1 x1,n . . . xp,n

G. Martos Modelos Lineales y Extensiones UTDT 10 / 80


Ejemplo: Sales = Adt TV + Adv Radio

I fb será una estimación del hiper-plano de regresión (la media


condicional de Y ): E(Y |X1 , . . . , Xp ) = β0 + β1 X1 + · · · + βp Xp .

G. Martos Modelos Lineales y Extensiones UTDT 11 / 80


b = (XT X)−1 XT y, y para xnew :
I Se puede demostrar que: β
−1 T
ybnew = fb(xnew ) ≡ xT T T
new β = xnew (X X) X y.
b

I Validación modelo:
I In sample: Ra2 = 1 − (1 − R 2 )(n − 1)/(n − p − 1).

I Out of sample: Sobre una muestra de test de tamaño M

M
X
RSE = (yj − ybj )2 , o el Ra2 fuera de la muestra.
j=1

I Cualquier otra métrica (monótona) de los residuos fuera de la


muestra de entrenamiento también es válida. Por ejemplo:
M
X
ASE = |yj − ybj |
j=1

G. Martos Modelos Lineales y Extensiones UTDT 12 / 80


Incertidumbre en las predicciones

I Si además:
I Asumimos que los errores son independientes y N(0, σ 2 ):

Y |x ∼ N(xT β, σ 2 )

I Solo asumiendo linealidad y con n  0:

Y |x ∼A N(xT β, σ 2 ).

I Intervalo de confianza de nivel 1 − α para las predicciones:


s
1 (xnew − x̄)
Caso univariante: ŷnew ± tα/2,n−p−1 σ̂n 1 + +
n (n − 1)sx2

I Intervalos sobre los parámetros (poco relevante).

G. Martos Modelos Lineales y Extensiones UTDT 13 / 80


Agenda

Regresión
Modelos lineales (refresh)
Modelos lineales multitarget
Selección y Regularización de modelos lineales
De los modelo lineales a los modelos aditivos

Clasificación
Regresión logı́stica
Otras técnicas lineales para clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 14 / 80


I Nos interesa modelar en simultaneo varios targets: Y1 , . . . , YK

I Ejemplo: Modelar el balance en cta-cte y el ingreso mensual


de los clientes de un banco (son variables independientes?).
I Y1,i : Balance en cuenta corriente cliente i en el próximo mes.

I Y2,i : Ingreso del cliente i durante el próximo mes.

I Para cada cliente disponemos de información sobre su salario,


gastos en otros rubros, variables socio-económicas, etc.

I Modelización naive: (estimación por separado)

Y1i = β10 + β11 X1i + · · · + β1p Xpi + ε1i para i = 1, . . . , n.


Y2i = β20 + β21 X1i + · · · + β2p Xpi + ε2i para i = 1, . . . , n.

I En gral: Para cada individuo de la muestra de entrenamiento


observamos un conjunto de features: x1,i , . . . , xp,i , para
i = 1, . . . , n, y al mismo tiempo las respuestas y1,i , . . . , yK ,i .
G. Martos Modelos Lineales y Extensiones UTDT 15 / 80
I Para K y p arbitrarios, dado los datos de entrenamiento, el
modelo de regresión de targets múltiples se escribe como:

Y = XB + E,

I Y y E son matrices de n × K , X es una matriz de n × (p + 1).


La matriz de parámetros B tiene (p + 1) filas y K columnas.

I Para aprender los parámetros minimizamos el riesgo empı́rico:


K X
X n
RSS = (yk,i − ybk,i (bk ))2 (notación simplificada),
k=1 i=1
= tr[(Y − XB)T (Y − XB)].

I Existe una solución cerrada para el modelo:


b = (XT X)−1 XT Y.
B

I Es la misma que surge de estimar K modelos por separado.


G. Martos Modelos Lineales y Extensiones UTDT 16 / 80
... so what?
I No tenemos en cuenta la posible correlación que existe entre
las variables de respuesta.
I Si un cliente tiene un ingreso superior a la media, con
probabilidad alta tendrá un balance superior a la media.

I Entonces: Cov(Y1 , Y2 ) > 0 y Corr(Y1 , Y2 ) > 0.

I Fitear modelos independientes, produce sesgos en las


estimaciones de los parámetros de ambos modelos.

I Estos sesgos producen predicciones con mayores márgenes de


error (en comparación a un modelo que no tenga sesgo).

I Mensaje: En los problemas de predicción multitarget, para


mejorar la performance predictiva, tenemos que modelar
también la correlación entre los outputs {Y1 , . . . , YK }.
G. Martos Modelos Lineales y Extensiones UTDT 17 / 80
Método Curds and Whey
I No implementado en paquetes de R ni Python.
I Predicting Multivariate Responses in Multiple Linear
Regression. L. Breiman and J. Friedman.
1. Estandarizamos todas las variables (media cero y varianza 1).
2. Estimamos cada modelo de regresión por separado: para cada
Yk tenemos estimados (βbk0 , . . . , βbkp ) para k = 1, . . . , K .
3. Con dichos coeficientes computamos predicciones
y1i , . . . , ybKi }ni=1 (agrupamos todas en la matriz Y)
{b b

4. Reestimamos (correjimos) las predicciones


K
X
yeki = y k + yqi − y q )2 , para i = 1, . . . , n, y k = 1, . . . , K .
akq (b
q=1
| {z }
combinar modelos

5. A es la matriz de K × K con coeficientes akq ; luego:


Y
e = YA.
b
G. Martos Modelos Lineales y Extensiones UTDT 18 / 80
Recapitulación hasta aquı́
I Modelo lineal = simple y útil.

I Modelo fácil de escalar (Big Data).

I Falta de robustez (trata los datos antes de modelar!).

I Múltiples targets: Correlación entre las respuestas.


I Curds and Whey cuando p > K .

I Mucho más sensibles a atı́picos en los datos.

I Ver caso de estudio.

I Alternativas: Multiple Response Variables Regression Model.

G. Martos Modelos Lineales y Extensiones UTDT 19 / 80


Implementación en R
I ls() y lsfit() : Asume respuestas independientes.

ls(y~x, data)
#data en formato "dataframe"
lsfit(x, y, intercept = TRUE)
#"x" e "y" en formato "matrix".

I Curds and Whey (ver código R).

I Regularización: glmnet(...family=“mgaussian”).

I mcglm: Multiple Response Variables Regression Model. Este


paquete implementa una versión similar (más general) del
método Curds and Whey. Los detalles de este método quedan
fuera del alcance de este curso.

G. Martos Modelos Lineales y Extensiones UTDT 20 / 80


Caso estudio: Regresión lineal en R

Objetivo: Modelizar el balance en CC y el Income de los clientes.


G. Martos Modelos Lineales y Extensiones UTDT 21 / 80
Agenda

Regresión
Modelos lineales (refresh)
Modelos lineales multitarget
Selección y Regularización de modelos lineales
Métodos automáticos de selección
Shrinkage methods
De los modelo lineales a los modelos aditivos

Clasificación
Regresión logı́stica
Otras técnicas lineales para clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 22 / 80


Motivación: ↑ #Parám ⇒↑ V(fb) ⇒↑ Error

Y = 1 + 2x − sin(6x) +N(0, 2)
| {z }
f (x)

Figure: Generamos 100 datos de entrenamiento y fiteamos.


P5 i
I Y = β0 + i=1 βi X +ε Y = β0 + β1 X + ε
G. Martos Modelos Lineales y Extensiones UTDT 23 / 80
¿Por qué selección de modelos?
I p/n es relativamente pequeño entonces el modelo lineal tiene
poco sesgo y poca variabilidad (ok).

I ↑ p/n ⇒↑ Var(fb) ⇒↑ Error (controlar error).

I Cuando p > n imposible estimar el modelo lineal.

I Selección de modelos para mejorar capacidad predictiva.

I Interpretabilidad: Eliminar variables poco significativas.

Métodos automáticos de selección de modelos lineales:

1. Exhaustivo o Bruto (inviable cuando p > 30).

2. Stepwise: Forward y Backward.


G. Martos Modelos Lineales y Extensiones UTDT 24 / 80
Agenda

Regresión
Modelos lineales (refresh)
Modelos lineales multitarget
Selección y Regularización de modelos lineales
Métodos automáticos de selección
Shrinkage methods
De los modelo lineales a los modelos aditivos

Clasificación
Regresión logı́stica
Otras técnicas lineales para clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 25 / 80


Método Exhaustivo
I Mk mejor (in–sample) modelo con k covariables:

M0 = {f (X1 , . . . , Xp ) = β0 }.

Algorithm 1 pseudocodigo para hacer selección exhaustiva


1: Sea M0 el modelo nulo estimado (sin covariables).
2: for (i in 1 : p) do
Ajustamos los pi modelos con i–covariables.

3:
4: Elegimos de entre estos el que tiene el mayor R 2 o el menor
RSS (in–sample) y lo llamamos Mi .
5: end for
6: Para la secuencia {M0 , M1 , . . . , Mp } utilizamos VC para elegir
mejor modelo (Ra2 , CM , AIC, BIC) con datos de test.
7: Retenemos el modelo con mejor performance.
Pp p! p 20 ≈ 1M).
I Costo computacional: i=0 (p−i)!i! = 2 (ej: 2

I Existen algoritmos eficientes para p ≤ 30.


G. Martos Modelos Lineales y Extensiones UTDT 26 / 80
Métricas alternativas al Ra2 y RSS: CM , AIC y BIC
Para un modelo con d-covariables (1 ≤ d ≤ p):
I CM : Coeficiente de Mallows
1
CM = (RSSd + 2 d × σ̂ε2 ).
n | {z }
Pen.×Lik.

I Es un estimador insesgado del ECM fuera de la muestra.

I σ̂ε2 estimado con el modelo saturado (p-covariables).


I AIC: Akaike Information Criterion
1
AIC = (RSSd + 2d σ̂ε2 ).
nσ̂ε2
I BIC: Bayesian Information Criterion
1
BIC = (RSSd + log(n)d σ̂ε2 ).
nσ̂ε2

G. Martos Modelos Lineales y Extensiones UTDT 27 / 80


Forward–Stepwise
Algorithm 2 pseudocodigo para hacer selección Forward–Stepwise
1: Sea M0 el modelo nulo estimado (sin covariables).
2: for (i in 0 : p − 1) do
3: Consideramos los p − i modelos que contienen un predictor
adicional con respecto al modelo estimado en Mi .
4: De estos, elegimos el que tiene el mayor R 2 o el menor RSS
(in–sample) y lo llamamos Mi+1 .
5: end for
6: Para la secuencia {M0 , M1 , . . . , Mp } utilizamos VC para elegir
mejor modelo (Ra2 , CM , AIC, BIC) con datos de test.
7: Retenemos el modelo con mejor performance.

I ↓ costo computacional: 1 + p(p + 1)/2. Si por ejemplo


p = 20 ⇒ fiteamos 211 modelos (vs. 1M exhaustivo).
I Si p > n, podemos emplear este método para computar el
mejor modelo entre {M0 , M1 , . . . , Mn−1 }.
G. Martos Modelos Lineales y Extensiones UTDT 28 / 80
Backward–Stepwise
Algorithm 3 pseudocodigo para hacer selección Backward–Stepwise
1: Sea Mp el modelo saturado estimado (todas las covariables).
2: for (i in p : 1) do
3: Consideramos los i modelos de i − 1 covariables que podemos
construir con las covariables incluidas en el modelo Mi .
4: De estos, elegimos de entre estos el que tiene el mayor R 2 o
el menor RSS (in–sample) y lo llamamos Mi−1 .
5: end for
6: Para la secuencia {M0 , M1 , . . . , Mp } utilizamos VC para elegir
el mejor modelo (Ra2 , CM , AIC, BIC) con los datos de test.
7: Retenemos el modelo con mejor performance.

I Método exhaustivo cuando p ≤ 30.

I Utilizamos Backward y Forward cuando p > 30.

I Existen enfoques hı́bridos que combinan Backward y Forward.


G. Martos Modelos Lineales y Extensiones UTDT 29 / 80
Métodos exploratorios en R
install.packages(’leaps’)
library(leaps)

regsubsets(formula, data, nbest=1, nvmax=8,


method=c("exhaustive", "backward", "forward")....)

nbest: number of subsets of each size to record (RSS).


nvmax: maximum size of subsets to examine.

Output:
rsq: The r-squared for each model.
rss: Residual sum of squares for each model.
adjr2: Adjusted r-squared.
cp: Mallow C (AIC).
bic: Bayes information criterion.

G. Martos Modelos Lineales y Extensiones UTDT 30 / 80


Caso de estudio en R

Objetivo: Modelizar el balance en CC de una cartera de clientes.


G. Martos Modelos Lineales y Extensiones UTDT 31 / 80
Agenda

Regresión
Modelos lineales (refresh)
Modelos lineales multitarget
Selección y Regularización de modelos lineales
Métodos automáticos de selección
Shrinkage methods
De los modelo lineales a los modelos aditivos

Clasificación
Regresión logı́stica
Otras técnicas lineales para clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 32 / 80


Conceptos generales
I En contextos de alta dimensión (p  0)
I Redundancia en la información (correlaciones elevadas).

I Mucha variabilidad (incertidumbre) en las estimaciones.

I En particular cuando p > n: ¿Cómo estimamos el modelo?.

I Para intentar descartar variables redundantes introducimos


una restricción de presupuesto sobre los coeficientes.
I Logramos mejorar la capacidad predictiva del modelo en
contextos de alta dimensión (p  0).

I Reformulamos el problema de optimización convenientemente.

I Será necesario estimar un hiper–parámetro adicional (λ) que


controla el trade–off entre sesgo y variabilidad.
G. Martos Modelos Lineales y Extensiones UTDT 33 / 80
Ridge
I Partimos del modelo saturado: Y = β0 + β1 X1 + · · · + βp Xp + ε.
I Introducimos restricción sobre pendientes: pi=1 βi2 ≤ τ 2 .
P

I Dada una muestra de train {(x1 , y1 ), . . . , (xn , yn )}: (p=2)

Figure: minb1 ,b2 RSS(b1 , b2 ) s.a. (b12 + b22 ) ≤ τ 2 .

G. Martos Modelos Lineales y Extensiones UTDT 34 / 80


Para una constante τ ≥ 0 no negativa, definimos:
n 
X 2
(β̂1 , . . . , β̂p )ridge
τ = argmin yi − (b1 X1,i + · · · + bp Xp,i )
b1 ,...,bp i=1
p
X
subject to bj2 ≤ τ 2
j=1

I Trabajamos con todas las variables estandarizadas.

I De manera compacta definimos:

b ridge = argmin
β RSS(b1 , . . . , bp ) +λ ||b||22
λ
b1 ,...,bp | {z } | {z }
Bias Variance

donde b = (b1 , . . . , bp ) y || • ||2 la norma en L2 .

I ||b||2 mide la complejidad del modelo.

I λ distribuye peso entre términos.


G. Martos Modelos Lineales y Extensiones UTDT 35 / 80
Ridge (bck–up slide)
La función objetivo del problema de optimización

(y − Xb)T (y − Xb) + λbT b,

La solución explicita del estimador ridge se puede escribir como:

b ridge = (XT X + λIp )−1 XT y


β λ

b ridge = β
I En el caso de diseños ortonormales: β b MCO /(1 + λ).
λ

b ridge → β
I A medida que λ → 0, β b MCO .
λ

I Cuando λ → ∞, la solución rigde restringe todos los


parámetros estimados a cero (salvo la ordenada al origen).

I ¿Cómo se estima/elige λ?: Utilizando validación–cruzada.

G. Martos Modelos Lineales y Extensiones UTDT 36 / 80


Ridge: Credit Data (ver código en R)
Covariables: Income, Limit, Rating, Cards, Age, Educ

Figure: Estimaciones de los parámetros del modelo RIDGE en función del


parámetro log(λ) a la izquierda. Relación entre coeficientes estimados y
norma (se corresponde con valores decrecientes de λ) a la derecha.

G. Martos Modelos Lineales y Extensiones UTDT 37 / 80


Comentarios sobre el path de soluciones del modelo Ridge

Figure: Zoom in sobre una malla de valores más amplias para λ.


Coeficientes estandarizados vs desestandarizados.
I En la secuencia de soluciones, las estimaciones de algunos de
los parámetros del modelo puede cambiar de signo.

G. Martos Modelos Lineales y Extensiones UTDT 38 / 80


LASSO: Least Absolute Shrinkage and Selection Operator

I Para τ ≥ 0, LASSO resuelve:


n 
X 2
(β̂1 , . . . , β̂p )lasso
τ = argmin yi − (b1 X1,i + · · · + bp Xp,i )
b1 ,...,bp i=1
p
X
subject to |bj | ≤ τ
j=1

I Variables estandarizadas.
De manera equivalente y compacta:
lasso
β̂ λ = argmin RSS(b1 , . . . , bp ) + λ||b||1
b1 ,...,bp

donde b = (b1 , . . . , bp ) y || • ||1 la norma en L1 . xº

G. Martos Modelos Lineales y Extensiones UTDT 39 / 80


Geometrı́a de los problemas de optimización

Figure: LASSO (|β1 | + |β2 | ≤ τ ) vs Ridge (β12 + β22 ≤ τ 2 ). Cuando


p  0, la soluciones de esquina con LASSO son más frecuentes.

G. Martos Modelos Lineales y Extensiones UTDT 40 / 80


LASSO (bck–up slide)
I Problema de optimización no tiene solución cerrada.

I Relación con MCO en diseños ortonormales:


lasso
βbλ,j = sign(βbjmco )max(|βbjmco | − λ, 0) para j = 1, . . . , p.

I Cuando λ → 0, la solución LASSO se aproxima a MCO.

I LASSO hace selección de modelos: Cuando λ ≥ |βbjmco | se


apaga la co–variable j en el modelo.

I A medida que λ → ∞, la solución de LASSO consiste en


descartar todas las covariables (solo ordenada al origen).

I Coherencia: LASSO provee estimadores que no cambian de


signo ante cambios en λ (Ridge no cumple siempre esta prop).
G. Martos Modelos Lineales y Extensiones UTDT 41 / 80
LASSO: Credit Data (ver código R)
Covariables: Income, Limit, Rating, Cards, Age, Educ

Figure: Estimaciones de los parámetros del modelo LASSO en función del


parámetro log(λ) a la izquierda. Relación entre coeficientes estimados y
norma (se corresponde con valores decrecientes de λ).

G. Martos Modelos Lineales y Extensiones UTDT 42 / 80


Comparativa de métodos:
I LASSO  RIDGE: Muchas pendientes son cero.

I RIDGE  LASSO: Muchas pendientes cercanas a cero.

Estimación de balance en cc (credit data set1 )

Método α λ∗ Train (se) Test


RIDGE 0 0.90 10.60 (8.22) 11.39
LASSO 1 0.86 10.59 (8.21) 11.40
Table: Estimaciones del ECM en escala logarı́tmica (SE entre paréntesis)

I Básicamente resultados idénticos.

I Más adelante discutimos α.

I 1 Covariables: Income, Limit, Rating, Cards, Age, Educ.


G. Martos Modelos Lineales y Extensiones UTDT 43 / 80
Modelos lineales y optimización convexa
n 
X 2
β
e = argmin
λ,q yi − (b1 X1,i + · · · + bp Xp,i ) + λ||b||q
b1 ,...,bp i=1

donde b = (b1 , . . . , bp ) y || • ||q la norma en Lq .

I Interpretación Bayesiana: El término λ||b||q se puede


entender como una log–prior sobre los parámetros del modelo.

I LASSO como una relajación convexa cuando q < 1.

I No se gana demasiado aprendiendo “el mejor q”.


G. Martos Modelos Lineales y Extensiones UTDT 44 / 80
Elastic Nets n  2
b EN = argmin
X
yi −(b1 X1,i +· · ·+bp Xp,i ) +λ (1−α)||b||22 +α||b||1

β λ,α
b1 ,...,bp i=1

I Rescatar lo mejor de RIDGE y LASSO en un solo método.

I Elastic net selecciona variables.

I Aprender (λ, α) por validación cruzada.


G. Martos Modelos Lineales y Extensiones UTDT 45 / 80
Regularización modelos lineales en R

install.packages(’glmnet’)
library(glmnet)

glmnet (x ,y , alpha = 0 , lambda )

x,y = en formato matriz.

alpha = 0 (Ridge).
alpha = 1 (LASSO).
alpha en (0,1) (ENet).

lambda = penalización del regularizador.

Output:
Coeficientes estimados para cada valor de lambda.

G. Martos Modelos Lineales y Extensiones UTDT 46 / 80


Actividad en clase

I Utilizando las mismas covariables

Balance = Income + Limit + Rating + Cards + Age + Educ.

I Compara contra RIDGE y LASSO la performance dentro y


fuera de la muestra del modelo ENet (estima
convenientemente λ y α).

Método α λ∗ Train (se) Test


RIDGE 0 0.90 10.60 (8.22) 11.39
LASSO 1 0.86 10.59 (8.21) 11.40
ENet ? ? ? ?
Table: Estimaciones del ECME en miles (SE entre paréntesis)

G. Martos Modelos Lineales y Extensiones UTDT 47 / 80


Agenda

Regresión
Modelos lineales (refresh)
Modelos lineales multitarget
Selección y Regularización de modelos lineales
De los modelo lineales a los modelos aditivos

Clasificación
Regresión logı́stica
Otras técnicas lineales para clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 48 / 80


Modelos aditivos
I Asumiendo Y = f (X1 , . . . , Xp ) + ε.

I Los modelos aditivos proponen:


f (X1 , . . . , Xp ) ≈ β0 + f1 (X1 ) + · · · + fp (Xp )
I donde las funciones f1 , . . . , fp (desconocidas) se pueden
representar utilizando una base de funciones {φ1 , . . . , φb }:
b
X
fj (z) = βj,l φl (z), j = 1, . . . , p (con b < ∞)
l=1

Algunos ejemplos de bases habituales en la práctica:


1. Polinomios (por ejemplo de segundo grado):
fj (Xj ) = βj1 Xj + βj2 Xj2 para j = 1, . . . , p.
2. Polinomios locales (Splines).
3. Bases de Fourier, Wavelets, RKHS, etc. (fuera del curso)
G. Martos Modelos Lineales y Extensiones UTDT 49 / 80
Regresión polinómica
b1 b2 bp
X X X
f (X1 , . . . , Xp ) ≈ β0 + β1l X1l + β2l X2l + · · · + βpl Xpl
|l=1 {z } |l=1 {z } |l=1 {z }
f1 (X1 ) f2 (X2 ) fp (Xp )

I 1 + b1 + · · · + bp parámetros a aprender.

I No deja de ser un modelo lineal (fitting e inferencia).

I Interacciones para medir efectos cruzados (p = b1 = b2 = 2):

f (X1 , X2 ) ≈ β0 +β11 X1 +β12 X12 +β21 X2 +β22 X22 +αX1 X2 +γ(X1 X2 )2 .

I ↑ Complejidad ⇒ regularización para evitar overfitting.

I Drawback: No tenemos control local.

G. Martos Modelos Lineales y Extensiones UTDT 50 / 80


Splines (caso univariante)
I La función f (X ) se puede aproximar en un intervalo X ∈ [a, b]
utilizando polinomios continuos a trozos.

I k nodos {a ≤ ν1 ≤ ν2 ≤ · · · ≤ νk ≤ b}.

I En cada intervalo [νi , νi+1 ], determinado por dos nodos


contiguos, aproximamos f (X ) con un polinomio local.

I Ej: partimos el intervalo en dos: [a, c] y (c, b]. Luego


estimamos dos modelos (pol. local de grado 3):
(
βL,0 + βL,1 X + βL,2 X 2 + βL,3 X 3 si X ≤ c,
f (X ) ≈
βR,0 + βR,1 X + βR,2 X 2 + βR,3 X 3 si X > c,

I Splines permiten un control local de la función que estamos


estimando. Podemos introducir continuidad en el modelo.
G. Martos Modelos Lineales y Extensiones UTDT 51 / 80
G. Martos Modelos Lineales y Extensiones UTDT 52 / 80
Splines cúbicos
I Para cada ν ∈ {a ≤ ν1 ≤ ν2 ≤ · · · ≤ νk ≤ b}:
(
(x − ν)3 si x > ν,
h(x, ν) =
0 en otro caso.
I Consideremos la base:
B = {φ1 (x) = x, φ2 (x) = x 2 , φ3 (x) = x 3 ,
φ4 (x) = h(x, ν1 ), . . . , φk+3 (x) = h(x, νk )}
I El modelo plantea que:
k+3
X
2 3
f (X ) ≈ β0 + β1 X + β2 X + β3 X + βi φi (X ).
i=4

I k + 4 β’s se aprenden minimizando el riesgo empı́rico.


I Modelo lineal (fitting e inferencia).
I Regularizamos para controlar overfitting.
G. Martos Modelos Lineales y Extensiones UTDT 53 / 80
Consideraciones finales
I Como elegir la ubicación y cantidad de knots:
I Ubicación: Equi-espaciados vs. Cuantiles.

I Cantidad: Validación cruzada.

I EI) Natural splines (modelo lineal en [a, b]c ).

I EII) Smoothing splines: Nodos en: {x1 , . . . , xn } y


n
X Z
RE(β0 , . . . , βn+4 ) : (yi − fβ (xi ))2 + λ [fβ00 (t)]2 dt.
i=1

I Ventajas de modelos aditivos:


I Permiten cuantificar el efecto aislado de cada regresor.

I Inferencia para modelos lineales.

I Desventaja: Modelos sobre-parametrizados (regularización).


G. Martos Modelos Lineales y Extensiones UTDT 54 / 80
Modelos aditivos en R
I Los dos modelos aditivos discutidos en clase son bastante
flexibles para estimar funciones no lineales y se encuentran
perfectamente integrados al comando lm en R.

I poly(x,d): Creamos una matriz de diseño con monomios de


hasta grado d para el vector x.
I bs(x,knots,degree): (cargar la librerı́a splines).
I nknots: controla el número y localización de los nodos.

I degree: controla el grado polinomial del spline (3 por defecto).

I Introducimos el uso de estas técnicas con una simulación:

Y = 1 + (X − 0.5)3 − sin(10X ) + N(0, 1), para X ∈ [0, 1].

I En el contexto de la regresión, los grado del polinomio que


uses (y la cantidad de nodos) pueden ser elegidos por VC.
G. Martos Modelos Lineales y Extensiones UTDT 55 / 80
Regresión polinómica vs Splines

Figure: En negro la verdadera f , en rojo la estimación de f con spline


cúbico (3 nodos equi–espaciados) y en azul con polinomio de 3er grado.

G. Martos Modelos Lineales y Extensiones UTDT 56 / 80


TAREA (fuera de clase)

Utilizando los datos de saldos en CC y asumiendo que:

Balance = f (Income, Limit, Rating, Age, Educ) + ε

I Utilizando los conjuntos de train y test que usamos en clase:


I Estima el modelo de regresión polinomial para aproximar f .
Discute alguna estrategia razonable para elegir el grado
polinomial del modelo.

I Estima el modelo de regresión con splines cúbicos en las


covariables. Discute alguna estrategia razonable para elegir la
cantidad de nodos del modelo.

I Compara el ECM de estos dos modelos (sobre la muestra test)


contra los resultados del modelo lineal standard.

G. Martos Modelos Lineales y Extensiones UTDT 57 / 80


Agenda

Regresión

Clasificación
Regresión logı́stica
Otras técnicas lineales para clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 58 / 80


Agenda

Regresión
Modelos lineales (refresh)
Modelos lineales multitarget
Selección y Regularización de modelos lineales
De los modelo lineales a los modelos aditivos

Clasificación
Regresión logı́stica
Otras técnicas lineales para clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 59 / 80


Modelos lineales en clasificación
I Variable de interés Y categórica (asumimos dicotómica).
I En problemas de clasificación binarios modelamos:

E (Y |X1 , . . . , Xp ) = P{Y = 1|X1 , . . . , XK }.

I ... por medio de la regresión logı́stica:


 P(Y = 1|X , . . . , X ) 
1 p
log = β0 + β1 X1 + · · · + βp Xp
P(Y = 0|X1 , . . . , Xp )
I Log–ratio de probabilidades es función lineal de las X ’s.

I Dada una muestra TRAIN aprendemos parámetros:


X  e −(b0 +xTi b)  X  1 
max `(b0 , b) = max log +xT b)
+ log T b) .
b0 ,b b0 ,b
i:Yi =0
1 + e −(b0 i
i:Yi =1
1 + e −(b0 +xi

I Optimización numérica: βb0 , . . . , βbp .


G. Martos Modelos Lineales y Extensiones UTDT 60 / 80
Predicción y valoración del modelo
I Una vez estimados los parámetros del modelo podemos
obtener predicciones probabilı́sticas e intervalos (riesgo).
1
P(Y
b = 1|X1 = x1 , . . . , Xp = xp ) = .
1+ e −(βb0 +βb1 x1 +···+βbp xp )
I Para predecir debes definir un umbral: Utiliza probabilidades a
priori de cada clase o ajustar por VC.

I Valoración (ajuste) in–sample del modelo:


I Criterios estadı́sticos: AIC, BIC, pseudo-R 2 de McFadden.

log(Verosimilitud modelo)
pseudo-R 2 de McFadden: 1− .
log(Verosimilitud del modelo null)

I Validar la performance con la tasa de error o el AURC (umbral


independiente) sobre una muestra de test (o por VC).
G. Martos Modelos Lineales y Extensiones UTDT 61 / 80
Refresh: ROC ó Sensibilidad vs 1 - Especificidad

TP TN
Sensibilidad (TPR) = vs. Especificidad (TNR) = .
P N

Figure: ↓ treshold ⇒ ↑ TPR & ↑ FPR.

G. Martos Modelos Lineales y Extensiones UTDT 62 / 80


Regularización en modelos Logı́sticos (glmnet)
I Subset–selection utilizando un conjunto de validación.

I Regularización vı́a Ridge, LASSO, ENets adaptando


convenientemente el problema de aprendizaje:

max `(b0 , b) − λ||b||q .


b0 ,b

Penalizas la log–verosimilitud con la norma–q del vector de


pendientes del modelo logı́stico.

I Alternativamente podemos replantear el problema de


optimización como (definimos por conveniencia Y ∈ {−1, 1}):
n
X
log 1 + e −yi (b0 +b1 X1,i +···+bp Xp,i ) + λ||b||q .

min
b0 ,...bk
i=1

I Ridge: q = 2, LASSO: q = 1.
G. Martos Modelos Lineales y Extensiones UTDT 63 / 80
Regresión logı́stica en R
### Librerı́a glm:

glm(formula, family , data, weights, subset, na.action,


method = binomial(link = "logit"))

# Parámetros sensibles:
formula, data: especificación y datos.

weights, subset, na.action.

family =
- Modelo logı́stico: binomial(link = "logit")
- Regresión lineal: gaussian(link = "identity")
- Modelo de conteo: poisson(link = "log")

I Regresión logı́stica + regularización: glmnet.


G. Martos Modelos Lineales y Extensiones UTDT 64 / 80
Extensiones (I)
Estrategias con C > 2 clases:

I One–vs–all: C modelos de
una clase contra las restantes.
Predecimos la observación
nueva en la clase con mayor
probabilidad estimada.

I One–vs–one: Entrenamos
C (C − 1)/2 modelos de una
clase contra otra. Predicciones
por voto y mayorı́a (puedes
utilizar los tresholds a–priori).

G. Martos Modelos Lineales y Extensiones UTDT 65 / 80


Extensiones (II)
Problemas de clasificación desbalanceados
I Thresholding: Modificar el umbral de corte (prob a–priori).

I Undersampling: Eliminar casos en clase mayoritaria.

I Oversampling: Remuestreo sobre la clase minoritaria.

I Reweigthing: Más peso observaciones en clase minoritaria


n
X 
`w (β0 , β1 , . . . , βp |X, y) = w i yi log(pi )+(1−yi ) log(1−pi ) .
i=1

I Combinación de las 4 estrategias.

I A priori ninguna estrategia es mejor que la otra. Se


recomienda explorar todas las alternativas o una mix de todas.
G. Martos Modelos Lineales y Extensiones UTDT 66 / 80
Extensión (III)
I Regresión logı́stica aditiva:
 P(Y = 1|X , . . . , X ) 
1 p
log = β0 + f1 (X1 ) + · · · + fp (Xp )
P(Y = 0|X1 , . . . , Xp )

I El ratio de probabilidades ya no es lineal como función de los


features, sin embargo el modelo sigue siendo lineal en los
parámetros si aproximamos cada función fj como:
b
X
fj (z) = βjl φl (z), j = 1, . . . , p
l=1

I Polinomios o Splines para modelizar cada una de las fj ’s.

I Regularización para evitar el overfitting.

G. Martos Modelos Lineales y Extensiones UTDT 67 / 80


Caso de estudio: Defaults TAIWAN Bank (2005)

Figure: Instancias en rojo = Clientes en default.

Source: UCI ML repository.

G. Martos Modelos Lineales y Extensiones UTDT 68 / 80


I default next month: response variable (Yes = 1, No = 0).

I LIMIT BAL: Amount of the given credit: Includes individual


consumer credit and his/her family credit.
I SEX: 1 = male; 2 = female.

I EDUCATION: 1 = graduate school; 2 = university; 3 = high


school; 4 = others.
I MARRIAGE: 1 = married; 2 = single; 3 = others.

I AGE: Age in years.

I PAYj : Tracked past monthly repayment status: -1 = pay duly;


i = payment delay for i month (i from 1 to 9). (Incoherencias)
I BILLAMTj : Amount of bill statement.

I PAYAMTj : Payment amount.

I j: Time index ranging from April (j=6) to September (j=1).


G. Martos Modelos Lineales y Extensiones UTDT 69 / 80
Consideraciones finales
I Aspectos positivos de los modelos lineales
I Interpretabilidad.

I Flexibles (si consideramos modelos aditivos).

I Computacionalmente eficientes.

I Inferencia (supuestos).

I Aspectos negativos de los modelos lineales


I Pasar de los modelos lineales a los aditivos requiere cierto
trabajo artesanal en la elección de las bases, selección de
modelos, regularización, interpretación de los parámetros, etc.

I Sensibles a contextos en donde hay atı́picos y/o datos perdidos.

G. Martos Modelos Lineales y Extensiones UTDT 70 / 80


Agenda

Regresión
Modelos lineales (refresh)
Modelos lineales multitarget
Selección y Regularización de modelos lineales
De los modelo lineales a los modelos aditivos

Clasificación
Regresión logı́stica
Otras técnicas lineales para clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 71 / 80


Discriminante lineal (univariante)
El modelo asume que X |Y = y ∼ N(µy , σy2 ), con Y ∈ {0, 1}.

I Dado x → yb = 1 si: p(y = 1; µ1 , σ12 ) > p(y = 0; µ0 , σ02 )

I En la práctica: yb = 1 si: p(y = 1; µ b12 ) > p(y = 0; µ


b1 , σ b02 )
b0 , σ
G. Martos Modelos Lineales y Extensiones UTDT 72 / 80
Discriminante lineal (multivariante)
I (X1 , . . . , Xp )|Y = i ∼ N(µi , Σi )) para i = 1, . . . , K
 
1 1 T −1
f (x; µi , Σi ) = p 1 exp − (x − µi ) Σi (x − µi ) , i = 1, . . . , K .
(2π) 2 |Σi | 2 2

I Para xnew usamos la regla:

ŷnew = i si: πi f (xnew ; µi , Σi ) > πj f (xnew ; µj , Σj ); para todo j 6= i.


I πi es la probabilidad de que Y = i (en la población).

I P(Y = i|x) = πi f (x; µi , Σi ) para i = 1, . . . , K .

I En la práctica reemplazamos (µi , Σi ) por estimaciones (Train).

I Se prefieren estimadores robustos de (µi , Σi ).

I LDA: Σ1 = Σ2 (regla lineal).

I QDA: Σ1 6= Σ2 (regla cuadrática).

G. Martos Modelos Lineales y Extensiones UTDT 73 / 80


Discriminante lineal

Figure: Discriminante lineal: Σ1 = Σ2 (= σ 2 I).

G. Martos Modelos Lineales y Extensiones UTDT 74 / 80


LDA (estimación de la regla)
I Para simplificar, asumamos que Y = {−1, 1}.

I Dado un set TRAIN para estimar Σ,


b µb −1 , µ
b 1 ; dado x

yb = sign{wT x − c}.

I El clasificador es una función lineal de x cuyos parámetros son:

b −1 (c
I w=Σ µ1 − µ
b −1 ).

I c = 21 (log π
bT
−µ b −1 b + µ
bT b −1 b ).
−1 Σ µ 1Σ µ
b1
π
b−1 −1 −1

I π
b−1 y πb1 son simplemente las frecuencias observadas de −1 y
1 en la muestra de Train (est. puntuales de prob. apriori).

I Regularización (p  0): Asumiendo Σ diagonal.


G. Martos Modelos Lineales y Extensiones UTDT 75 / 80
Discriminante cuadrático

Figure: Discriminante cuadrático: Σ1 6= Σ2 .

G. Martos Modelos Lineales y Extensiones UTDT 76 / 80


Comentarios sobre el discriminante lineal y cuadrático

I Solo podemos aplicar este modelo cuando las X son continuas.

I Sensibilidad a la falta de normalidad y a atı́picos.

I Cuando p  0 hay que regularizar (asumir estructura en Σ).

I Alternativamente hacer PCA (reducir p).

I Validar la capacidad predictiva con datos de test (CV).

G. Martos Modelos Lineales y Extensiones UTDT 77 / 80


Discriminante lineal y cuadrático en R

# Discriminante lineal
lda(formula, data, ..., subset, na.action)

# Discriminante cuadrático
qda(formula, data, ..., subset, na.action)

# Parámetros sensibles:
formula, data: especificación y datos.
weights, subset, na.action: opciones standard de mod lin.
control = glm.control(epsilon = 1e-8, maxit = 25)
method = método para estimar medias y covarianzas
- ’mle’: maxima verosimilitud.
- ’moment’: método de momentos.
- ’mve’: método robusto (aconsejable).
CV = si es igual a TRUE estima por LOOCV.

G. Martos Modelos Lineales y Extensiones UTDT 78 / 80


Agenda

Regresión

Clasificación

Caso de práctico de integración de conocimiento

G. Martos Modelos Lineales y Extensiones UTDT 79 / 80


Caso de estudio: problema de CHURN en Teleco
Datos: matriz de 3.333 filas (clientes) y 20 columnas (variables).
Covariables (19): state, accountlength, area_code,
international_plan(yes/no), voice_mail_plan(yes/no),
number_vmail_messages, total_day_minutes, total_day_calls,
total_day_charge, total_eve_minutes, total_eve_calls,
total_eve_charge, total_night_minutes, total_night_calls,
total_night_charge, total_intl_minutes, total_intl_calls,
total_intl_charge and number_customer_service_calls.

Variable a predecir: churn (yes/no).


Tarea: (a resolver en la clase práctica)
I Implementa los modelos de clasificación vistos en clase
utilizando técnicas de regularización y validación cruzada.
I Estima y compara el error fuera del train de los modelos
logı́sticos (con y sin regularización) contra los métodos de
árbol vistos en Data Mining.
G. Martos Modelos Lineales y Extensiones UTDT 80 / 80

También podría gustarte