Kapittel 6 - modell seleksjon og regularisering Geir Storvik 21. februar 2017 1/22
Lineær regresjon med mange forklaringsvariable Lineær modell: Y = β 0 + β 1 x 1 + + β p x p + ε Data: {(x 1, y 1 ),..., (x n, y n )} Minste kvadraters estimate: β = (X T X) 1 Xy. Hvis n p: Var( ˆβ j ) liten og god prediksjon på testdata Hva hvis n p? p > n: X T X singulær, ikke mulig å regne ut β n > p men ikke mye større: Var( ˆβ j ) stor og dårlig prediksjon på testdata Uansett hvis p stor: Innkludering av mange x j er i modell gjør det vanskelig å tolke modell. Ønsker å forenkle modell Variabel seleksjon: Velge ut viktige variable Krymping: Krympe ˆβ j mot 0 for å minske variabilitet. Dimensjonsreduksjon: Projisere x ned i lavere dimensjon z = Φx R q, q < p. Aktuelle tilnærminger også for klassifikasjon og ikke-lineære metodeer 2/22
Variabel seleksjon Sett tidligere: Foroverseleksjon, bakoverseleksjon, blanding av disse Alternativer: Søke gjennom alle modeller, bedre optimeringsmetoder Hvordan måle kvalitet på modell? R 2 blir større jo flere variable vi innkluderer Kryssvalidering C p, AIC, BIC, justert R 2 3/22
Seleksjonskriterier RSS = n (y i ŷ i ) 2 der ŷ i er basert på d kovariater. R 2 = 1 RSS for optimistisk. TSS Radj 2 = 1 RSS/(n d 1) TSS/(n 1) [ ] E = σ 2 RSS n d 1 hvis lineær modell er riktig. Mallows C p : (ˆσ 2 er estimat på σ 2 basert på alle p kovariater) C p = 1 n (RSS + 2d ˆσ2 ) AIC = 2 log(l( ˆθ)) + 2 θ Lineære modeller: AIC = Konst + n log(ˆσ 2 ) + 2(d + 2) der ˆσ 2 er estimat innen den model en ser på Vil typisk inkludere litt for mange variable BIC = 2 log(l( ˆθ)) + log(n) θ Lineære modeller: AIC = Konst + n log(ˆσ 2 ) + log(n)(d + 2) der ˆσ 2 er estimat innen den model en ser på Straffer hardere de mer komplekse modeller AIC og BIC kan brukes også utenfor lineære modeller. 4/22
AIC - forskjeller fra boka Lineære Gaussiske modeller (θ = (β, σ 2 ), θ = d + 2): log(l(θ)) = n 2 log(2π) n 2 log(σ2 ) 1 2σ 2 (y i µ i ) 2 ˆµ i =x T i ˆσ 2 = 1 n ˆβ = ŷ i (y i ŷ i ) 2 ML estimat log(l( ˆθ)) = n 2 log(2π) n 2 log(ˆσ2 ) 1 2ˆσ 2 (y i ŷ i ) 2 = n 2 log(2π) n 2 log(ˆσ2 ) n 2 AIC =n log(2π) + n log(ˆσ 2 ) + n + 2(d + 2) =Konst + n log(ˆσ 2 ) + 2(d + 2) Merk: Forskjellig fra boka (!). Boka ikke helt nøyaktig her. 5/22
Diskusjon om kriterier R 2 adj, C p, AIC og BIC: Bruker alle data, men justerer overtilpasningen som ligger i treningsdata ved å innføre straffeledd". Baserer seg på antatt modell Ofte raske å beregne Kryssvalidering Kan brukes mer generelt Dog er AIC/BIC enklere å bruke når det f.eks er avhengigheter mellom observasjoner Klarer ikke å utnytte alle data ved tilpasning Validerer litt andre modelltilpasninger enn den som en vil bruke til slutt 6/22
Søk gjennom modeller Med p variable er det 2 p mulige modeller 2^p 0e+00 4e+05 8e+05 5 10 15 20 p Søk gjennom alle modeller Residual Sum of Squares 2e+07 4e+07 6e+07 8e+07 R 2 0.0 0.2 0.4 0.6 0.8 1.0 2 4 6 8 10 Number of Predictors 2 4 6 8 10 Number of Predictors Sammenlikning baseres på p + 1 modeller. 7/22
Forover/bakover seleksjon Søker igjennom p 1 k=0 (p k)=1+p(p+1)/2 modeller Kan også brukes hvis p n, stopper da ved modeller av størrelse n 1. Kan også gi bedre statistiske egenskaper da mindre sjanse for overtilpasning Også mulig med bakoverseleksjon men kun hvis n > p. Også mulig med hybrid tilnærminger, dvs gå både forover og bakover Illustrasjon: Hitters data Hitters.R 8/22
Krympe metoder Seleksjon av variable vanskelig Hard beslutning, enten β j estimert ved LS eller satt lik 0. Idé krympe metoder: Begrensninger eller regulariseringer av β j -ene. Utgangspunkt: Minste kvadrater minimerer mhp β 2 RSS(β) = y i β 0 β j x ij Regularisinger: Legge inn straffeledd på for store β j er Ridge regresjon: Kvadratisk (l 2 ) straffeledd Lasso regresjon: l 1 type straffeledd Vil skrive om modell til Y i =β 0 + β j x ij + ε i =β 0 + = β 0 + β j x j + β j (x ij x j ) + ε i β j x ij + ε i Sløyfer i det etterfølgende, antar n x ij = 0. 9/22
Ridge regresjon Ønsker å minimere mhp β h(β) = y i β 0 Utledning: som gir normallikninger β j x ij β 0 h(β) = 2 β l h(β l ) = 2 2 + λ y i β 0 y i β 0 β 2 j β j x ij = 2 (y i β 0 ) β j x ij x il + 2 ˆβ l, l 1 ˆβ 0 = 1 n y i = ȳ ˆβ j x ij x il + β l = (y i ȳ)x il = y i x il, l = 1,..., p som på matriseform kan skrives (X har nå ikke 1 i første kollonne og β = (β 1,..., β p )) (X T X + λi) ˆβ = X T y ˆβ ridge = ˆβ = (X T X + λi) 1 X T y 10/22
Ridge regresjon og skalering h(β) = y i β j x ij 2 + λ β 2 j j=0 Straffeledd avhengig av skalering på x-ene Vanlig å standardisere x-ene før bruk av Ridge regresjon: x ij = 1 n x ij n (x ij x j ) 2 11/22
Ridge for ortogonale forklaringsvariable Anta n x ijx il = 0 for l j. Da er X T X = I. ˆβ ridge =(X T X + λi) 1 X T y =(I + λi) 1 X T y = 1 1 + λ IXT y = 1 1 + λ (XT X) 1 X T y = 1 1 + λ ˆβ LS 12/22
Ridge regresjon på Credit data Standardized Coefficients 300 100 0 100 200 300 400 1e 02 1e+00 1e+02 1e+04 Income Limit Rating Student Standardized Coefficients 300 100 0 100 200 300 400 0.0 0.2 0.4 0.6 0.8 1.0 λ ˆβ R λ 2/ ˆβ 2 13/22
Hvorfor fungerer Ridge regresjon? Ridge regresjon vist seg å fungere bra i mange reelle anvendelser Anta ortogonale x-er, så ˆβ ridge = 1 1+λ E[ ˆβ ridge ] = 1 1 + λ ˆβ LS β ( ) 2 Var[ ˆβ ridge 1 ] = Var[ ˆβ LS ] 1 + λ ˆβ LS Innfører skjevhet, men minker varians Simulerte data (sort=skjevhet, grønn=varians, lilla=test MSE) Mean Squared Error 0 10 20 30 40 50 60 Mean Squared Error 0 10 20 30 40 50 60 1e 01 1e+01 1e+03 0.0 0.2 0.4 0.6 0.8 1.0 λ ˆβ R λ 2/ ˆβ 2 14/22
Dualitet Minimering av y i β j x ij 2 + λ β 2 j j=0 er matematisk ekvivalent med minimering av y i β j x ij j=0 2 under restriksjonen p β2 j s der s vil være en funksjon av λ. Alternativ formulering noe lettere å forholde seg til geometrisk 15/22