pdf2

Transcript

pdf2
4/20/2015
Regolarizzazione (Shrinkage)
Regolarizzazione (Shrinkage)
Strumenti quantitativi per la gestione
Emanuele Taufer
Metodi di regolarizzazione o shrinkage
Regressione ridge
Standardizzare i predittori
Dati Credit.csv
Ridge per i dati Credit.csv
Trade­off bias­varianza
Simulazioni
Ridge ­ OLS
Efficienza
Aspetti computazionali
Regressione LASSO
LASSO per i dati Credit.csv
Alcuni dettagli teorici
Interpretazione grafica dei vincoli, p
Best subset
Comparazione LASSO ­ ridge
Confronto grafico
= 2
Selezione di λ
Esempio: Ridge su Credit.csv
Esempio: LASSO su dati simulati
Riferimenti bibliografici
Metodi di regolarizzazione o shrinkage
In alternativa ai metodi di selezione discussi (best subset, forward, backward, ibrido) è possibile utilizzare
dei metodi che utilizzano tutti i predittori ma vincolano (o regolarizzano) i coefficienti portandoli verso
valori molto piccoli o pari a zero (shrinkage)
Questi metodi si configurano in effetti come metodi di selezione automatica delle variabili.
Sono particolarmente efficaci quando p ha dimensione elevata
I due metodi di regolarizzazione più usati sono
La regressione ridge
Il LASSO (Least Absolute Shrinkage and Selection Operator)
file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/6b_LASSO.html
1/10
4/20/2015
Regolarizzazione (Shrinkage)
Regressione ridge
Nella stima di un modello di regressione, il metodo dei minimi quadrati determina β^
minimizzando
^
^
= (β 0 , … , β p )
n
2
RS S = ∑ (yi − β 0 − β 1 x i1 − ⋯ − β p x ip )
i=1
R
La regressione ridge determina le stime β^λ minimizzando
n
2
∑(yi − β 0 − β 1 x i1 − ⋯ − β p x ip )
+ λ(β
2
1
2
+ ⋯ + βp )
i=1
p
= RS S + λ ∑ β
2
j
j=1
dove λ
> 0
è un parametro di adattamento che deve essere determinato esogenamente
p
Il termine λ ∑j=1 β j2 è una penalità che decresce quando i parametri β si ritirano (shrinking) verso lo 0 .
Il parametro λ controlla l’impatto relativo dei due componenti: RS S e il termine di penalità.
Se λ
= 0
la regressione ridge coincide con il metodo dei minimi quadrati.
Se λ
→ ∞
tutti i coefficienti stimati tendono a 0
La regressione ridge produce stime differenti per differenti valori di λ
La scelta ottimale di λ è cruciale e viene di solito fatta con cross validazione
Si noti che la penalità non è applicata a β 0 , poiché non avrebbe senso
Standardizzare i predittori
Nella stima dei minimi quadrati (OLS), il cambiamento di scala di una variabile non ha effetto
pratico:
se il predittore Xj è moltiplicato per una costante c , il relativo coefficiente stimato viene
automaticamente diviso per c dagli OLS.
in altre parole, l’effetto β^j Xj rimane lo stesso indipendentemente dalla scala di
misurazione di Xj (equivarianza)
Nella regressione ridge, una trasformazione di scala ha effetti sostanziali e pertanto per evitare di
ottenere risultati diversi a seconda della scala di misurazione di un predittore, è opportuno
procedere a una standardizzazione di tutti i predittori prima di stimare il modello.
Si usi la formula
~
x ij =
x ij
−−−−−−−−−−−−−−
√
file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/6b_LASSO.html
1
n
∑
n
i=1
(x ij − x̄ j )
2
2/10
4/20/2015
Regolarizzazione (Shrinkage)
Dati Credit.csv
credit<‐read.csv("http://www.cs.unitn.it/~taufer/Data/Credit.csv",header=T)
head(credit)
X Income Limit Rating Cards Age Education Gender Student Married
1 1 14.891 3606 283 2 34 11 Male No Yes
2 2 106.025 6645 483 3 82 15 Female Yes Yes
3 3 104.593 7075 514 4 71 11 Male No No
4 4 148.924 9504 681 3 36 11 Female No No
5 5 55.882 4897 357 2 68 16 Male No Yes
6 6 80.180 8047 569 4 77 10 Male No No
Ethnicity Balance
1 Caucasian 333
2 Asian 903
3 Asian 580
4 Asian 964
5 Caucasian 331
6 Caucasian 1151
Ridge per i dati Credit.csv
R
A sinistra: coefficienti β^λ per 0
A destra: coefficienti R
^
βλ
per 0
< λ < ∞
<
^
||β
R
λ
||
2
^
||β ||
< 1
2
−
−
−
−−
−−
||β||
p
2
2
= √∑
β
j=1
j
indica la distanza dall’origine del vettore β .
file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/6b_LASSO.html
3/10
4/20/2015
Regolarizzazione (Shrinkage)
^
||β
R
λ
||
2
^
||β ||
R
misura la distanza dall’origine di β^λ in termini relativi a β^ (OLS)
2
Se λ
= 0
, ^
||β
R
λ
||
2
= 1
^
||β ||
2
Se λ
→ ∞
, ^
||β
R
λ
||
2
^
||β ||
→ 0
2
Trade­off bias­varianza
R
All’aumentare di λ, alcuni (o molti) dei coefficienti β^λ si restringono a 0 e la flessibilità del modello
diminuisce.
Si ricordi che minor flessibilità implica maggior bias e minore varianza delle stime.
Una scelta ottimale di λ permette di tarare in maniera appropriata i due effetti ed ottenere un test MSE
ottimale, o quasi.
Simulazioni
Dati simulati con p
= 45
, n
= 50
Nero: Bias (al quadrato)
Verde: Varianza
Viola: test MSE
Ridge ­ OLS
file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/6b_LASSO.html
4/10
4/20/2015
Regolarizzazione (Shrinkage)
Efficienza
Se p è molto elevato, quasi quanto n , gli OLS tendono ad avere elevata variabilità. Se p
non possono essere usati.
> n
gli OLS
In entrambi i casi la regressione ridge può funzionare piuttosto bene.
Aspetti computazionali
Nella selezione best subset con gli OLS è necessario effettuare 2p fit del modello.
La regressione ridge stima un solo modello per ciascun valore di λ e, attraverso algoritmi
computazionali, il numero di operazioni necessarie per stimare la regressione ridge simultaneamente
per tutti i valori di λ è praticamente equivalente al numero di operazioni necessarie per stimare un
modello con gli OLS
La regressione ridge produce un modello con tutte le variabili, di cui una parte con coefficienti prossimi
allo 0 .
All’aumento di λ sempre più coefficienti saranno prossimi allo 0 ma quasi mai esattamente pari a 0 , a
meno che λ = ∞
Per la previsione questo non è un problema.
L’interpretazione può essere a volte problematica
La regressione LASSO cerca di superare questo aspetto
Regressione LASSO
L
La regressione LASSO determina le stime β^λ minimizzando
p
n
2
∑(yi − β 0 − β 1 x i1 − ⋯ − β p x ip )
i=1
+ λ ∑ |β j |
j=1
p
= RS S + λ ∑ |β j |
j=1
dove λ
> 0
è un parametro di adattamento che deve essere determinato esogenamente
Il termine di penalità della LASSO, usando il valore assoluto, piuttosto che il quadrato come nella
regressione ridge, forza alcuni coefficenti ad essere esattamente uguali a 0 , se λ è sufficientemente
grande.
La LASSO effettua automaticamente una vera e propria selezione delle variabili.
LASSO per i dati Credit.csv
file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/6b_LASSO.html
5/10
4/20/2015
Regolarizzazione (Shrinkage)
L
A sinistra: coefficienti β^λ per 0
A destra: coefficienti L
^
βλ
per 0
< λ < ∞
<
^
||β
L
λ
||
1
^
||β ||
< 1
1
||β||
^
||β
1
= ∑
p
|β j |
j=1
indica la distanza L1 dall’origine del vettore β .
L
λ
||
1
^
||β ||
L
misura la distanza dall’origine di β^λ in termini relativi a β^ (OLS)
1
Se λ
= 0
, ^
||β
L
λ
||
1
= 1
^
||β ||
1
Se λ
→ ∞
, ^
||β
L
λ
||
1
^
||β ||
→ 0
1
Alcuni dettagli teorici
E’ possibile verificare che LASSO e ridge risolvono un problema di minimizzazione vincolata,
rispettivamente
n
p
2
min ∑ (yi − β 0 − ∑ β j x ij )
β
i=1
p
con il vincolo
j=1
∑ |β j | ≤ s
j=1
e
n
p
2
min ∑ (yi − β 0 − ∑ β j x ij )
β
i=1
j=1
file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/6b_LASSO.html
p
con il vincolo
∑β
2
j
≤ s
j=1
6/10
4/20/2015
Regolarizzazione (Shrinkage)
Interpretazione grafica dei vincoli, p
= 2
Sinistra: regressione LASSO
Destra: regressione ridge
Best subset
Analogamente, è possibile verificare che la best subset selection minimizza
p
n
2
min ∑ (yi − β 0 − ∑ β j x ij )
β
dove I (x)
= 1
i=1
se x
≠ 0
p
con il vincolo
j=1
∑ I (β j ≠ 0) ≤ s
j=1
e 0 altrimenti
Ossia RS S è minimizzato sotto il vincolo che solo alcuni coefficienti siano diversi da 0
Abbiamo visto che questo approccio è troppo intenso dal punto di vista computazionale.
Ridge e LASSO possono essere viste come alternative possibili, dal punto di vista computazionale, al
best subset selection
Comparazione LASSO ­ ridge
Sia LASSO che ridge bilanciano il trade­off bias­varianza attraverso la scelta di λ
Lasso implicitamente assume che parte dei coefficienti siano pari a 0 o comunque non significativi.
file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/6b_LASSO.html
7/10
4/20/2015
Regolarizzazione (Shrinkage)
La LASSO tende ad avere una performance superiore a ridge nei casi in cui molti predittori non sono
effettivamente legati alla variabile Y .
In casi opposti la ridge tende ad avere performance migliori.
Entrambi gli approcci possono essere comparati per mezzo di cross validazione
Confronto grafico
Dati simulati con p
= 45
, n
= 50
­ tutti i predittori legati a Y
Sinistra: bias (nero), varianza (verde), test MSE (viola) della LASSO
Destra: confronto LASSO (linea continua) ­ ridge (linea tratteggiata). R2 sui dati training
Dati simulati con p
= 45
, n
= 50
­ solo 2 predittori legati a Y
file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/6b_LASSO.html
8/10
4/20/2015
Regolarizzazione (Shrinkage)
Sinistra: bias (nero), varianza (verde), test MSE (viola) della LASSO
Destra: confronto LASSO (linea continua) ­ ridge (linea tratteggiata). R2 sui dati training
Selezione di λ
Per selezionare λ (dettagli pratici nel laboratorio):
1. scegliere una griglia di valori di λ, Es. 0.5 , 1 , 1.5 ⋯
2. stimare il test MSE (o un’altra misura di errore) con cross validazione
3. scegliere il valore di λ che minimizza il test MSE stimato e utilizzarlo per stimare il modello.
Esempio: Ridge su Credit.csv
Sinistra: stima dell’errore test con LOOCV ­ regressione ridge
Destra: coefficienti
In questo caso non vi è grossa differenza tra i risultati della regressione ridge e gli OLS
Esempio: LASSO su dati simulati
file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/6b_LASSO.html
9/10
4/20/2015
Dati simulati con p
Regolarizzazione (Shrinkage)
= 45
, n
= 50
­ solo 2 predittori legati a Y
Sinistra: stima dell’errore test con 10­fold CV ­ regressione LASSO
Destra: coefficienti
Nota: la LASSO individua correttamente i due predittori legati a Y
Riferimenti bibliografici
An Introduction to Statistical Learning, with applications in R. (Springer, 2013)
Alcune delle figure in questa presentazione sono tratte dal testo con il permesso degli autori: G. James,
D. Witten, T. Hastie e R. Tibshirani
file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/6b_LASSO.html
10/10