Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
DIFFERENZA TRA LDA REG. LOGISTICA:
Alcuni vantaggi rispetto alla regressione logistica ci sono quando le assunzioni di distribuzione gaussiana delle x reggono e quando regge il fatto che la varianza è uguale tra le classi; è un vantaggio perché è più flessibile dato che utilizza solo medie e varianze. Tra i due metodi, quando l'assunzione di distribuzione normale delle x non regge viene preferita la regressione logistica.
D'altro canto, KNN calcola solo una probabilità condizionale sulla base delle caratteristiche dei vicini. Tendenzialmente si utilizza di più il KNN ma ha comunque dei limiti, dove quello più grande è la cross-validation, cioè l'identificazione delle K; ma la probabilità condizionale calcolata non ci dice se, facendo riferimento all'esempio precedente, l'altezza aiuta a classificare meglio rispetto al peso nel KNN, mentre la regressione logistica e l'LDA invece.
CAPITOLO 5: TECNICHE DI RICAMPIONAMENTO
Abbiamo detto che nella statistica moderna spesso si validano e si testano i metodi nel data set facendo una sorta di splitting dei dati, cioè trattando alcuni dati come osservati e altri come non osservati e il metodo più semplice per farlo era dividere il campione in due, in un training sample e testing sample, applicare il modello nel training sample per poi stimare i parametri necessari da utilizzare per fare classificazione nel testing sample.
Metodi di ricampionamento
Oggi vedremo come utilizzare i metodi di ricampionamento (= resampling) e quindi la divisione del training e testing sample per fare classificazione. Questi metodi permettono di ottenere informazioni che non sarebbero disponibili se facessimo il fitting solo sul nostro campione.
quindi cerchiamo di estrarre ripetutamente dei campioni dal training set e sui sottocampioni che estraiamo analizziamo il modello. Questi approcci sono computazionalmente molto costosi, perché da un campione a disposizione noi stimiamo il modello su dei sottocampioni e poi valutiamo la bontà di classificazione di quel modello (stiamo riapplicando il modello a tanti sottocampioni). Esistono due macrometodi fondamentali per fare ricampionamento: Cross-validation: 1. estensione della divisione in training e testing sample; 2. Bootstrap (che non vedremo). 5.1 Cross Validation. Per parlare di cross-validation dobbiamo fare una distinzione tra il test error rate e il training error rate. Test error rate: errore che facciamo classificando sui dati di test; Training error rate: errore che faccio riclassificando o fittando la variabile risposta all'interno del training sample. Il training error rate è più basso del test error rate perché sto facendo previsionefuori campione nel testing sample. Quindi se il dataset a disposizione non è ampissimo per poter stimare il testing sample è utile utilizzare tecniche di ricampionamento per valutare la bontà del campione. 5.1.2 Validation set approach. La prima metodologia che vediamo nella cross-validation è il validation set approach. Immaginiamo di voler stimare il Test error rate, quindi splitto il campione per fare validation. Il validation set è: ho un campione di n osservazioni, lo spezzo in training set (la utilizzo per stimare o comunque per far girare il modello) e validation set o testing set. Quindi viene stimato il modello sulla parte di training e il modello fittato è quello che viene utilizzato per fare previsioni sulla variabile risposta, che, se è una variabile quantitativa, il mean square error (MSE) è il metodo per valutare la bontà di previsione, cioè quanto sto sbagliando nel testing sample rispetto alla previsione.Esempio 1. Facciamo finta di avere una y che è l'ingaggio di un calciatore e facciamo finta che x1 sia l'età, x2 il ruolo e x3 il numero di partite in Serie A.
Con il metodo del validation set noi conosciamo le n (numero di osservazioni) di y del nostro campione e prendiamo una parte di campione, stimando il modello di interesse (es. regressione lineare o altro metodo di classificazione).
Stimiamo il modello di interesse con un metodo di classificazione e prevediamo la y fuori campione, cioè in questo caso prevediamo l'ingaggio del calciatore nell'osservazione 4 e 5.
Facciamo finta di aver stimato uno stipendio di 3.1 e 3.7 per il secondo, dove il MSE (media dell'errore al quadrato rispetto all'osservazione) si calcola così:
Quando una variabile risposta è quantitativa (es. nel caso della regressione lineare) il metodo per valutare la bontà di previsione di un modello è il MSE.
Avevamo visto, quando abbiamo introdotto il
polinomio nella regressione lineare, che avremmo potuto stimare la relazione tra i cavalli di una macchina e il consumo (miglia x gallone) e in quel caso ci interessava sapere il grado del polinomio da introdurre nella nostra retta di regressione.
Avremmo potuto, in quel caso, spezzare il nostro campione e fare previsione utilizzando di volta in volta un grado crescente di polinomi. Quindi, sulla base del validation set, spezzando il campione e utilizzando di volta in volta un regressore diverso e andando a vedere come prevede questo modello fuori campione, possiamo calcolare il MSE per ognuno dei gradi del polinomio.
PROCEDIMENTO: Prima di tutto, quindi, stimo questi modelli all'interno del training sample, utilizzo i beta stimati per fare previsione nel testing sample e vado a vedere per ognuno dei k qual è il MSE, che ovviamente deve essere il minore possibile.
Osservando la figura, se utilizzo training e testing set singoli, considerando che il MSE è alto solo per il primo
grado di polinomio e tendenzialmente molto simile per gli altri, cosa si può dedurre dal grafico? Che la relazione non è lineare ma polinomiale dal secondo grado in su e in termini pratici questo significa che aggiungendo complicazioni al modello non mi dà vantaggi e che quindi potrei fermarmi ad una determinata osservazione, in questo caso il parametro di scelta è il grado del polinomio. Osservando la figura, se utilizzo training e testing set multipli, utilizzando diverse proporzioni (una parte training e una parte testing con MSE molto alto), deduco che questa metodologia è molto utile ma molto variabile nei risultati, quindi potrebbe portare a dei problemi che vengono poi superati con tecniche di ricampionamento. 5.1.2.1 LIMITAZIONI del Validation set approach. 1. La stima di validazione della previsione può essere molto variabile a seconda del campione che prendo; 2. Non uso mai tutte le osservazioni per stimare il modello ma ne sto sempre ignorando.unaparte e magari in questa parte potrebbe esserci un outlier ecc. Quindi cerchiamo di andare oltre questo approccio, anche se viene utilizzato di base.
5.1.2 Leave-one-out cross-validation. Questo metodo è strettamente collegato al validation set approach, ma in questo caso si lascia fuori un'osservazione. Anche in questo caso separiamo il campione iniziale ma lo separiamo più volte. Quindi, questo metodo utilizza di volta in volta tutta l'informazione del campione per fare training tranne per una osservazione che viene utilizzata per fare testing.
Esempio 1. Immaginiamo di avere un campione con 10 osservazioni, per le quali abbiamo una x e y e ovviamente prevedere o classificare la y. L'LOOCV nel primo giro utilizza l'informazione da 1 a 9 per prevedere 10, poi nel secondo giro utilizza tutta l'informazione per prevedere 9, poi prevede la otto e così via per ognuna delle osservazioni. Quindi fa n-1 sottocampioni.
Esempio 2. Immaginiamo di avere un
campione con 10 osservazioni, per le quali abbiamo una x e y e ovviamente prevedere o classificare la y. Il validation set utilizza il 70% dell'osservazione come training set e le restanti tre per fare validation. LOOCV invece mi tiene fuori una osservazione una alla volta e su quella che resta fuori faccio previsione. Nell'LOOCV tutta l'informazione mi aiuta a prendere una decisione. MSE è singolo. Nel caso dell'LOOCV, cioè se faccio previsione solo sul valore dieci, farò l'MSE solo su quel valore e così via, fino a trovare dieci MSE singoli. Questi MSE dovrò riportarli poi ad un unico valore siccome dovrò calcolarlo per ogni k e quindi avrò tantissimi MSE. Quindi, siccome avrò n previsioni singole, faccio la media di tutti gli MSE. Col CV vado a scegliere il numero di k ottimale, cioè più basso è il mio MSE medio, migliore è la previsione di quel modello. Graficamente la LOOCV
può essere rappresentata così (utilizzo il celeste per prevedere l'arancione, che avrò n volte): SVANTAGGIO DELL'LOOCV: Il grosso svantaggio di questa metodologia è la complessità computazionale, perché tendenzialmente facciamo il fitting del modello n volte, quindi potrebbe essere molto pesante, soprattutto se il modello di classificazione/previsione è complicato. VANTAGGIO DELL'LOOCV: Il LOOCV potrebbe, però, essere utilizzato in molti casi. 5.1.2 K-fold cross-validation. Per ovviare al problema si può applicare una metodologia, chiamata k-fold cross validation, che è, appunto, un'alternativa. Abbiamo due metodologie per farlo: una più utilizzata e una particolare. 5.2.2.1 VERSIONE PIÙ DIFFUSA. Nella versione più diffusa del k-fold, individuo una classe come testing e utilizzo tutti i dati nelle altre classi per fare training (l'opposto di quello visto ieri). Immaginiamo diavere nosservazioni che vogliamo dividere in quattro classi: Quindi in questa versione utilizziamo più informazione, in questo caso utilizzo l'informazione datre classi, per prevedere un'unica classe, e lo faccio escludendo di volta in volta una classe. Per ognuna delle repliche se y è quantitativa ho dei MSE, se è qualitativa ho ER. Rispettivamente potrei avere due CV diversi a seconda del tipo della variabile: Quella che applicheremo di più tra le versioni è questa, che anche se prevede la stima di più modelli, è computazionalmente più rapida perché invece di stimare n modelli su n dataset l'iscriviamo su k dataset e si presume che k < n, perché se k = n, l'LOOCV e il K-FOLD sono praticamente identici. 5.2.2.2 VERSIONE PARTICOLARE. Questa metodologia prevede sempre lo splitting del campione iniziale che è grande N, che non s