48
Valutazione e Selezione del Modello Fondamenti Matematici della Teoria dell’Apprendimento Statistico Laura Lo Gerfo Dipartimento di Informatica e Scienze dell’Informazione 18 maggio 2007 Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 1 / 44

Lezione su Algoritmi per la Regolarizzazione

  • Upload
    lecong

  • View
    214

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Lezione su Algoritmi per la Regolarizzazione

Valutazione e Selezione del ModelloFondamenti Matematici della Teoria dell’Apprendimento Statistico

Laura Lo Gerfo

Dipartimento di Informatica e Scienze dell’Informazione

18 maggio 2007

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 1 / 44

Page 2: Lezione su Algoritmi per la Regolarizzazione

Sommario

1 IntroduzioneIl problema di selezionare il modelloRegressione Lineare

2 BiasVarianceTrade-off Bias Variance

3 Approcci con dati realiApproccio GeneraleCross Validation

4 Minimi quadrati regolarizzatiMinimi quadrati regolarizzatiMinimi quadrati regolarizzati: scelta del parametro

5 Filtri iterativiLandweberNu-methodEsperimenti

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 2 / 44

Page 3: Lezione su Algoritmi per la Regolarizzazione

Sommario

1 IntroduzioneIl problema di selezionare il modelloRegressione Lineare

2 BiasVarianceTrade-off Bias Variance

3 Approcci con dati realiApproccio GeneraleCross Validation

4 Minimi quadrati regolarizzatiMinimi quadrati regolarizzatiMinimi quadrati regolarizzati: scelta del parametro

5 Filtri iterativiLandweberNu-methodEsperimenti

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 3 / 44

Page 4: Lezione su Algoritmi per la Regolarizzazione

Introduzione

Il problema di selezionare un modello

Quale e la capacita di generalizzazione dell’algoritmo di learning su nuovidati?

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 4 / 44

Page 5: Lezione su Algoritmi per la Regolarizzazione

Problema di regressione

Modello Statistico

y = f0(x) + ε

x: Inputy: Outputε: errore

Goal: approssimazione f di f0 che costituisca la relazione input output.

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 5 / 44

Page 6: Lezione su Algoritmi per la Regolarizzazione

Regressione Lineare

Modello di regressione lineare

x = (x1, ..., xd )

f (x) = β0 +d∑

j=1

xj ∗ βj

Soluzione ai minimi quadrati

Coefficienti: β = (β0, β1, ..., βd )

Training Set: xi = (xi1, xi2, ..., xiN) quindiX e una matrice di dimensione N × (d + 1), aggiungendo un vettore di 1nella prima posizione

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 6 / 44

Page 7: Lezione su Algoritmi per la Regolarizzazione

Regressione lineare

β = (XT X)−1XT yy = Xβ

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 7 / 44

Page 8: Lezione su Algoritmi per la Regolarizzazione

Regressione quadratica

f (x) = β0 +∑t

j=1 xj ∗ βj +∑d

j=t+1 x2j ∗ βj

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 8 / 44

Page 9: Lezione su Algoritmi per la Regolarizzazione

Interpolazione

E interpolando i dati?

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 9 / 44

Page 10: Lezione su Algoritmi per la Regolarizzazione

Quale e meglio?

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 10 / 44

Page 11: Lezione su Algoritmi per la Regolarizzazione

Sommario

1 IntroduzioneIl problema di selezionare il modelloRegressione Lineare

2 BiasVarianceTrade-off Bias Variance

3 Approcci con dati realiApproccio GeneraleCross Validation

4 Minimi quadrati regolarizzatiMinimi quadrati regolarizzatiMinimi quadrati regolarizzati: scelta del parametro

5 Filtri iterativiLandweberNu-methodEsperimenti

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 11 / 44

Page 12: Lezione su Algoritmi per la Regolarizzazione

Metodi di Selezione del Modello

Che cosa vogliamo?

Idealmente vorremmo studiare il rischio atteso legato al modello fIn generale, minimizzare l’errore empirico non da garanzie sulla capacitadi generalizzazione del metodo

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 12 / 44

Page 13: Lezione su Algoritmi per la Regolarizzazione

Errore Quadratico medio

MSE

MSE(x) = ES[y − f (x)]2

EPE(x) = Ey|xES[y − f (x)]2

Decomposizione Bias-Variance

