Cross validazione Strumenti quantitativi per la gestione
by user
Comments
Transcript
Cross validazione Strumenti quantitativi per la gestione
3/16/2015 Cross validazione (1) Cross validazione Strumenti quantitativi per la gestione Emanuele Taufer file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 1/15 3/16/2015 Cross validazione (1) Metodi di ricampionamento I metodi di ricampionamento includono una serie di tecniche statistiche computazionali che attraverso la ripetizione di 1. campionamento 2. adattamento di un modello su uno stesso training set, permettono di ottenere ulteriori informazioni sul modello adattato La cross validazione può essere utilizzata per stimare il test MSE, o in generale qualsiasi misura di precisione, di una tecnica di statistical learning al fine di valutarne la performance (valutazione del modello) o selezionarne il livello di flessibilità (selezione del modello). file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 2/15 3/16/2015 Cross validazione (1) Cross validazione Vediamo tre tecniche di base che possono essere applicate sia a problemi di regressione che di classificazione: 1. uso del set di validazione (Validation set approach) 2. Leave-one-out cross validation (LOOCV) 3. k-fold cross validation file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 3/15 3/16/2015 Cross validazione (1) Validation set approach Consiste nel dividere in modo casuale il set di dati disponibile in due parti: 1. un training set 2. un set di validazione (o hold-out set) Un modello di statistical learning è adattato sui training data e successivamente utilizzato per la previsione con i dati del set di validazine La misura del test error risultante (tipicamente l’MSE in caso di regressione) fornisce una stima del reale test error. Infatti il set di validazione è frutto di una procedura di campionamento e pertanto differenti campionamenti risultano in differenti stime del test error file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 4/15 3/16/2015 Cross validazione (1) Esempio: Auto data set Sinistra: un campione Destra: più campioni file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 5/15 3/16/2015 Cross validazione (1) Svantaggi del Validation set approach 1. Il metodo tende ad avere elevata variabilità ossia i risultati possono cambiare sostanzialmente al variare del test set selezionato 2. Solo una parte delle unità disponibili è utilizzata per stimare f . Questo può portare a minor precisione nella stima di f e sovra-stima del test error Le due tecniche di cross validazione che vediamo di seguito, cercano di ovviare a questi problemi file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 6/15 3/16/2015 Cross validazione (1) LOOCV Anche la LOOCV divide il set di osservazioni in due parti. Tuttavia, invece di creare due sottoinsiemi di dimensioni paragonabili, si procede come segue: 1. una singola osservazione (x , y ) è utilizzata per la validazione e le restanti osservazioni {(x , y ), … , (x , y )} compongono il training set. 1 2 2 n 1 n 2. è stimata sulla base delle n − 1 osservazioni del training set 3. si effettua la previsione y^ utilizzando x . Poiché (x , y ) non è stato utilizzato nella stima dif , f 1 1 1 1 2 M S E 1 = (y 1 − y ^1 ) fornisce una stima del test error . Ma anche se M SE è imparziale per il test error, è una stima scadente perché è molto variabile, in quanto si basa su una singola osservazione (x , y ) . 1 1 1 file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 7/15 3/16/2015 Cross validazione (1) 4. La procedura è ripetuta selezionando (x , y ) per la validazione , una nuova stima di f è fatta sulla base delle n − 1 osservazioni {(x , y ), (x , y ), . . . , (x , y )}, e calcolando M S E = (y − y ^ ) . 2 1 1 3 3 n 2 n 2 2 5. 2 2 La ripetizione di questo approccio n volte produce n M SE , M S E , … , M S E . 1 6. n La stima LOOCV per il test MSE è la media degli n M SE disponibili: 1 C V(n) = file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) n n ∑ M S Ei i=1 8/15 3/16/2015 Cross validazione (1) Schema LOOCV file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 9/15 3/16/2015 Cross validazione (1) Vantaggi LOOCV La LOOCV ha alcuni vantaggi rispetto al validation set approach: 1. utilizzando n − 1 unità per la stima di f ha meno bias e di conseguenza, l’approccio LOOCV non tende a sovrastimare il test error 2. poichè non vi è casualità nella scelta del test set non vi è variabilità nei risultati per lo stesso data set iniziale. La LOOCV può essere intensiva dal punto di vista computazionale. Nel caso della regressione lineare tuttavia esistono forumule computazionali dirette a bassa intensità computazionale file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 10/15 3/16/2015 Cross validazione (1) k-fold CV In questo approccio si divide casualmente l’insieme delle n osservazioni in k gruppi, o folders, all’incirca di uguale dimensione. Il primo folder viene considerato come un validation set e f è stimata sui restanti k − 1 folder. L’errore quadratico medio, M SE , è poi calcolato sulle osservazioni del folder tenuto fuori 1 Questa procedura è ripetuta k volte; ogni volta scegliendo un folder differente per la validazione ottenendo k stime del test error, M S E1 , M S E2 , … M S Ek La stima k-fold CV viene calcolata facendo la media questi valori, 1 C V(k) = k k ∑ M S Ei i=1 Il metodo ha il vantaggio di essere meno intensivo dal punto di vista computazionale se k << n. Inoltre la k-fold CV tende ad avere minore variabilità (su differenti data set di dimsensione n ) rispetto al LOOCV file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 11/15 3/16/2015 Cross validazione (1) Schema k-fold CV file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 12/15 3/16/2015 Cross validazione (1) LOOCV e k-fold CV Sinistra: LOOCV Destra: 10-fold CV file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 13/15 3/16/2015 Cross validazione (1) Simulazioni Blu: vero test error Nero (tratteggiato): test error LOOCV Arancio: test error 10-fold CV file:///C:/Users/emanuele.taufer/Dropbox/3%20SQG/Classes/5a_BSSCV.html#(1) 14/15 3/16/2015 Cross validazione (1) 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/5a_BSSCV.html#(1) 15/15