S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 20 Cenni di regressione non-parametrica funzione non-lineare non-linearità nei parametri o nelle variabili overfitting funzioni linearizzabili funzione additiva bias-variance tradeoff funzioni parametriche e nonparametriche smoother kernel e bin smoother kernel smoother gaussiano k-nearest neighbors cross-validation 10-fold cross-validation smoother multidimensionale curse of dimensionality GAM PPR MARS 20.1 – Funzioni non-lineari e misura dell’adattamento 20.2 - La contrapposizione tra distorsione e variabilità 20.3 - Funzioni non-parametriche - smoother 20.4 - Smoother per due o più variabili esplicative 20.1 Funzioni non-lineari e misura dell’adattamento Nell’approccio classico alla regressione lineare semplice e multipla si ipotizza che la relazione tra la variabile dipendente e le variabili esplicative possa essere sintetizzata attraverso una funzione lineare nei parametri. Generalmente vengono comunque adottati modelli di regressione che sono lineari anche rispetto alle variabili. In alcuni casi, tali assunzioni di linearità rappresentano una eccessiva semplificazione. ESEMPIO 20.1.1 – Relazioni non-lineari Si pensi alla relazione tra l’Età (X) di un individuo e il suo Tasso di crescita nella statura (Y). È evidente che la relazione tra queste due variabili nel primo anno di vita è molto diversa da quella che si ha quando l’individuo è adulto. In generale, si è osservato che la relazione tra queste due variabili può essere espressa più correttamente attraverso una funzione esponenziale negativa, ossia considerando come componente deterministica la funzione non-lineare f (X ) = exp(− bX ) . Poiché le determinazioni delle variabili sono note (anche in questo capitolo considereremo variabili esplicative non-stocastiche) mentre i parametri sono incogniti, è evidente che ipotesi di non-linearità sui parametri sono più difficili da trattare matematicamente. In effetti, se la non-linearità riguarda le variabili esplicative e non i parametri abbiamo una situazione relativamente semplice: in tutti i casi in cui la funzione adottata è fissata, il procedimento di calcolo dei parametri mediante il metodo di interpolazione dei minimi quadrati è del tutto simile a quello visto per la regressione lineare semplice e multipla (si veda l’esempio 20.1.2). Se invece si considera una funzione non-lineare nei parametri, il calcolo dei parametri risulta assai complesso e necessita spesso di procedure computazionali iterative. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 1 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 ESEMPIO 20.1.2 – Esempi di funzioni lineari nei parametri e non-lineari nelle variabili Esempi di funzioni non-lineari nelle variabili e lineari nei parametri: f (X )=a + bX+cX2 oppure f (X1,X2 ) =a + bX14 + c log(X2 ) . Si noti che i parametri presenti (a, b, c) sono tutti lineari di primo 2 4 grado. Se conosciamo i valori assunti dalla X allora conosciamo anche i valori X , X e log(X). Se per 2 esempio poniamo Z = X e sostituiamo nella prima funzione otteniamo f (X )=a + bX+cZ , poiché i valori di Z sono noti allora la funzione è lineare nei parametri e nelle variabili (si veda anche l’ultima nota del par. 19.2). Come mostrato nell’esempio 20.1.2, se abbiamo una funzione lineare nei parametri ma non nelle variabili, possiamo facilmente trasformarla in una funzione lineare sia nelle variabili che nei parametri. Tale caso non introduce quindi nulla di nuovo dal punto di vista della stima dei parametri, rispetto a quanto già detto nei capitoli 16, 17 e 19. D’altra parte si possono porre dei nuovi problemi che in precedenza non avevamo mai considerato, ciò è chiarito meglio dal successivo esempio. ESEMPIO 20.1.3 – Adattamento di funzioni non-lineari nelle variabili Consideriamo il seguente grafico di dispersione, relativo alla variabile dipendente Y e alla variabile esplicativa X, in cui abbiamo anche tracciato la retta di regressione stimata. 3000 2000 2000 1000 1000 0 0 Y Y 3000 -1000 -1000 -2000 -2000 -3000 -3000 -4000 -25 -20 -15 -10 -5 0 5 10 15 20 -4000 -25 -20 -15 -10 -5 0 5 10 15 20 X X Figura 20.1.2 Figura 20.1.1 L’equazione della retta di regressione stimata, rappresentata nella figura 20.1.1, è data da: Y = -337,1 + 116,8 X Non è però difficile notare nel grafico che la relazione tra le due variabili potrebbe essere meglio descritta da una funzione non-lineare. Se consideriamo la seguente polinomiale di grado 3 Y = -213 + 80,2 X - 1,3 X2 + 0,22 X3 otteniamo il grafico di figura 20.1.2. Tale funzione sembra cogliere in maniera soddisfacente le caratteristiche della relazione tra la Y e la X. D’altra parte potremmo considerare una funzione ancora più complessa per ottenere un adattamento ancora maggiore ai dati osservati. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 2 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 3000 2000 2000 1000 1000 0 0 Y Y 3000 -1000 -1000 -2000 -2000 -3000 -3000 -4000 -25 -20 -15 -10 -5 0 5 10 15 -4000 -25 20 -20 -15 -10 X -5 0 5 10 15 X Figura 20.1.3 Figura 20.1.4 Nella figura 20.1.3 abbiamo rappresentato la polinomiale di grado 4: Y = -3,1 + 54,1 X -8,6 X 2 + 0,45 X3 + 0,03 X 4 mentre nella figura 20.1.4 abbiamo considerato la polinomiale di grado 5: Y = -63,4 + 8,9 X -5,4 X2 + 1,2 X3 + 0,01 X 4 - 0,002 X5 Nell’esempio precedente possiamo osservare che, anche considerando una sola variabile esplicativa, si può scegliere un modello lineare nei parametri (ma non nelle variabili), in grado di sintetizzare una complessa relazione non-lineare tra la variabile dipendente e quella esplicativa. In alcuni casi, anche le funzioni che sono non lineari nei parametri si possono ricondurre, dopo una opportuna trasformazione delle variabili, a essere lineari nei parametri, come già mostrato nell’ultima nota del par. 19.2, anche se questa operazione ha delle implicazioni importanti sulla distribuzione dell’errore. ( Ad esempio, la funzione: f ( X ) = exp − bX 2 ) apparentemente non lineare può essere [ ( )] facilmente resa lineare applicando il logaritmo in base naturale: ln exp − bX 2 = −bX 2 .. Aumentando la complessità del modello (nell’esempio 20.1.3, il grado della polinomiale) si aumenta l’adattamento della funzione ai dati. Questo però non è necessariamente un vantaggio, anche se alla luce di quanto detto nei precedenti capitoli questa affermazione può apparire alquanto strana: in fondo, nel trattare la regressione lineare, ci eravamo sempre posti come obiettivo fondamentale quello di aumentare il più possibile l’adattamento della funzione di regressione ai dati. Occorre a questo punto introdurre una nozione nuova: l’eccessivo adattamento della funzione ai dati, detto anche overfitting. Se osserviamo la figura 20.1.4, possiamo in effetti notare nella parte iniziale della curva, un maggiore adattamento ai primi due punti del grafico (quelli con ascissa più bassa). L’andamento della curva sembrerebbe però suggerire che per valori molto bassi della X ci si debba aspettare una rapida, quanto improbabile, crescita della Y. In effetti, le polinomiali di grado elevato tendono ad avvicinarsi molto ai punti del grafico di dispersione ma in questo modo tendono anche ad amplificare l’errore presente nei dati. E’ il problema noto come bias-variance tradeoff che descriviamo in dettaglio nel paragrafo successivo. La funzione che cerchiamo deve invece cogliere solo gli aspetti fondamentali della relazione tra le due variabili, trascurando gli aspetti meno significativi o accidentali: solo in questo modo si può ottenere una funzione “generalizzabile”, ossia una funzione che dovrebbe mantenere un buon adattamento anche considerando un altro campione di dati o tutta la popolazione. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 3 20 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Tale problema non si era mai posto nei precedenti capitoli, perché avevamo sempre utilizzato delle funzioni talmente rigide da impedire qualsiasi forma di overfitting: in tale situazione potevamo porci come obiettivo semplicemente l’individuazione della funzione lineare che presentava il massimo adattamento. Nel momento in cui introduciamo funzioni più duttili occorre riconsiderare seriamente questo aspetto, tenendo conto che il nostro obiettivo non può più essere solo quello di ricercare la funzione con il massimo adattamento. Sappiamo infatti che aumentando la complessità della funzione utilizzata si ottiene un maggiore adattamento ai dati osservati ma al contempo si può ottenere un modello di difficile interpretazione e che potrebbe avere scarsa capacità previsiva. Nota In realtà anche nel capitolo 19 abbiamo in qualche modo già affrontato questa problematica: abbiamo infatti visto che aumentando il numero delle variabili tende ad aumentare anche l’adattamento del modello ai dati (misurato attraverso il coefficiente di determinazione multiplo) ma che questo può non essere conveniente. Il coefficiente di determinazione multiplo corretto (19.5.2) è stato introdotto proprio per tener conto del numero di variabili utilizzate, con l’assunzione implicita che un modello più semplice è preferibile ad uno più complesso se ciò non porta ad una significativa riduzione dell’adattamento. Occorre anche considerare che la complessità di un modello dipende da diversi fattori, ad esempio un modello additivo è meno complesso di un modello non-additivo. Chiariamo il senso di questi termini. Se abbiamo due o più variabili esplicative e nell’espressione del modello le variabili compaiono come singoli termini, non vi sono cioè termini moltiplicativi o di interazione tra due o più variabili esplicative, la somma degli effetti delle singole variabili esplicative ci fornisce il valor medio della variabile dipendente Y. Una espressione generale di funzione additiva è data da f(X1, X 2, X3..., X J) = a + J ∑ β jf j (X j ) j =1 in cui f1, f2, f3 ecc. sono funzioni delle J variabili esplicative. Un modello in cui la componente deterministica è una funzione additiva delle variabili esplicative, viene detto additivo (nelle variabili). Le funzioni fj possono essere note a priori, come nel modello di regressione lineare dove sono poste tutte uguali a funzioni identità f j X j = X j , oppure non note, come vedremo nel paragrafo 20.4. ( ) Una funzione lineare nei parametri ma non additiva è ad esempio la funzione Y = a + bX1 + cX 2 + dX1 X 2 . Funzioni che sono non-additive e non-lineari nelle variabili possono essere estremamente flessibili, come mostrato nella figura 20.1.5 in cui abbiamo graficizzato la funzione Y = 5 X1 + 0.01X 22 − 0.1X 12 X 2 . S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 4 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Figura 20.1.5 – Grafico di una funzione non-additiva, con due variabili esplicative Se consideriamo tutte le possibili funzioni lineari nei parametri o linearizzabili abbiamo in effetti a disposizione una grandissima varietà di funzioni, tra cui è probabile che esista una funzione che si adatti in modo soddisfacente ai dati osservati e che potrebbe essere adeguata a descrivere la relazione tra la variabile dipendente e quelle esplicative. Se la funzione più adatta non è lineare e non è linearizzabile, ma è nota, è comunque possibile applicare degli opportuni metodi di calcolo per la stima dei parametri. D’altra parte se le conoscenze del fenomeno non sono sufficienti ad individuare un preciso schema interpretativo, non vi è una metodologia efficace in grado di individuare, tra tutte le possibili funzioni (lineari o linearizzabili), quella che meglio si adatta ai nostri dati. Oltre a ciò, occorre considerare che alcune funzioni, come ad esempio le polinomiali, possono adattarsi molto bene ai dati ma al prezzo di una forte instabilità e di una complessa interpretabilità del modello. Questo implica che piccole variazioni nei dati possono generare polinomiali completamente diverse. Si confrontino, a questo proposito, i coefficienti delle polinomiali dell’esempio 20.1.3. 20.2 - La contrapposizione tra distorsione e variabilità Ipotizziamo che il fenomeno in esame sia descritto in maniera “adeguata” dal modello: Y = f (X) + ε in cui per semplicità stiamo considerando una sola variabile esplicativa e supponiamo inoltre che sia E(ε ) = 0 . Supponiamo inoltre di avere a disposizione un campione di n osservazioni: D = {(x 1 , y 1 ), (x 2 , y 2 ),..., (x n , y n )} S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 5 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Dato il campione D, il nostro scopo è quello di approssimare la funzione originaria incognita f tramite una funzione approssimante g: ˆ = g( X ) Y Per valutare quanto la funzione g sia “vicina” alla vera funzione f, si utilizza, in analogia a quanto visto per gli stimatori di parametri della popolazione (si veda il par. 11.4), l’errore quadratico medio, che in questo contesto indicheremo con la sigla EQM. L’errore quadratico medio nel nostro campione sarà quindi EQM = n 1 n (y i − g (x i ))2 = 1 ∑ (y i − ŷ i )2 ∑ n i =1 n i =1 Per valutare la bontà della funzione approssimante g, quello che ci interessa non è l’EQM corrispondente al singolo risultato campionario, bensì il suo valore atteso nell’universo dei campioni di dimensione n: n ⎧1 n (y i − yˆ i )2 ⎫⎬ = 1 ∑ E(y i − yˆ i )2 ∑ ⎩ n i=1 ⎭ n i=1 E{EQM} = E⎨ (20.2.1) Dove il valore atteso E {EQM } si riferisce alla media dei diversi risultati dell’EQM ottenuti da tutti i campioni D che compongono l’universo campionario. D’altra parte si ha che: { } { } { } { } 2 2 2 E (y i − yˆ i ) = E (y i − f ( x i ) + f ( x i ) − yˆ i ) = E (y i − f ( x i ))2 + E (f ( x i ) − yˆ i ) + ˆ i )} + 2 E{(y i − f ( x i ))(f ( x i ) − y Poiché il doppio prodotto è nullo, alla fine otteniamo: { } {} { E (y i − ŷ i ) = E ε 2i + E (f ( x i ) − ŷ i ) 2 2 } Quindi, considerando i valori attesi, l’errore quadratico medio può essere scomposto come la { } { } varianza dell’errore (infatti, Var (ε ) = E ε 2 − [E (ε )] = E ε 2 poiché per ipotesi E (ε ) = 0 ) 2 più l’errore quadratico medio tra i valori medi della Y, f (x i ) , e quelli predetti dal modello. Questo ultimo termine si può scomporre in modo simile: { } { } { } { } E (f ( x i ) − yˆ i ) = E (f ( x i ) − E{yˆ i }+ E{yˆ i }− yˆ i ) = E (f ( x i ) − E{yˆ i }) + E (E{yˆ i }− yˆ i ) + ˆ i })(E{yˆ i }− yˆ i )} 2 E{(f ( x i ) − E{y 2 2 2 2 Considerando che il doppio prodotto è nullo, l’espressione diventa: { } E (f(x i ) − ŷ i ) = B (ŷ i ) + Var {ŷ i } 2 2 dove B (ŷ i ) è la distorsione o bias tra la vera funzione e quella stimata. Quindi otteniamo che { } E (y i − ŷ i ) = Var {ε} + B (ŷ i )2 + Var {ŷ i } 2 (20.2.2) Per minimizzare la (20.2.1), ossia il valore atteso dell’EQM, dobbiamo minimizzare l’espressione precedente per ogni i, tenendo conto che la varianza dell’errore è un dato esogeno, e pertanto non può essere ridotto. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 6 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Quindi si tratta di minimizzare contemporaneamente la distorsione e la varianza, ma ciò non è affatto semplice. In effetti, per minimizzare la varianza basta scegliere una funzione approssimante costante yˆ i = c , dove c è una costante qualsiasi, in tal modo la varianza sarà necessariamente uguale a zero mentre la distorsione sarà necessariamente molto alta. D’altra parte se il nostro modello interpola perfettamente i dati del campione (ciò è possibile se non vi sono valori uguali delle xi) allora avremo che E {ŷ i } = f (x i ) e quindi { B(ŷ i ) = E (f (x i ) − E {ŷ i }) 2 2 }= 0 Mentre la Var {yˆ i } diviene uguale alla Var{ε } , che può essere in alcuni casi piuttosto elevata. Tale problema viene definito nella letteratura inglese bias-variance tradeoff: minimizzare eccessivamente il bias può far aumentare troppo la varianza e viceversa. Come si può vedere dalla figura 20.2.1, l’uso di modelli troppo complessi (overfitting) produrrà una bassa distorsione ed una elevata varianza, mentre l’utilizzo di modelli troppo semplici (underfitting) produrrà una elevata distorsione e una bassa varianza. Avendo a disposizione solo un campione, non si può conoscere la soluzione ottimale; soluzioni accettabili possono essere individuate tramite metodologie quali ad esempio la cross-validation, di cui diamo cenno nel paragrafo successivo. EQM E{ EQM } EQM nel campione underfitting modello migliore overfitting complessità Figura 20.2.1 – Confronto tra il valore atteso dell’EQM e il valore calcolato nel campione, al variare della complessità del modello. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 7 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 20.3 - Funzioni non-parametriche - smoother Consideriamo innanzitutto una applicazione dell’approccio parametrico classico a dei dati reali. ESEMPIO 20.3.1 – Indagine sul diabete mellito In un’indagine sul diabete mellito si vuole indagare la dipendenza del livello del siero C-peptide da altre variabili, tra cui l’età e il deficit basico. Il logaritmo della concentrazione del C-peptide è la variabile dipendente (per maggiori dettagli cfr. Hastie e Tibshirani 1990). Nel grafico di dispersione di Figura 20.3.1 abbiamo considerato come variabile esplicativa l’età riportando sia la retta di regressione di equazione: f(X) = 1,377 + 0,019 X sia la polinomiale di equazione: 2 3 f(X) = 1,05 + 0,170 X + 0,017 X + 0,001 X . Si può notare un evidente miglioramento nell’adattamento ai dati utilizzando la polinomiale; questo modello mette in luce una relazione tra l’età e il logaritmo della concentrazione C-peptide crescente sino a circa 7 anni e poi pressoché costante. 2,00 1,90 1,80 retta di regressione 1,70 Y 1,60 1,50 1,40 1,30 Polinomiale 1,20 1,10 1,00 0 2 4 6 8 10 12 14 16 X Figura 20.3.1 - Grafico di dispersione e funzioni parametriche Nei capitoli precedenti, per descrivere il tipo di relazione esistente tra la variabile dipendente e le variabili esplicative, si è innanzitutto ipotizzata una generica funzione parametrica, quindi si sono determinati i valori dei suoi parametri mediante il metodo dei minimi quadrati in modo da trovare la funzione che si “accosta meglio” ai dati. In sostanza, la scelta della funzione da adottare avviene necessariamente nel momento iniziale, prima del calcolo dei parametri. ESEMPIO 20.3.2 – Funzione parametrica Se assumiamo che la relazione tra la Y e la X può essere espressa da una funzione esponenziale negativa f(X) = exp(bX) allora il problema diventa la determinazione del parametro b in modo che la funzione si accosti il più possibile ai dati osservati. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 8 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Un diverso approccio di analisi è quello che prende il nome di regressione nonparametrica. Questa tecnica utilizza in genere opportune funzioni smooth (lisce, regolari) dette smoother, e si basa sull’asserto che devono essere i dati a mostrarci la forma funzionale più appropriata. In sostanza, non si definisce a priori la funzione adatta a descrivere la relazione, utilizzando i dati solo per la determinazione dei parametri, bensì si adotta una metodologia che sfrutti le osservazioni anche per la definizione stessa della funzione da utilizzare. Per descrivere tali metodologie è necessario però innanzitutto introdurre il concetto di smoother. Data una variabile dipendente Y e K variabili esplicative X1, X2, ..., XK , chiameremo smoother una funzione s(X1, X2, ..., XK) che riproduca l’andamento della variabile Y al variare delle variabili esplicative, con una variabilità inferiore a quella osservata. Una caratteristica comune a quasi tutti gli smoother è la natura non-parametrica: non si assume cioè una forma funzionale rigida. Per semplicità soffermiamoci inizialmente al caso di una sola variabile esplicativa X e consideriamo il corrispondente diagramma di dispersione. Se la variabile X è discreta e per ciascun valore della X abbiamo una distribuzione di valori di Y, allora un possibile smoother è la spezzata di regressione, che associa ad ogni xi la media della Y nelle unità che presentano xi, ossia Ma(Y / X = xi). Tale funzione è stata già considerata nel paragrafo 6.8. Se la variabile X è continua, allora generalmente ogni xi non verrà osservato più di una volta e quindi non si ha a disposizione una distribuzione della Y per ogni xi. In tale situazione per costruire uno smoother si può determinare per ogni valore osservato xi un intervallo (o intorno) che lo contenga e quindi calcolare la media dei valori osservati della Y in tale intervallo. Naturalmente si possono determinare diversi smoother a seconda di come viene calcolata la media delle Y per ogni intervallo e di come vengono definiti gli intervalli. Il metodo più semplice, ma anche più grossolano, consiste nel suddividere il carattere X in classi di uguale ampiezza, quindi all’interno di ciascuna classe calcolare il valore medio di Y. Data una suddivisione della variabile X in K classi, I1, I2, ..., IK, si definisce bin smoother : (20.3.1) s(x) = media (y i ) per x∈ Ij. i ∈I j Lo smoother che si ottiene è una funzione a “scalini” di scarsa flessibilità, come illustrato nella Figura 20.3.2. Il difetto principale di tale approccio deriva essenzialmente dalla suddivisione del campo di variazione della variabile in un numero fissato di intervalli non sovrapposti. Se vogliamo rendere più flessibile tale approccio, potremmo definire un intorno [x − h; x + h] per ciascun valore x, quindi definire s(x) come media di Y per tutti i punti corrispondenti a tale intorno. La funzione risultante sarà tanto più smooth quanto più grande sarà l’intorno, ossia quanto maggiore sarà il valore di h. Un approccio più soddisfacente consiste nel calcolare, all’interno di ogni intorno, una media ponderata di Y, con pesi decrescenti via via che ci si allontana dal valore di riferimento di X. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 9 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Nadaraya-Watson smoother. Data una funzione g(t) decrescente in |t|, per ogni x0 interno al campo di variazione di X, un kernel smoother può essere definito: n n 1 ⎛ x − xi ⎞ ⎛ x − xi ⎞ s(x) = g⎜ c0 = g⎜ con ⎟y i ⎟ (20.3.2) 1 1 i= i= c0 ⎝ λ ⎠ ⎝ λ ⎠ in cui c0 è una costante di normalizzazione, mentre λ è un parametro fissato a priori , chiamato bandwidth o parametro di smoothing, che, in sostanza, definisce l’ampiezza dell’intervallo intorno a x. ∑ ∑ Un altro tipo di kernel smoother è il seguente. Gasser-Müller smoother. Data una funzione g(t) decrescente in |t|, per ogni x0 interno al campo di variazione di X, un kernel smoother può essere definito: si 1 n ⎛ x −u⎞ s(x) = yi g⎜ ⎟du λ i=1 si −1 ⎝ λ ⎠ in cui s i = (x i + x i +1 ) / 2 ; s 0 = 0; s n = 1 ∑ ∫ La funzione g definisce il kernel, ossia il sistema dei pesi adottato nella media ponderata della Y. Ambedue gli smoother possono infatti essere scritti come: s(x) = ∑i=1ωi ,n (x )y i n Questo implica che è necessario scegliere g in modo che sia verificata la condizione: ∑i=1ωi ,n (x ) = 1 n È possibile scegliere tra numerose funzioni, tra le quali viene spesso utilizzata la funzione di densità della distribuzione Normale standardizzata, con media nulla e varianza unitaria. In particolare ⎛ z2 ⎞ 1 ⎟ g (z ) = exp⎜ − ⎜ 2 ⎟ 2π ⎝ ⎠ NOTA Il parametro λ definisce la semi-ampiezza dell’intervallo centrato nel punto stimare la funzione. Ad esempio, prendiamo la funzione Kernel triangolare: x 0 in cui si vuole ⎧1 − u − 1 ≤ u ≤ +1 g (u ) = ⎨ altrove ⎩ 0 che attribuisce pesi decrescenti via via che ci si allontana dal punto da stimare e dove in questo caso u = x − x i λ . Si voglia stimare la funzione nel punto x 0 = 3 e sia λ = 2 . Allora i pesi ( ) 3 − xi sono non nulli per tutti i valori osservati x i all’interno dell’intervallo 1 ≤ x i ≤ 5 che è 2 centrato nel punto x 0 = 3 e di semi-ampiezza pari a λ = 2 . 1− S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 10 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Ad ogni modo si dimostra che non è tanto la scelta della funzione g a determinare la qualità dell’approssimazione, quanto il valore del parametro di smoothing λ che, in sostanza, regola l’ampiezza del kernel. E’ anche interessante osservare che, sotto opportune condizioni, i kernel smoother sono degli stimatori consistenti della “vera” funzione f(X). Poiché questi stimatori sono delle somme ponderate di v.c., si può applicare il teorema del limite centrale e si può assumere che tali stimatori abbiano una distribuzione Normale. Per questa ed altre proprietà si veda Härdle (1994). ESEMPIO 20.3.3 – Kernel smoother e bin smoother Nella Figura 20.3.2 è riportato il grafico di dispersione del logaritmo della concentrazione del Cpeptide (Y) e dell’età (X) relativi ad un collettivo di individui e il corrispondente Kernel smoother e il Bin smoother. Entrambe le funzioni evidenziano tra i due caratteri una relazione prima crescente e poi costante. Figura 20.3.2 - Kernel e Bin smoothers 2,0 1,9 1,8 1,7 Kernel smoother Y 1,6 1,5 1,4 1,3 1,2 Bin smoother 1,1 1,0 -2 0 2 4 6 8 10 12 14 16 18 X Per comprendere meglio la logica del kernel smoother, concentriamoci sul valore xi e determiniamo il corrispondente valore s(xi). Si noti che per ogni xi calcoliamo un nuovo valore y i* = s(x i) che si ottiene come media ponderata della Y nell’intorno di xi. Nella figura 20.3.3 abbiamo messo in evidenza la logica di funzionamento dello smoother in riferimento al solo punto xi. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 11 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Figura 20.3.3 - Kernel smoother gaussiano Quando i pesi, rappresentati dalla densità della Normale, sono vicini allo zero, allora i corrispondenti valori di X non hanno peso nel calcolo di s(xi). Nel grafico abbiamo ipotizzato come sistema di pesi, una funzione di densità normale. Tale scelta corrisponde ad un kernel smoother gaussiano. Si noti che aumentando λ, il parametro dello smoother, è come se si aumentasse la varianza della Normale che definisce i pesi e, quindi, aumenta il numero di punti che entrano nel calcolo di s(xi) con un peso significativo, ottenendo uno smoother di forma più regolare. La stima Kernel della Y è stata quindi definita come una media ponderata della Y in un intorno di grandezza fissata della X. Il k-nearest neighbor smoother (k-NN) segue una logica leggermente diversa in quanto non è fissato l’intorno, bensì il numero (k) di unità vicine da considerare. In pratica, dato il valore xi si calcola la media dei valori della Y corrispondenti ai k valori di X più vicini a xi. Vi sono comunque molti altri tipi di smoother, non-parametrici o semi-parametrici, tra cui rivestono particolare interesse quelli basati sulle spline che godono di numerose utili proprietà. Una spline è una polinomiale a tratti costruita in tale modo che è smooth in corrispondenza ai punti di giunzione (nodi) tra le polinomiali. Le spline sono estremamente flessibili e possono essere utilizzate per approssimare qualsiasi tipo di funzione, provvisto un adeguato numero di nodi. In particolare, possiamo utilizzare come funzione approssimante g una funzione spline cubica, ossia una spline con le seguenti caratteristiche: ha un nodo in corrispondenza ad ogni valore osservato della X è una polinomiale cubica in ciascun intervallo [x i −1 ; x i ] ha due derivate continue Il problema che si pone è quello di evitare l’overfitting e quindi imporre un certo grado di regolarità a tale funzione. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 12 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 1,2 1,0 0,8 Y 0,6 0,4 0,2 0,0 0,0 0,2 0,4 0,6 0,8 1,0 0,6 0,8 1,0 0,6 0,8 1,0 X 1,2 1,0 0,8 Y 0,6 0,4 0,2 0,0 0,0 0,2 0,4 X 1,2 1,0 0,8 Y 0,6 0,4 0,2 0,0 0,0 0,2 0,4 X Figura 20.3.4 – Bias-variance trade-off. La funzione rossa tratteggiata è quella “vera”, lo smoother (blu) è stato considerato con: a) un λ molto piccolo (in alto, lo smoother passa per tutti i punti), b) un λ intermedio (al centro, si ottiene una buona approssimazione), c) un λ molto grande (in basso, lo smoother ha una variabilità molto bassa ma una forte distorsione). S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 13 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Tale obiettivo si può ottenere introducendo una penalizzazione alla eccessiva irregolarità della curva: in termini computazionali, per una funzione g che sia almeno due volte differenziabile, una quantità che presenta alcuni vantaggi come penalizzazione è ∫ (g ′′)2 dx . In tal caso si definisce somma dei quadrati dei residui penalizzata la quantità: n Pλ (g ) = ∑ {y i − g (x i )}2 + λ ∫ (g ′′)2 dx i =1 Si cercherà quindi la funzione spline g che minimizza Pλ (g ) . Il parametro λ determina il trade-off tra adattamento e regolarità della curva, si considerino i casi estremi: se λ = 0 allora la funzione g non ha vincoli e passa per tutti i punti (se non vi sono valori uguali di X), se λ = ∞ allora la funzione g è una retta. Per una introduzione all’argomento si veda Green & Silverman(1994). La suddivisione del campione è un metodo spesso efficace per la scelta del livello di smoothing e per la valutazione complessiva del modello. Il metodo consiste essenzialmente nella suddivisione (eventualmente ripetuta) del campione di dati a disposizione, in due parti: il sottocampione di training e il sottocampione di test. Il sottocampione di training viene utilizzato per stimare il modello, il sottocampione di test viene utilizzato per verificare la bontà di adattamento del modello a dei dati non utilizzati nella stima e quindi ottenere una stima più affidabile dell’EQM. EQM bias elevato varianza bassa bias basso varianza alta EQM nel test EQM nel training underfitting modello migliore overfitting complessità Figura 20.3.5 – Confronto tra l’EQM nel Test set e l’EQM nel Training set, al variare della complessità del modello. Nella figura 20.3.5 possiamo vedere il valore dell’errore quadratico medio calcolato nel sottocampione di training e nel sottocampione di test. Si può notare che all’aumentare della complessità del modello l’EQM calcolato nel sottocampione di training tenda sempre a S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 14 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 diminuire, mentre ciò non avviene per il sottocampione di test. Si confronti tale figura con la figura 20.2.1. In effetti, l’uso degli stessi dati per ottenere sia la stima sia la valutazione del modello, porta generalmente ad una valutazione eccessivamente ottimistica: se non abbiamo duplicazioni per i valori della X e si sceglie un livello di smoothing molto basso, si può ottenere un adattamento pressoché perfetto (si veda quanto detto nel paragrafo precedente). Il risultato sarebbe quindi una scelta sbagliata del parametro di smoothing ed una valutazione errata del modello. Nella 10-fold cross-validation, il campione viene innanzitutto suddiviso in 10 sottoinsiemi che chiameremo A1, A2, A3, …, A10, si applica quindi la seguente procedura: - Training su (A1 ∪ A2 ∪ ... ∪ A7 ∪ A8 ∪ A9), test su (A10) - Training su (A1 ∪ A2 ∪ ... ∪ A7 ∪ A8 ∪ A10), test su (A9) - Training su (A1 ∪ A2 ∪ ... ∪ A7 ∪ A9 ∪ A10), test su (A8) - ……… ………. ………. …………… ……….. …….. - Training su (A2 ∪ ... ∪ A7 ∪ A8 ∪ A9 ∪ A10), test su (A1) Al termine della procedura abbiamo 10 stime del modello, utilizzando dati (almeno in parte) diversi; inoltre tutti i dati entrano in una procedura di test, che comunque non utilizza mai i dati già usati nel corrispondente training. La valutazione finale della performance del modello si può ottenere quindi come una semplice media delle 10 valutazioni effettuate sui dati di test. A1 Primo passo A2 A3 A4 A5 Insieme di training A6 Stima del modello A7 A8 A9 A10 Insieme di test Valutazione campione Figura 20.3.6 - Illustrazione del primo passo della procedura 10-fold crossvalidation S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 15 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 20.4 Smoother per due o più variabili esplicative L’esposizione precedente si può estendere al caso di due o più variabili esplicative seguendo due diversi approcci. Una prima possibilità richiede la definizione di uno smoother multidimensionale, ad esempio nel caso di due variabili esplicative f (X1,X 2 ) = a + b s(X1,X 2 ) Una seconda possibilità, molto più restrittiva, consiste nel supporre l’additività della funzione f(.) e quindi l’utilizzo dei soli smoother univariati: f (X1,X 2 ) = a + b s1 (X1 ) + c s 2 (X 2 ) Ambedue tali approcci portano, per due variabili esplicative, all’individuazione di una superficie di regressione, di cui mostriamo un esempio, con due sole variabili esplicative, nella figura 20.4.1. Figura 20.4.1 Esempio di Kernel smoother bidimensionale Il primo approccio, che include le interazioni tra le variabili, è spesso difficile da applicare in quanto richiede un numero molto elevato di osservazioni all’aumentare del numero di variabili esplicative. E’ il problema denominato “the curse of dimensionality”. Per curse of dimensionality si intende il rapido incremento di volume che si ha aggiungendo ulteriori dimensioni allo spazio di riferimento. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 16 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Per meglio descrivere il fenomeno, ipotizziamo di avere a disposizione 100 osservazioni relative ad una variabile quantitativa continua. Se dividiamo il range della variabile in 10 intervallini, siamo in grado di analizzare la distribuzione della variabile abbastanza bene, tramite ad esempio un istogramma. Ogni intervallino avrà due intervallini vicini, che conterranno presumibilmente qualche osservazione. Se le osservazioni si riferiscono invece a 10 variabili, ed effettuiamo la stessa suddivisione in intervallini per ciascuna variabile, otteniamo 1010 celle nello spazio a 10 dimensioni e ogni cella avrà 310-1= 59048 celle vicine: le osservazioni diventano quindi dei punti isolati in un ampio spazio di celle vuote. Per ottenere una situazione equivalente a quella che avevamo nel caso unidimensionale, sarebbero ora necessarie ben 1020 osservazioni. L’aumento delle dimensioni provoca in definitiva un incremento generalizzato delle distanze tra i punti che tendono quindi a divenire lontani ed equispaziati. Per ovviare a tale problema sono stati proposti modelli quali ad esempio PPR, MARS o il modello additivo generalizzato (GAM), (si veda Hastie, Tibshirani & Friedman, 2001). Il modello GAM è una variante del modello additivo già visto nel paragrafo 20.1. e si basa sulla somma di J funzioni, in questo caso non-parametriche e non note, delle J variabili Xj (più l’intercetta). La differenza sta essenzialmente nell’aggiunta della funzione link parametrica che collega la somma delle funzioni alla variabile dipendente: J ⎞ ⎛ E(Y | X ) = f(X1, X 2 , X 3 ..., X J ) = G ⎜ a + ∑ s j X j ⎟ ⎟ ⎜ j=1 ⎠ ⎝ L’additività del modello permette un procedimento di stima abbastanza agevole in quanto le funzioni sono tutte univariate. Occorre però considerare che le funzioni non-parametriche sj sono incognite e quindi è richiesta una procedura di stima iterativa. La Projection Pursuit Regression utilizza trasformazioni di proiezioni ottime dei dati originali in sottospazi di dimensione ridotta. Più precisamente, la variabile dipendente è legata ad un insieme di J variabili esplicative, tramite una combinazione di M funzioni smooth unidimensionali di combinazioni lineari delle variabili esplicative: ( ) E(Y | X ) = f(X1, X 2 , X 3 ..., X J ) = M ∑ s m (α m1 X1 + α m2 X 2 + " + α mJ X J ) m =1 Quando il numero di variabili esplicative è alto e tra esse sussiste un elevato grado di collinearità, questo modello è più parsimonioso rispetto al GAM e può considerare (anche se non esplicitamente) interazioni di variabili esplicative. MARS (multivariate adaptive regression splines) può essere visto come una generalizzazione del Recursive Partition Regression method. Questo metodo utilizza una espansione di prodotti di funzioni base (ad es. spline cubiche) per costruire funzioni spline multivariate ed una procedura stepwise per ottenere una selezione automatica di questa base di funzioni. E’ possibile scrivere il modello MARS in forma additiva, raggruppando le funzioni in questo modo: E(Y|X ) = f(X1, X 2, X3..., X J ) = α 0 + ∑ gi ( Xi ) + ∑ gih ( Xi ,Xh ) + ∑ gihk ( Xi ,Xh , Xk )" K m =1 K m =2 K m =3 In cui la prima sommatoria riguarda tutte le funzioni che si riferiscono ad una sola variabile esplicativa; la seconda sommatoria riguarda tutte le funzioni che si riferiscono a due variabili esplicative, e così via. Occorre fissare a priori alcuni parametri: il numero di funzioni base, il massimo grado di interazione ed il grado delle spline. Tramite questi parametri si può determinare il grado desiderato di complessità del modello. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 17 S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Bibliografia del capitolo Green, P., Silverman, B. (1994) Nonparametric Regression and Generalized Linear models: A Roughness Penalty Approach, Chapman and Hall, London. Härdle, W. (1994) Applied Nonparametric Regression, Cambridge University Press. Hart, J. D. (1997) Nonparametric Smoothing and Lack-of Fit Tests. Springer Verlag New York. Hastie, T., Tibshirani, R. & Friedman, J. (2001) The elements of statistical learning, Springer Verlag New York. S. Borra, A. Di Ciaccio – Statistica, metodologie per le scienze economiche e sociali, McGraw Hill, 2004, ISBN 88-386-6162-6 Cap. 20 - 18