Regressione multipla L obiettivo è costruire un modello probabilistico per spiegare la variabile y tramite più di una variabile indipendente x 1, x 2,..., x k. Esempio: Per un efficiente progettazione degli inceneritori di rifiuti municipali è necessario che l informazione relativa al contenuto di energia dei rifiuti sia disponibile. Abbiamo a disposizione 30 campioni di rifiuti di una certa regione per i quali abbiamo i valori delle variabili y contenuto di energia (Kcal/kg), x 1 % di plastica sul peso, x 2 % di carta sul peso, x 3 % di altri rifiuti organici sul peso, x 4 % di umidità sul totale del campione esaminato. Il modello proposto potrebbe essere Y = β 0 + β 1 x 1 + β 2 x 2 + β 3 x 3 + β 4 x 4 + ε, (1) Occorre capire quali variabili servono a spiegare la variabile di interesse (selezione delle variabili) e in che misura vi contribuisce. 1
Plastics 15 20 25 30 44 48 52 56 14 18 22 15 20 25 30 Paper Garbage 35 45 44 48 52 56 Water 14 18 22 35 45 1000 1400 1000 1400 Energy.content 2
Analisi della correlazione tra le variabili Calcoliamo la matrice di correlazione tra le variabili in gioco. dell esempio abbiamo: Per i dati Plastics Paper Garbage Water Energy.content Plastics 1.00 0.15 0.09 0.26 0.59 Paper 0.15 1.00 0.63 0.01 0.04 Garbage 0.09 0.63 1.00 0.07 0.09 Water 0.26 0.01 0.07 1.00 0.90 Energy.content 0.59 0.04 0.09 0.90 1.00 Come regola generale è bene che entrino nel modello le variabili maggiormente correlate con la variabile da spiegare e le meno incorrelate tra loro. In questo caso potremmo considerare un modello in cui entrino solo le variabili Water e Plastics 3
Scatter Plot Matrix Plastics 14 14 16 16 18 18 20 20 22 22 24 24 Paper 15 15 20 20 25 25 30 30 Garbage 35 35 40 40 45 45 50 50 Water 45 45 50 50 50 50 55 55 Energy.content 1000 1000 1200 1200 1400 1400 1600 1600 4
Consideriamo il modello generale Y = β 0 + β 1 x 1 +... + β k x k + ε, (2) Posto θ = (β 0, β 1,..., β k ) se abbiamo n osservazioni possiamo riscrivere le n equazioni (2) in forma matriciale Y = Xθ + ɛ 1 x 11... x 1k dove Y = (Y 1,..., Y n ) 1 x, X = 21... x 2k........, ɛ = (ε 1,..., ε n ). La stima 1 x n1... x nk ottenuta coi minimi quadrati (OLS=Ordinary Least Squares) è data da ˆθ = (X X) 1 X Y dove Y = (y 1,..., y n ). In seguito p = k + 1 è il numero dei parametri. La stima OLS si ottiene se solo se XX è invertibile, cioè se e solo se la matrice X ha rango massimo p. 5
Le osservazioni y = (y 1,..., y n ) provengono dal modello Y i = x i β + ε i Y i variabile casuale dipendente x i = [1, x i1, x i2,..., x ik ] vettore dei regressori (deterministici o stocastici) β = [ β 0, β 1, β 2,..., β k ] vettore dei parametri ε i : componente stocastica di valore atteso nullo FUNZIONE DI REGRESSIONE E(Y i x i ) = x i β 6
Y = Xβ + ɛ X = x 1 x 2 matrice n p dei regressori x n Y = Y 1 Y 2 vettore delle variabili risposta Y n ɛ = ε 1 ε 2.. ε n vettore delle componenti stocastiche 7
ASSUNZIONI DEL MODELLO DI REGRESSIONE LINEARE CLASSICO A0: la funzione di regressione E(Y X) = Xβ è correttamente specificata A1: ɛ è un vettore di n variabili casuali indipendenti A2: le componenti di ɛ sono variabili casuali di valore atteso nullo e varianza σ 2 (omoschedastiche) A3: le componenti di ɛ sono variabili casuali normali A4: X è una matrice di costanti note (regressori non stocastici) A5: le colonne di X sono linearmente indipendenti =: X X è invertibile 8
STIMA di β, σ 2 Da Y i = x i β + ε i e per le A1, A2, A3, A4 si ha che le Y i sono variabili casuali indipendenti normali con valore atteso µ i = x i β e varianza σ2. La verosimiglianza è: L(β, σ 2 ) = e la log verosimiglianza: n i=1 { 1 2πσ 2 exp 1 } 2σ 2(y i x i β)2 L(β, σ 2 ) = n 2 ln(2πσ2 ) 1 2σ 2 (y i x i β)2 = = n 2 ln(2πσ2 ) 1 2σ 2 (y Xβ) (y Xβ) se σ 2 è noto massimizzare la log verosimiglianza equivale a minimizzare (CRITERIO DEI MINIMI QUADRATI): Q(β) = (y Xβ) (y Xβ) i 9
RISULTATO FONDAMENTALE Q(β) = (y Xβ) (y Xβ) ha un unico minimo in b = ( X X ) 1 X y È importante notare che: y Xb = y X ( X X ) 1 X y = (I n M) y dove M = X ( X X ) 1 X è una matrice n n idempotente (M = MM). Quindi anche (I n M) è idempotente. Ne consegue SSE = Q(b) = (y Xb) (y Xb) = = y (I T M) y = y y y My = = y y y X ( X X ) 1 X y = y y y Xb 10
Ovvero più semplicemente (ma non per i calcoli) SSE = Q(b) = i (y i x i b)2 = i y 2 i i y i x i b Verosimiglianza concentrata Sostituendo b a β nella log verosimiglianza si ottiene la log verosimiglianza concentrata: L(σ 2 ) = n 2 ln(2πσ2 ) 1 2σ 2Q(b) che ha un massimo in ˆσ 2 = Q(b) n. CONCLUDENDO: gli stimatori M.V. sono ˆσ 2 = Q(b) n b= ( X X ) 1 X y 11
Esempio: Nel caso dell esempio presentato le stime dei parametri del modello con le quattro variabili sono contenute nella seguente tabella. Estimate Std. Error t value Pr(> t ) (Intercept) 2245.0933 177.8922 12.62 0.0000 Plastics 28.9224 2.8235 10.24 0.0000 Paper 7.6429 2.3137 3.30 0.0029 Garbage 4.2969 1.9161 2.24 0.0340 Water 37.3559 1.8342 20.37 0.0000 La matrice di varianza e covarianza dei parametri è Σ(θ) = (X X) 1 σ 2. La stima di tale matrice la si ottiene stimando σ 2 con s 2 = SSE n p, dove SSE = (y i ŷ i ) 2. ˆ Σ(θ) = (X X) 1 s 2 = c 00 c 01... c 0k c 10 c 11... c 1k........ c k0 c k1... c kk I termini sulla diagonale principale della matrice (X X) 1 s 2 sono la stima di V ar(θ). Std.Error è la radice quadrata di questi termini. 12
Verifica di ipotesi per la significatività dei singoli parametri Sotto le ipotesi che ε i N(0, σ 2 ) i.i.d. si deduce che lo stimatore dei parametri θ è uno stimatore non distorto, cioè E(θ) = θ, la matrice di varianza e covarianza è data da Σ(θ) la cui stima è data da ˆΣ(θ), e inoltre ogni stimatore ˆβ i è gaussiano. Se si vuole quindi verificare l ipotesi contro l alternativa H 0 : β i = 0 H 1 : β i 0 da questi fatti si deduce che la statistica t i = ˆβ cii i, sotto l ipotesi nulla β i = 0, è una t-student con n p g.d.l dove c ii è l elemento sulla diagonale della matrice (X X) 1 s 2. Quindi, fissato un livello di fiducia α, si rifiuta l ipotesi H 0 se t i > t 1 α 2,n p. 13
Il p-value, questo sconosciuto Quasi tutti i software statistici non ci dicono se accettare o rifiutare l ipotesi nulla, ma ci danno il p-value! Cerchiamo di capire cosa è. Indichiamo solo per il momento con T i la statistica e con t i il valore calcolato sui dati. Allora p-value = P ( T i > t i ) Quindi il p-value non è altro che la probabilità con cui la statistica (T i ) può assumere valori più elevati di quello osservato (t i ).La regola di rifiuto dell ipotesi H 0 è: Rifiuto H 0 se t i > t 1 α 2,n p. Il valore di t 1 α 2,n p è ricavato da P ( T i > t 1 α 2,n p ) = α Si deduce che per α fissato noi rifiutiamo l ipotesi nulla se il p-value è minore di α 14
Dalla tabella possiamo effettuare la verifica di ipotesi per la significatività di ogni parametro singolarmente. I valori della statistica t i sono riportati nella penultima colonna della tabella. Mentre i valori del p-value sono riportati nell ultima colonna. Estimate Std. Error t value Pr(> t ) (Intercept) 2245.0933 177.8922 12.62 0.0000 Plastics 28.9224 2.8235 10.24 0.0000 Paper 7.6429 2.3137 3.30 0.0029 Garbage 4.2969 1.9161 2.24 0.0340 Water 37.3559 1.8342 20.37 0.0000 Supponiamo di avere fissato il l.d.s. α = 0.05. Tutti i parametri sono significativamente diversi da zero. Se invece α = 0.01, β 1, β 2 e β 4 sono significativamente diversi da zero mentre β 3 non lo è. Per α = 0.001 solo β 1 e β 4 sono diversi da zero. 15
test F per la significatività del modello Per verificare la significatività dell intero modello si utilizza il test F. Si vuole verificare l ipotesi H 0 : β 1 = 0,..., β k = 0 contro l alternativa che almeno uno dei parametri sia diverso da zero. La devianza totale ammette sempre la scomposizione SST = SSE + SSR e sotto l ipotesi che gli errori siano N(0, σ 2 ) vale che La statistica F = SST = (Y i Ȳ ) 2 σ 2 χ 2 n 1 SSE = (Y i Ŷ i ) 2 σ 2 χ 2 n p SSR = (Ŷ i Ȳ i ) 2 σ 2 χ 2 p 1 (Ŷi Ȳ ) 2 /(p 1) (Yi Ŷ i ) 2 /(n p) = SSR/(p 1) SSE/(n p) se è vera H 0, si distribuisce come una F di Snedecor con p 1 e n p g.d.l, e può essere utilizzata per verificare la significatività del modello. Infatti si decide di rifiutare l ipotesi nulla se F > c e per determinare c, fissato α si pone P (F > c) = α. Quindi dalle tavole della distribuzione F si trova il valore c α tale per cui P (F > c α ) = α. 16
Df Sum Sq Df SSR F Pr(>F) Totale 29 689709.87 Residui 25 24775.33 4 664934.53 167.74 0.0000 Il valore della statistica F 4,25 è SSR/(p 1) F = SSE/(n p) = 664934.53/4 24775.33/25 = 167.7 Il p-value < 2.2e-16. Quindi il modello è significativo. L indice di determinazione multiplo è dato da r 2 = 1 SSE SST. Nel caso del modello stimato vale r 2 = 0.96. Interessa poi sapere come l aggiunta di più variabili nel modello riesca a spiegare la variabilità totale della variabile da spiegare. Si calcola allora la SSR(1) per il modello con una sola variabile, la SSR(2) del modello con due variabili e così via. Allora la differenza SSR(2) SSR(1) ha il significato di quanta variabilità il secondo modello riesce a spiegare in più rispetto al primo. In generale SSR(j) SSR(j 1) SSE/(n p) F 1,n p, j = 2,..., p 1 17
Tavola dell Analisi della Varianza (ANOVA) Df Sum Sq Mean Sq F value Pr(>F) Plastics 1 239734.97 239734.97 241.91 0.0000 Paper 1 11239.07 11239.07 11.34 0.0025 Garbage 1 2887.82 2887.82 2.91 0.1002 Water 1 411072.67 411072.67 414.80 0.0000 Residuals 25 24775.33 991.01 Nella prima riga abbiamo la SSR per il modello con solo la prima variabile. Nella seconda abbiamo la differenza tra la SSR del modello con due variabili e il modello con una sola. La statistica F serve per verificare l attendibilità dell aggiunta di questa variabile al modello. Chiaramente ha importanza l ordine con cui le variabili entrano nel modello. Df Sum Sq Mean Sq F value Pr(>F) Water 1 560181.11 560181.11 565.26 0.0000 Plastics 1 93926.58 93926.58 94.78 0.0000 Paper 1 5843.14 5843.14 5.90 0.0227 Garbage 1 4983.71 4983.71 5.03 0.0340 Residuals 25 24775.33 991.01 18
In questa tabella sono riportate le stime cambiando l ordine delle variabili. Estimate Std. Error t value Pr(> t ) (Intercept) 2245.0933 177.8922 12.62 0.0000 Water 37.3559 1.8342 20.37 0.0000 Plastics 28.9224 2.8235 10.24 0.0000 Paper 7.6429 2.3137 3.30 0.0029 Garbage 4.2969 1.9161 2.24 0.0340 Come indice di adattabilità si utilizza il coefficiente di correlazione multipla r 2 = 1 SSE SST Per bilanciare i costi dovuti all utilizzo di tanti parametri rispetto ai guadagni in r 2 si può usare il coefficiente di correlazione multiplo corretto r 2 corretto = 1 In questo esempio abbiamo (n 1) (n p) SSE SST = (n 1)r2 k n p r 2 = 0.9641, r 2 corretto = 0.9583 19
Test F per il modello ridotto Supponiamo di avere il modello completo Vogliamo verificare l ipotesi Y = β 0 + β 1 x 1 + β 2 x 2 +... + β k x k + ε H 0 : β 1 = β 2 =... = β q = 0, q < k Se fosse vera l ipotesi H 0 il modello sarebbe Y = β 0 + β q+1 1x q+1 + β q+2 1x q+2 +... + β k x k + ε Denotiamo con SSR r e SSE r le somme dei quadrati spiegati e residui del modello ridotto. La statistica (SSR SSR r )/q SSE/(n p) = (SSE r SSE)/q SSE/(n p) sotto l ipotesi nulla si distribuisce come una F con q e n p gradi di libertà. 20
Con i dati dell esempio andiamo a considerare il modello ridotto solo con le variabili Water e Plastics. L ipotesi H 0 pone i coefficienti delle variabili Garbage e Paper uguali a zero (q = 2). I risultati della stima e dell analisi della varianza sono riassunti da queste tabelle. Estimate Std. Error t value Pr(> t ) (Intercept) 2647.1663 137.0094 19.32 0.0000 Water 37.4528 2.1127 17.73 0.0000 Plastics 26.4516 3.1341 8.44 0.0000 Df Sum Sq Mean Sq F value Pr(>F) Water 1 560181.11 560181.11 424.83 0.0000 Plastics 1 93926.58 93926.58 71.23 0.0000 Residuals 27 35602.18 1318.60 Da queste tabelle e da quelle del modello completo deduciamo: SSE r = 35602.18, SSE = 24775.33 21
La tabella dell analisi della varianza per il modello ridotto e il modello completo è Df SSE Df Sum of Sq F Pr(>F) Ridotto 27 35602.18 Completo 25 24775.33 2 10826.85 5.46 0.0108 La terza colonna contiene gli SSE del modello ridotto (con 27 g.d.l.) e del modello completo (con 25 g.d.l.). La colonna Sum of Sq contiene la differenza SSE r SSE e la colonna Df i suoi gradi di libert`a. La statistica F è data da F = (SSE r SSE)/q SSE/(n p) = 10826.85/2 24775.33/25 = 5.46 Si tratta di una statistica F di Snedecor con 2 e 25 gradi di libertà. Il p-value è pari a 0.0108. Quindi rifiutiamo l ipotesi nulla con un livello di significatività α = 0.05, le variabili Garbage e Paper non possono essere omesse. A livello di significatività α = 0.01 la conclusione sarebbe di accettare H 0 : le variabili Garbage e Paper possono essere omesse. 22
Esempio L articolo Measurements of the Thermal Conductivity and Thermal Diffusivity of Polymer Melts with the Short-Hot-Wire Method (X. Zhang, W. Hendro, et al., International Journal of Thermophysics, 2002:1077 1090) riporta le misure della conducibilità termica (in W m 1 K 1 ) e della diffusività di alcuni polimeri a diverse temperature (in 1000 C). La tabella seguente presenta i risultati per la conducibilità termica del policarbonato. Cond. Temp. Cond. Temp. Cond. Temp. Cond. Temp. 0.236 0.028 0.259 0.107 0.254 0.159 0.249 0.215 0.241 0.038 0.257 0.119 0.256 0.169 0.230 0.225 0.244 0.061 0.257 0.130 0.251 0.181 0.230 0.237 0.251 0.083 0.261 0.146 0.249 0.204 0.228 0.248 Denotata la conducibilità con y e la temperatura con x, troviamo il modello che si adatta meglio a questi dati. 23
1. Stimare i parametri del modello lineare y = β 0 + β 1 x + ε. Per ogni parametro verificare l ipotesi che il suo valore sia uguale a 0. 2. Stimare i parametri del modello quadratico y = β 0 + β 1 x + β 2 x 2 + ε. Per ogni parametro verificare l ipotesi che sia uguale a 0. 3. Stimare i parametri del modello cubico y = β 0 + β 1 x + β 2 x 2 + β 3 x 3 + ε. Per ogni parametro verificare l ipotesi che sia uguale a 0. 4. Stimare i parametri del modello alla quarta potenza y = β 0 + β 1 x + β 2 x 2 + β 3 x 3 + β 4 x 4 + ε. Per ogni parametro verificare l ipotesi che sia uguale a 0. 5. Quale dei modelli nelle parti dalla (a) alla (d) è il più appropriato? 6. Utilizzare il modello più appropriato per stimare la conducibilità ad una temperatura di 120 C. 24
Conductivity 0.230 0.235 0.240 0.245 0.250 0.255 0.260 0.05 0.10 0.15 0.20 0.25 Temperature 25
I risultati per la stima del modello lineare sono riportati nella seguente tabella. Estimate Std. Error t value Pr(> t ) (Intercept) 0.2532 0.0065 38.82 0.0000 Temperature 0.0416 0.0403 1.03 0.3197 La variabile Temperatura non è significativamente diversa da 0. Il valore di r 2 = 0.071 denota una bontà di adattamento praticamente nulla. La variabili non sono legate da una relazione lineare. 26
I risultati per la stima del modello quadratico sono riportati nella seguente tabella. Estimate Std. Error t value Pr(> t ) (Intercept) 0.2200 0.0038 57.23 0.0000 Temperature 0.5893 0.0615 9.59 0.0000 Temperature 2 2.2679 0.2155 10.52 0.0000 I parametri di x e di x 2 sono significativamente diversi da 0. r 2 = 0.9024 mentre r 2 corretto vale 0.8874. Il modello sembra adattarsi molto bene ai dati. Verifichiamo che l introduzione del termine quadratico è significativa: Df SSE Df Sum of Sq F Pr(>F) Lineare 14 0.00169 Quadratico 13 0.00018 1 0.00151 110.75 0.0000 27
Passiamo al modello cubico. seguente tabella. I risultati per la stima sono riportati nella Estimate Std. Error t value Pr(> t ) (Intercept) 0.2251 0.0069 32.65 0.0000 Temperature 0.4110 0.2058 2.00 0.0689 Temperature 2 0.7465 1.6887 0.44 0.6663 Temperature 3 3.6728 4.0430 0.91 0.3815 È plausibile che i coefficienti di x, x 2 e x 3 siano 0. r 2 = 0.9087 mentre r 2 corretto vale 0.8858. Il modello sembra lo stesso adattarsi molto bene ai dati. Df SSE Df Sum of Sq F Pr(>F) Quadratico 13 1.7719e-04 Cubico 12 1.6579e-04 1 1.1401e-05 0.8252 0.3815 La variabile x 3 può essere omessa. 28
Passiamo al modello con la potenza quarta. riportati nella seguente tabella. I risultati per la stima sono Estimate Std. Error t value Pr(> t ) (Intercept) 0.2315 0.0135 17.15 0.0000 Temperature 0.1091 0.5834 0.19 0.8551 Temperature 2 3.4544 7.7602 0.45 0.6648 Temperature 3 26.0224 40.4496 0.64 0.5332 Temperature 4 40.1571 72.2925 0.56 0.5897 È plausibile che i coefficienti di x, x 2, x 3 e x 4 siano 0, ma la statisitca F = 28.2 segnala che almeno una delle variabili del modello ha un qualche legame con la variabile y. r 2 = 0.9111 mentre r 2 corretto vale 0.8788. Il modello sembra lo stesso adattarsi molto bene ai dati. Il valore di r 2 corretto è diminuito: non serve aggiungere questa variabile. 29
La seguente tavola della varianza conferma che l aggiunta del termine cubico e alla potenza quarta non apporta significativi miglioramenti nella spiegazione della variabilità di y. Df Sum Sq Mean Sq F value Pr(>F) Temperature 1 0.00013 0.00013 8.74823 0.01303 Temperature 2 1 0.00151 0.00151 102.96538 0.00000 Temperature 3 1 0.00001 0.00001 0.77769 0.39671 Temperature 4 1 0.00000 0.00000 0.30856 0.58968 Residui 11 0.00016 0.00001 La stima per la conducibilità per un polimero con temperatura x = 120 è 0.2580149. L intervallo di confidenza a livello di fiducia del 95% è (0.2550702, 0.2609596). 30