Funzione di regressione: f0(x) = Ey|x(y)

Termine di Bias: Bias = f0 − ES(f (x))

Termine di Variance: VarS = Var(f (x))

Si puo verificare che:

EPE(x) = Vary|x(y) + Variance + Bias2

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 13 / 44

Page 14: Lezione su Algoritmi per la Regolarizzazione

Errore di Test e di Training

Complessita del modello

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 14 / 44

Page 15: Lezione su Algoritmi per la Regolarizzazione

Obbiettivi principali

Selezione del modelloStimare la performance di modelli differenti allo scopo di scegliere la miglioreapprossimazione

Stima del modelloUna volta stabilito il modello ottimale, stimare l’errore di predizione su nuovidati

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 15 / 44

Page 16: Lezione su Algoritmi per la Regolarizzazione

Sommario

1 IntroduzioneIl problema di selezionare il modelloRegressione Lineare

2 BiasVarianceTrade-off Bias Variance

3 Approcci con dati realiApproccio GeneraleCross Validation

4 Minimi quadrati regolarizzatiMinimi quadrati regolarizzatiMinimi quadrati regolarizzati: scelta del parametro

5 Filtri iterativiLandweberNu-methodEsperimenti

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 16 / 44

Page 17: Lezione su Algoritmi per la Regolarizzazione

Approccio

Quando ho tanti datiTraining Set: modella lo stimatoreValidation Set: seleziona il modello tramite l’analisi dell’erroreTest Set: verifica l’errore di generalizzazione

Se ho pochi dati: usiamo soltanto il Test...

Lati positivi: Semplice e veloceSottostima errore di generalizzazione

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 17 / 44

Page 18: Lezione su Algoritmi per la Regolarizzazione

Metodi per approssimare la fase di validazione

Tecniche analiticheAIC (Akaike Information Criterion)BIC (Bayesian Information Criterion)MDL (Minimum Description Length)SRM (Structural Risk Minimization)

Tecniche basate sul riutilizzo appropriato dei dati

CROSS VALIDATIONBOOTSTRAP

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 18 / 44

Page 19: Lezione su Algoritmi per la Regolarizzazione

Cross Validation

Stimare l’errore di generalizzazione:

Err = E [L(Y , f (X ))]

LOOCV(Leave-one-out Cross Validation)

For k = 1 a N1 Sia (xk , yk ) il k-esimo elemento di S2 Rimuoverlo da S3 Calcolare f rispetto agli N-1 punti del dataset4 Calcolare l’errore rispetto alla loss-function scelta di (xk , yk )

Ottenuti tutti gli errori calcolare una media

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 19 / 44

Page 20: Lezione su Algoritmi per la Regolarizzazione

Cross Validation

LOOCV cont’d

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 20 / 44

Page 21: Lezione su Algoritmi per la Regolarizzazione

Cross Validation

LOOCV vs. Test set methodTest-set: Stima dell’errore di generalizzazione inaffidabile (pochi dati)LOOCV: Costoso al livello computazionale, devo calcolare uno stimatoreper insieme di N-1 dati

Se non si hanno “abbastanza” dati ma vogliamo una stima affidabile?

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 21 / 44

Page 22: Lezione su Algoritmi per la Regolarizzazione

K-fold Cross Validation

K-fold Cross ValidationSi splittano i dati in K partiK - 1 parti si usano per il training set

Denotiamo con f−k (x) la funzione calcolata.La stima dell’errore dato dalla cross validation e

CV =1N

N∑i=1

L(yi , f−k(i)(xi))

Se il mio modello dipende da un parametro...come lo scelgo?

Dato un insieme di stime f (x , λ) descritte da un parametro lambda

CV (λ) =1N

N∑i=1

L(yi , f−k(i)(xi , λ))

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 22 / 44

Page 23: Lezione su Algoritmi per la Regolarizzazione

K-fold Cross Validation

K-fold Cross Validation cont’d

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 23 / 44

Page 24: Lezione su Algoritmi per la Regolarizzazione

Scelta di K

Trade-off Bias Variance?K grande(⇒ N): (LOOCV) BIAS basso, VARIANZA alta..K piccolo(⇒ 2): BIAS alto, VARIANZA bassa

Allora come scelgo K?1 Dipende dallo stimatore e dall’inclinazione della curva dell’errore

(ipotetico) al crescere dei dati di training

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 24 / 44

Page 25: Lezione su Algoritmi per la Regolarizzazione

GCV - cross validation generalizzata

GCVApprossima LOOCV (caso loss quadratica, fitting lineare)

Non e piu necessario valutare le f sui sottoinsiemi ma:

1N

N∑i=1

(yi − f (xi)

1− trace(P)/N

)2

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 25 / 44

Page 26: Lezione su Algoritmi per la Regolarizzazione

Sommario

1 IntroduzioneIl problema di selezionare il modelloRegressione Lineare

2 BiasVarianceTrade-off Bias Variance

3 Approcci con dati realiApproccio GeneraleCross Validation

4 Minimi quadrati regolarizzatiMinimi quadrati regolarizzatiMinimi quadrati regolarizzati: scelta del parametro

5 Filtri iterativiLandweberNu-methodEsperimenti

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 26 / 44

Page 27: Lezione su Algoritmi per la Regolarizzazione

Dati

DatiX: matrice dei dati N x dXi dato i-esimo, estrazione di una riga

Funzioni Kernel

Lineare: k(Xi , Xj) = X ti Xj

Polinomiale: k(Xi , Xj) = (X ti Xj + 1)d

Gaussiano: k(Xi , Xj) = e(−||Xi−Xj ||

2

σ2 )

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 27 / 44

Page 28: Lezione su Algoritmi per la Regolarizzazione

Minimi quadrati

Goal

Trovare la f che minimizza:

minf∈H12

N∑i=1

(f (Xi)− Yi)2 +

λ

2||f ||2K

Nota: stiamo minimizzando tutto, non solo la loss media (ora nonconsideriamo il fattore 1/N)Per il teorema di rappresentazione:

minβ∈R12||Y − Kβ||22 +

λ

2βtKβ

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 28 / 44

Page 29: Lezione su Algoritmi per la Regolarizzazione

Soluzione RLS

Soluzione RLS classica

β = (K + λI)−1Y

Y = Kβ

Soluzione RLS in termini di filtro Gλ

β = G−1λ Y

Y = Kβ

Usiamo la SVD:K = QΛQt , dove QtQ = I e Λii ≥ 0

Gλ = K + λI= QΛQt + λI= Q(Λ + λI)Qt

che implica G−1λ = Q(Λ + λI)−1Qt

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 29 / 44

Page 30: Lezione su Algoritmi per la Regolarizzazione

Risolvere RLS a parametri fissati

SistemaIl sistema lineare da risolvere e:

(K + λI)β = Y

Attenzione: Non provate ad invertire direttamente la matrice! Il tutto costaO(N3)

Cholesky

(K + λI) = LtLIl sistema (K + λI)β = Y diventa:

LtLβ = Y ⇒{

Ltγ = YLβ = γ

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 30 / 44

Page 31: Lezione su Algoritmi per la Regolarizzazione

Risolvere RLS al variare del parametro

Algoritmo

Calcola SVD K : O(N3) e per diversi valori di λ:Calcola βλ = Q(Λ + λI)−1QtY : O(N2)

Ma devo farlo troppe volte!!!!

Validazione: Svantaggi e Soluzioni

LOOCV: Il tutto deve essere fatto per diversi valori del parametro λ sutraining set con N − 1 datiOttenere l’errore leave-one-out per RLS e piu facile!

LOOE =Y − KG−1

λ Ydiag(I − KG−1

λ )

Si puo ulteriormente semplificare

LOOE =β

diag(G−1λ )

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 31 / 44

Page 32: Lezione su Algoritmi per la Regolarizzazione

Il costo di calcolare LOOE

Calcolo K = QΛQt in O(N3)

Per calcolare il LOOE: in O(N2)

Calcolo βλ = Q(Λ + λI)−1QtYCalcolo il denominatore come segue:

Gii =1

Λii + λ

E devo farlo al variare del parametro lambda... Nel caso di Kernel lineare N sipuo sostituire con d ma le cose rimangono pesanti, soprattutto se vogliamofare Cross Validation.

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 32 / 44

Page 33: Lezione su Algoritmi per la Regolarizzazione

Sommario

1 IntroduzioneIl problema di selezionare il modelloRegressione Lineare

2 BiasVarianceTrade-off Bias Variance

3 Approcci con dati realiApproccio GeneraleCross Validation

4 Minimi quadrati regolarizzatiMinimi quadrati regolarizzatiMinimi quadrati regolarizzati: scelta del parametro

5 Filtri iterativiLandweberNu-methodEsperimenti

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 33 / 44

Page 34: Lezione su Algoritmi per la Regolarizzazione

Idea

FunzionaleSi minimizza il funzionale

||Kβ − Y ||2nper mezzo di una procedura iterativa. Devo minimizzare il funzionale deiminimi quadrati:

5||Kβ − Y ||2n = 0

Mi muovo in direzione opposta al gradiente di un certo passo.Piu passi facciamo piu ci avviciniamo alla vera soluzione: quella cheminimizza il rischio empirico.

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 34 / 44

Page 35: Lezione su Algoritmi per la Regolarizzazione

Procedura iterativa

Algoritmo

β ← (0, 0, ..., 0);Per i ← 1, ..., t (denota il numero di iterazioni)

τ ← 1 (fisso il passo)β ← β + τ(Y − Kβ)

Parametro di regolarizzazione

τ non e importante per la regolarizzazione (esiste un τ ottimo fissato)t e fondamentale per la regolarizzazione e corrisponde a λ−1

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 35 / 44

Page 36: Lezione su Algoritmi per la Regolarizzazione

CROSS VALIDATION per Landweber

t e un parametro fondamentale percheDefinisce il numero di iterazioni e quindi la regolarizzazioneMi permette di calcolare automaticamente le t soluzioni precedenti (utileper CV)

Procedure con K-fold Cross ValidationSpezzo K in Ktrain e Ktest rispetto all’algoritmo di KCVPer i ← 1, ..., k

Per j ← 1, ..., tτ ← 1β ← β + τ(Y − Ktrainβ)ERR(i, j) = Ktestβ − Ytest

Calcolo l’errore di generalizzazione facendo la media per rigaTrovo topt che lo minimizza

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 36 / 44

Page 37: Lezione su Algoritmi per la Regolarizzazione

Vantaggi computazionali

Costi per la fase di training

Non e piu necessario invertire la matrice K o farne la decomposizione invalori singolariMi servono O(tN2) operazione per calcolare i coefficienti β

Costi per la validazione

La ricerca del parametro ottimo si fonde con il calcolo della soluzioneIl costo computazionale non aumentera nel caso in cui si voglia trovare ilparametro ottimo O(tkN2) (k e trascurabile, di solito 5 o 10)

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 37 / 44

Page 38: Lezione su Algoritmi per la Regolarizzazione

Procedura iterativa

ν-methodν = 1Per i ← 1, ..., t

u ← (i−1)(2i−3)(2i+2ν−1)(i+2ν−1)(2i+4ν−1)(2i+2ν−3)

w ← 4 (2i+2ν−1)(i+ν−1)(i+2ν−1)(2i+4ν−1)

β ← βi−1u(βi−1 − βi − 2) + wN (Y − Kβi−1);

ν e il parametro di qualificazionet in questo caso vale λ−2 quindi la velocita di convergenza del metodo emaggiore di landweber

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 38 / 44

Page 39: Lezione su Algoritmi per la Regolarizzazione

Esperimenti su dati reali

ProceduraRicampionamenti (Nr ) in training e test set (Bootstrap)Fase di validazione: 5CV su m ricampionamenti.Scelta del parametro ottimo: mediana degli m calcolati al passoprecedenteUso i restanti ricampionamenti per calcolare l’errore di generalizzazioneHo Nr −m errori di test, calcolo statistiche, media e deviazione standarddell’errore.

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 39 / 44

Page 40: Lezione su Algoritmi per la Regolarizzazione

Esperimenti su dati reali

ProceduraRicampionamenti (Nr ) in training e test set (Bootstrap)Fase di validazione: 5CV su m ricampionamenti.Scelta del parametro ottimo: mediana degli m calcolati al passoprecedenteUso i restanti ricampionamenti per calcolare l’errore di generalizzazioneHo Nr −m errori di test, calcolo statistiche, media e deviazione standarddell’errore.

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 39 / 44

Page 41: Lezione su Algoritmi per la Regolarizzazione

Esperimenti su dati reali

ProceduraRicampionamenti (Nr ) in training e test set (Bootstrap)Fase di validazione: 5CV su m ricampionamenti.Scelta del parametro ottimo: mediana degli m calcolati al passoprecedenteUso i restanti ricampionamenti per calcolare l’errore di generalizzazioneHo Nr −m errori di test, calcolo statistiche, media e deviazione standarddell’errore.

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 39 / 44

Page 42: Lezione su Algoritmi per la Regolarizzazione

Esperimenti su dati reali

ProceduraRicampionamenti (Nr ) in training e test set (Bootstrap)Fase di validazione: 5CV su m ricampionamenti.Scelta del parametro ottimo: mediana degli m calcolati al passoprecedenteUso i restanti ricampionamenti per calcolare l’errore di generalizzazioneHo Nr −m errori di test, calcolo statistiche, media e deviazione standarddell’errore.

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 39 / 44

Page 43: Lezione su Algoritmi per la Regolarizzazione

Esperimenti su dati reali

ProceduraRicampionamenti (Nr ) in training e test set (Bootstrap)Fase di validazione: 5CV su m ricampionamenti.Scelta del parametro ottimo: mediana degli m calcolati al passoprecedenteUso i restanti ricampionamenti per calcolare l’errore di generalizzazioneHo Nr −m errori di test, calcolo statistiche, media e deviazione standarddell’errore.

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 39 / 44

Page 44: Lezione su Algoritmi per la Regolarizzazione

Risultati

#Train #Test Dim #Resampl.Banana 400 4900 2 100B.Canc. 200 77 9 100Diabet. 468 300 8 100F.Solar 666 400 9 100German 700 300 20 100Heart 170 100 13 100Image 1300 1010 18 20Ringn. 400 7000 20 100Splice 1000 2175 60 20Thyroid 140 75 5 100Titanic 150 2051 3 100Twonorm 400 7000 20 100Wavef. 400 4600 21 100

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 40 / 44

Page 45: Lezione su Algoritmi per la Regolarizzazione

Risultati

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 41 / 44

Page 46: Lezione su Algoritmi per la Regolarizzazione

Risultati cont’d

LANDWEBER ν RLS TSVDBANANA 11.70± 0.68 10.67± 0.53 11.22± 0.61 11.74± 0.63σ = 1 t = 116 t = 70 t = 350 t = 301B.CANC. 25.38± 4.21 25.35± 4.24 25.12± 4.32 26.81± 4.32σ = 2 t = 5 t = 5 t = 41 t = 120DIABET. 23.70± 1.80 23.60± 1.82 24.40± 1.79 24.29± 0.2σ = 2 t = 18 t = 11 t = 400 t = 300F.SOLAR 34.27± 1.57 34.25± 1.59 34.31± 1.607 32.43± 0.90σ = 1 t = 25 t = 8 t = 51 t = 140GERMAN 23.20± 2.28 23.14± 2.34 23.37± 2.11 24.67± 2.60σ = 3 t = 119 t = 16 t = 600 t = 1150HEART 15.94± 3.37 15.48± 3.25 15.71± 3.20 15.58± 3.41σ = 12 t = 63 t = 16 t = 500 t = 170RINGN. 9.09± 0.89 3.09± 0.42 4.68± 0.7 2.85± 0.33σ = 3 t = 514 t = 37 t = 820 t = 510THYROID 4.53± 2.34 4.55± 2.35 4.48± 2.33 4.49± 2.21σ = 1 t = 65 t = 28 t = 100 t = 200TWONORM 2.39± 0.13 2.36± 0.13 2.42± 0.14 2.39± 0.13σ = 3 t = 20 t = 7 t = 100 t = 61

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 42 / 44

Page 47: Lezione su Algoritmi per la Regolarizzazione

Esperimenti: Classificazione facce

Patches di Immagini

Dati usati

2000 dati di training

Split: I dati per lavalidazione sonostati ricampionati(come sopra) esplittati in training etest

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 43 / 44

Page 48: Lezione su Algoritmi per la Regolarizzazione

Risultati facce

#TRAIN + #TEST 600+1400 700+1300 800+1200CLASSIFIERRBF-SVM 2.41 ± 1.39 1.99 ± 0.82 1.60 ± 0.71

σ = 800 C = 1 σ = 1000 C = 0.8 σ = 1000 C = 0.8ν-method 1.63 ± 0.32 1.53 ± 0.33 1.48 ± 0.34

σ = 341 t = 85 σ = 341 t = 89 σ = 300 t = 59

Laura Lo Gerfo (DISI) FMAS 18 maggio 2007 44 / 44