UTDRAG UR FÖRELÄSNINGSANTECKNINGAR I STATISTIKTEORI LINJÄR REGRESSION OCH STOKASTISKA VEKTORER MATEMATISK STATISTIK AK FÖR F, E, D, I, C, È; FMS 012 JOAKIM LÜBECK, SEPTEMBER 2008 Innehåll 4 Enkel linjär regression 2 41 Punktskattningar och deras fördelning 2 42 Intervallskattningar 4 43 Skattning av punkt på linjen 4 44 Prediktionsintervall för observationer 5 45 Kalibreringsintervall 6 46 Modellvalidering 7 461 Residualanalys 7 462 Är signifikant? 8 47 Linjärisering av några icke linjära samband 8 48 Centrerad modell 9 5 Stokastiska vektorer 9 6 Multipel regression 11 61 Matrisformulering 11 62 MK-skattning av 11 63 Skattningarnas fördelning 13 64 Skattning av punkt på planet 15 65 Modellvalidering 16 66 Kolinjäritet mellan förklarande variabler 17 67 Stegvis regression 17 68 Polynomregression 17 69 Kalibreringsområde 18 A ML- och MK skattningar av parametrarna i enkel linjär regression 20 A1 Några hjälpresultat 20 A2 Punktskattningar 20 A3 Skattningarnas fördelning 21 Id: regressiontex 20 2008-09-25 11:48:29Z joa
4 ENKEL LINJÄR REGRESSION 4 Enkel linjär regression Med regressionsanalys kan man studera samband mellan olika variabler I den enklaste formen, enkel linjär regression, studerar vi en variabel y som beror linjärt av en variabel x och där vi som vanligt har en slumpmässig störning eller avvikelse Det kan till exempel vara en situation som beskrivs i figur 41 16 14 Bensinförbrukning [l/100 km] 12 10 8 6 4 600 800 1000 1200 1400 1600 1800 2000 Vikt [kg] Figur 41: Ett slumpmässigt urval av bilar där y = bensinförbrukning i stadskörning är plottad mot x = vikt Man kan kanske tänka sig ett linjärt samband mellan x och y som beskriver hur stor bensinförbrukning en medelbil av en viss vikt har Vi använder följande modell där y i är n st oberoende observationer av Y i = + x i + i, där i N (0, ), oberoende av varandra så observationerna är Y i N ( + x i, ) = N (Ñ i, ), dvs de är normalfördelade med väntevärde på den okända regressionslinjen Ñ(x) = + x och med samma standardavvikelse som avvikelserna i kring linjen har, se figur 42 Tidigare har vi haft modeller där observationerna (vi kallade dem oftast X i men här är Y i naturligare) Y i = Ñ + i hade samma väntevärde men nu är observationernas väntevärde en linjär funktion av x 41 Punktskattningar och deras fördelning Skattningarna och deras fördelning härleds i appendix A, så här ges en kortfattad och lite mer lättläst sammanfattning ML- och MK-skattningarna av regressionslinjens lutning,, och intercept,, ges av = n (x i x)(y i ȳ) n (x i x) 2 = S xy, = ȳ x Eftersom är en linjär funktion av observationerna Y i ( = c i Y i där c i = (x i x)/ ) och även en linjär funktion av och observationerna så är dessa skattningar normalfördelade med väntevärde och standardavvikelse enligt N (, Sxx ), N (, 1 n + x2 ) 2
4 ENKEL LINJÄR REGRESSION 14 12 10 Observationer Skattad regressionslinje Verklig regressionslinje Fördelning för Yi 8 6 4 2 0 0 1 2 3 4 5 6 Figur 42: Sann regressionslinje, observationer och skattad regressionslinje Residualerna är markerade som de lodräta avstånden mellan observationerna och den skattade regressionslinjen De är dock inte oberoende av varandra Man kan däremot visa att och Ȳ är oberoende 1 av varandra så kovariansen mellan och blir C(, ) = C(Ȳ x, ) = C(Ȳ, ) xc(, ) = 0 xv ( ) = x 2 Vi ser att kovariansen är negativ då x > 0 och positiv då x < 0, vilket verkar rimligt(?!) Den, för väntevärdesriktighet, korrigerade ML-skattningen av variansen ges av ( 2 ) = s 2 = Q 0 n 2 där Q 0 är residualkvadratsumman Q 0 = n (y i x i ) 2 = S yy S2 xy dvs summan av lodräta kvadratiska avvikelser från observationerna till den skattade regressionslinjen Dessutom är Q 0 2 Õ2 (n 2), d( ) = s/ t(n 2) och d( ) = s 1 n + x2 t(n 2) Vi ser att n 2 som delas med i variansskattningen återkommer som parameter i Õ 2 - och t-fördelningen 1 Vi visar inte här att och Ȳ är oberoende av varandra, men det faktum att regressionslinjen alltid går genom punkten ( x, ȳ) gör det kanske troligt; om över- eller underskattas påverkas inte Ȳ av detta 3
4 ENKEL LINJÄR REGRESSION För att räkna ut kvadratsummorna, S yy och S xy för hand kan man ha användning av sambanden = S yy = S xy = n (x i x) 2 = n (y i ȳ) 2 = n xi 2 1 ( n ) 2 x i n n yi 2 1 ( n ) 2 y i n n (x i x)(y i ȳ) = n x i y i 1 ( n )( n x i y i ) n Naturligtvis har vi även tex om s 2 x är stickprovsvariansen för x-dataserien = (n 1)s 2 x 42 Intervallskattningar Eftersom skattningarna av och är normalfördelade får vi direkt konfidensintervall med konfidensgraden 1 a ( är upptagen) precis som tidigare enligt s Sxx I = ± t a/2 (f )d( ) = ± t a/2 (n 2) I = ± t a/2 (f )d( ) = ± t a/2 (n 2) s 1 n + x2 Om skulle råka vara känd används naturligtvis den i stället för s och då även Ð- i stället för t-kvantiler För variansen blir intervallet ( ) ( ) Q 0 Q 0 (n 2)s 2 (n 2)s 2 I 2 = Õ 2 a/2 (n 2), = (n 2) Õ 2 a/2 (n 2), (n 2) Õ 2 1 a/2 Õ 2 1 a/2 43 Skattning av punkt på linjen För ett givet värde x 0 är Y s väntevärde E(Y (x 0 )) = + x 0 = Ñ 0, dvs en punkt på den teoretiska regressionslinjen Ñ 0 skattas med motsvarande punkt på den skattade regressionslinjen som Ñ 0 = + x 0 Vi ser direkt att skattningen är väntevärdesriktig samt att den måste vara normalfördelad (linjär funktion av två normalfördelade skattningar) Ett enkelt sätt att bestämma skattningens varians får vi om vi återigen utnyttjar att och Ȳ är oberoende av varandra (men inte av ) V (Ñ 0) = V ( + x 0 ) = [ = Ȳ x] = V (Ȳ + (x 0 x)) = [ober] = ( = V (Ȳ ) + (x 0 x) 2 V ( ) = 2 n + (x 0 x) 2 2 1 = 2 n + (x 0 x) 2 ) Ñ 1 0 N Ñ 0, n + (x 0 x) 2 = Vi får således ett konfidensintervall för Ñ 0 med konfidensgraden 1 a som I Ñ0 = Ñ 0 ± t a/2 (f )d(ñ 0) = + 1 x 0 ± t a/2 (n 2)s n + (x 0 x) 2 4
4 ENKEL LINJÄR REGRESSION Exempel 41 I ett slumpmässigt urval av bilar avsattes y = bensinförbrukning i stadskörning som funktion av x = vikt i en linjär regressionsmodell Y i = + x i + i, i N (0, ) Parametrarna skattas enligt resultaten i avsnitt 41 till = 046, = 00076 samt = 1009 är ett mått på hur mycket y beror av x, om vikten ökas med ett kg skattas ökningen av bensinförbrukningen med = 00076 liter per 100 kilometer Ett 95% konfidensintervall för blir I = [00068, 00084] Antag att vi är speciellt intresserade av bilar som väger x 0 = 1200 kg En skattning av medelförbrukingen Ñ 0 för denna typ av bilar blir då Ñ 0 = + x 0 = 957 l/100 km Ett 95% konfidensintervall för Ñ 0 blir med ovanstående uttryck I Ñ0 = [932, 983] Detta intervall täcker alltså med sannolikhet 95% den sanna medelförbrukningen för 1200 kg s bilar Observera att intervallet inte ger någon information om individuella 1200 kg bilars variation, så det är inte till så mycket hjälp till att ge någon uppfattning om en framtida observation (den 1200 kg bil du tänkte köpa?) Till detta behövs ett prediktionsintervall, se nästa avsnitt I figur 43 är konfidensintervallen förutom för 1200 kg bilar även plottat som funktion av vikten I formeln för konfidensintervallet ser man att det är som smalast då x 0 = x vilket även kan antydas i figuren Man ser även att observationerna i regel inte täcks av konfidensintervallen för linjen 16 14 Bensinförbrukning [l/100 km] 12 10 8 6 4 600 800 1000 1200 1400 1600 1800 2000 Vikt [kg] Figur 43: Bensinförbrukning enligt exempel 11 Skattad regressionslinje ( ), konfidensintervall för linjen som funktion av vikt (- -) Konfidensintervall för linjen då vikten är x 0 =1200 kg är markerat ( ) 44 Prediktionsintervall för observationer Intervallet ovan gäller väntevärdet för Y då x = x 0 Om man vill uttala sig om en framtida observation av Y för x = x 0 blir ovanstående intervall i regel för smalt Om, och vore kända så skulle intervallet + x 0 ± Ð a/2 täcka en framtida observation Y med sannolikhet 1 a Eftersom regressionslinjen skattas med Ñ 0 = + x 0 kan vi få hur mycket en framtida observation Y 0 5
4 ENKEL LINJÄR REGRESSION varierar kring den skattade linjen som ( V (Y 0 x 0 ) = V (Y 0 ) + V ( + x 0 ) = 2 1 + 1 n + (x 0 x) 2 ) Vi kan alltså få ett prediktionsintervall med prediktionsgraden 1 p för en framtida observation som I Y (x0 ) = + x 0 ± t p/2 (n 2)s 1 + 1 n + (x 0 x) 2 Observera att det bara är första ettan under kvadratroten som skiljer mellan prediktionsintervallet och I Ñ0 18 16 Bensinförbrukning [l/100 km] 14 12 10 8 6 4 2 600 800 1000 1200 1400 1600 1800 2000 Vikt [kg] Figur 44: Bensinförbrukning enligt exempel 11 Skattad regressionslinje ( ), konfidensintervall för linjen som funktion av vikt (- -), prediktionsintervall för framtida observationer som funktion av vikt (-) Prediktionsintervall för en framtida observation då vikten är x 0 =1 200 kg är markerat ( ) Ett prediktionsintervall för bensinförbrukningen hos en 1200 kg bil enligt exempel 11 blir [76, 116] vilket är betydligt bredare än intervallet för väntevärdet I figur 44 ses detta intervall och prediktionsintervallen som funktion av x 0 45 Kalibreringsintervall Om man observerat ett värde y 0 på y, vad blir då x 0? Man kan lösa ut x 0 ur y 0 = + x 0 och får x 0 = y 0 Denna skattning är inte normalfördelad, men vi kan tex använda Gauss approximationsformler för att få en skattninga av d(x0 ) och konstruera ett approximativt intervall I x0 = x0 ± t a/2(n 2)d(x0 ) = x + y 0 ȳ s ± t a/2 (n 2) 1 + 1 n + (y 0 ȳ) 2 ( ) 2 6
4 ENKEL LINJÄR REGRESSION Ett annat sätt att konstruera kalibreringsintervallet är att dra en linje y = y 0 och ta skärningspunkterna med prediktionsintervallet som gränser i kalibreringsintervallet Ett analytiskt uttryck för detta blir efter lite arbete I x0 = x + (y 0 ȳ) c c = ( ) 2 (t p/2(n 2) s) 2 ± t p/2(n 2) s c(1 + 1 c n ) + (y 0 ȳ) 2 Uttrycket gäller då är signifikant skild från noll (se kapitel 46) annars är det inte säkert att linjen skär prediktionsintervallen Grafiskt konstrueras detta intervall enligt figur 45 05 Kalibreringsintervall då y 0 = 02 04 03 Absorption 02 01 0 01 02 50 0 50 100 150 200 250 Kopparkoncentration Figur 45: Kalibreringsintervall konstruerat som skärning med prediktionsintervall I försöket har man för ett par prover med kända kopparkoncentrationer mätt absorption med atomabsorptionsspektrofotometri Kalibreringsintervallet täcker med ungefär 95% sannolikhet den rätta kopparkoncentrationen för ett prov med okänd kopparhalt där absorptionen uppmätts till 02 46 Modellvalidering 461 Residualanalys Modellen vi använder baseras på att avvikelserna från regressionslinjen är likafördelade ( i N(0, )) och oberoende av varandra vilket medför att även observationerna Y i är normalfördelade och oberoende Dessa antaganden används då vi tar fram fördelningen för skattningarna För att övertyga sig om att antagandena är rimliga kan det vara bra att studera avvikelserna mellan observerade y-värden och motsvarande punkt på den skattade linjen, de sk residualerna e i = y i ( + x i ), i = 1,, n, eftersom dessa är observationer av i Residualerna bör alltså se ut att komma från en och samma normalfördelning samt vara oberoende av dels varandra, samt även av alla x i I figur 46 visas några exempel på residualplottar som ser bra ut medan de i figur 47 ser mindre bra ut 7
4 ENKEL LINJÄR REGRESSION e 10 5 0 5 Residualer 10 0 10 20 30 1:n e 10 5 0 5 Residualer mot x 10 0 10 20 30 x Probability 099 098 095 090 075 050 025 010 005 002 001 Normal Probability Plot 5 0 5 Data Figur 46: Bra residualplottar Residualerna plottade i den ordning de kommer, mot x samt i en normalfördelningsplott De verkar kunna vara oberoende normalfördelade observationer 100 Residualer, kvadratisk trend Residualer mot x, variansen ökar med x 300 e 50 0 e 200 100 0 100 50 0 10 20 30 1:n 200 0 10 20 30 x Figur 47: Residualplottar där man ser en tydlig kvadratisk trend i den vänstra figuren och i den högra ser man att variansen ökar med ökat x 462 Är signifikant? Eftersom anger hur mycket y beror av x är det även lämpligt att ha med följande hypotestest i en modellvalidering H 0 : = 0 H 1 : 0 tex genom att förkasta H 0 om punkten 0 ej täcks av I, eller om T > t p/2 (n 2) där T = ( 0)/d( ) Om H 0 inte kan förkastas har y inget signifikant beroende av x och man kan kanske använda modellen Y i = Ñ + i i stället 47 Linjärisering av några icke linjära samband Vissa typer av exponential- och potenssamband med multiplikativa fel kan logaritmeras för att få en linjär relation Tex fås när man logaritmerar z i = a e x i i ln ln z i }{{} y i = ln a }{{} + x i + ln i }{{} i ett samband på formen y i = + x i + i Man logaritmerar således z i -värdena och skattar och som vanligt och transformerar till den ursprungliga modellen med a = e Observera att de multiplikativa felen i bör vara lognormalfördelade (dvs ln i N (0, )) En annan typ av samband är z i = a t i i ln ln z i }{{} y i = ln a + ln t }{{}}{{} i x i + ln i }{{} i 8
5 STOKASTISKA VEKTORER där man får logaritmera både z i och t i för att få ett linjärt samband I figur 48 ses ett exempel där logaritmering av y-värdena ger ett linjärt samband Antal transistorer 10 9 10 8 10 7 10 6 10 5 10 4 10 3 8080 4004 8008 Antal transistorer hos Intelprocessorer 8086 Intel386 TM 286 Intel486 TM Intel Pentium II Intel Pentium Intel Itanium 2 Intel Itanium Intel Pentium 4 Intel Pentium III Antal transistorer 5 x 108 45 4 35 3 25 2 15 1 05 Antal transistorer hos Intelprocessorer 10 2 1965 1970 1975 1980 1985 1990 1995 2000 2005 2010 2015 2020 Lanseringsår 0 1970 1980 1990 2000 2010 2020 Lanseringsår Figur 48: Antal transistorer på en cpu mot lanseringsår med logaritmisk y-axel i vänstra figuren Till höger visas samma sak i linjär skala Det skattade sambandet är y = 513 10 301 e 035x 48 Centrerad modell I vissa sammanhang har man tagit fasta på att och Ȳ är oberoende av varandra, tex I Blom bok B [3] som tidigare användes i kursen, och använt följande parametrisering av regressionslinjen Y i = c + (x i x) + i dvs man centrerar x-värdena genom att subtrahera deras medelvärde I denna framställning blir c = ȳ och skattas på samma sätt som med vår framställning En fördel med detta är, som vi sett tidigare, att c och blir oberoende av varandra och därmed blir variansberäkningar där de båda är inblandade enklare eftersom man inte behöver ta med någon kovariansterm En annan fördel med denna framställning är att man ofta får beräkningar som är mindre känsliga för numeriska problem, men detta är i regel ändå inget problem om man använder programpaket som är designade med numeriska aspekter i åtanke Vi ska senare se (i kapitel 6) att man tex kan använda operatorn\imatlab för att skatta regressionsparametrarna och då har man ingen nytta av att centrera utan Matlab gör själv ett bättre jobb för att få en numeriskt stabil lösning, se tex [2] Anm I figur 48 kan man inte räkna ut regressionslinjen för årtal efter 2002 i Matlab med den formel som står i figurtexten (e 035 2002 är för stort för att kunna representeras med flyttalsaritmetik med dubbel precision) Man kan då tex använda en centrerad modell, eller låta x vara tex antal år efter år 1900 5 Stokastiska vektorer I nästa avsnitt skall vi bygga ut vår linjära regressionsmodell genom att låta y vara en funktion av flera variabler Man får då en mycket rationell framställning genom att använda en modell skriven på matrisform och vi behöver därför först en kort introduktion till begreppen stokastisk vektor, väntevärdesvektor och kovariansmatris tillsammans med lite räkneregler 9
5 STOKASTISKA VEKTORER En stokastisk vektor är en kolonnvektor där elementen är stokastiska variabler (dvs en n-dimensionell stokastisk variabel) X = [X 1,,X n ] T Med väntevärdet av en stokastisk vektor (eller matris) menas att väntevärdena bildas elementvis Väntevärdesvektorn Ñ till en stokastisk vektor X blir då Ñ = E(X) = [E(X 1 ),, E(X n )] T = [Ñ 1,, Ñ n ] T För att hålla reda på varianser för och kovarianser mellan alla element i en stokastisk vektor kan vi definiera kovariansmatrisen Ë för en stokastisk vektor som (jämför med definitionerna av varians och kovarians) Ë = V (X) = E[(X Ñ)(X Ñ) T ] = E[(X 1 Ñ 1 )(X 1 Ñ 1 )] E[(X 1 Ñ 1 )(X 2 Ñ 2 )] E[(X 1 Ñ 1 )(X n Ñ n )] E[(X 2 Ñ 2 )(X 1 Ñ 1 )] E[(X 2 Ñ 2 )(X 2 Ñ 2 )] E[(X 2 Ñ 2 )(X n Ñ n )] = = E[(X n Ñ n )(X 1 Ñ 1 )] E[(X n Ñ n )(X 2 Ñ 2 )] E[(X n Ñ n )(X n Ñ n )] V (X 1 ) C(X 1, X 2 ) C(X 1, X n ) C(X 2, X 1 ) V (X 2 ) C(X 2, X n ) = C(X n, X 1 ) C(X n, X 2 ) V (X n ) Vi ser att kovariansmatrisen är symmetrisk, har varianser som diagonalelement, Ë ii = V (X i ), samt att den har kovarianser mellan alla olika element i X för övrigt, Ë ij = Ë ji = C(X i, X j ) Om vi bildar en linjär funktion av X som Y = AX + b där A är en deterministisk (dvs icke stokastisk) r n-matris och b en deterministisk kolonnvektor med r element fås väntevärdesvektorn till Y Ñ Y = E(Y) = E(AX + b) = AE(X) + b = AÑ X + b dvs motsvarande räkneregel som i det endimensionella fallet Kovariansmatrisen för Y blir Ë Y = V (Y) = E[(Y m Y )(Y m Y ) T ] = E[(AX + b Am X b)(ax + b Am X b) T ] = = [(AB) T = B T A T ] = E[A(X m X )(X m X ) T A T ] = AE[(X m X )(X m X ) T ]A T = = AV (X)A T = AË X A T Jämför med räkneregeln V (ax + b) = a 2 V (X ) i det endimensionella fallet Sammanfattningsvis har vi följande räkneregler för en linjär funktion av X E(AX + b) = AE(X) + b V (AX + b) = AV (X)A T 10
6 MULTIPEL REGRESSION Speciellt har vi om alla element i X är normalfördelade (inte nödvändigtvis oberoende av varandra), en sk multivariat normalfördelning 2, så blir resultatet av en linjär funktion av X också normalfördelat (eftersom en linjär funktion av X består av linjärkombinationer av elementen i X) Vi har alltså fått kraftfulla verktyg för att hantera beroende stokastiska variabler 6 Multipel regression Antag att y beror linjärt av k st förklarande variabler x 1,, x k y = + 1 x 1 + + k x k Vi gör n observationer av y och har då en y-dataserie och k st x-dataserier med n värden i varje serie Framställningen blir lite renare om vi här kallar för 0 Vi har alltså följande linjära regressionsmodell y i = 0 + 1 x i1 + + k x ik + i, i = 1,, n där i N (0, ) samt oberoende av varandra 61 Matrisformulering För att få en enhetlig framställning som ser likadan ut oberoende av hur många variabler y beror av visar det sig fördelaktigt att skriva modellen på matrisform Ovanstående uttryck kan då skrivas som y = X + där y och är n 1-vektorer, en 1 (k + 1)-vektor och X en n (k + 1)-matris y 1 1 x 11 x 12 x 1k 0 y 2 y =, X = 1 x 21 x 22 x 2k, = 1 1, = y n 1 x n1 x n2 x nk n k Matrisen X har alltså en kolonn med ettor och sedan en kolonn för vardera x-dataserie, och därmed y, har en multivariat normalfördelning med väntevärdesvektor 0 respektive X samt samma kovariansmatris 2 I, där I är en enhetsmatris 62 MK-skattning av Parametrarna 0,, k, dvs elementen i kan skattas med minsta kvadrat metoden genom att minimera Q( ) med avseende på elementen i Q( ) = n (y i E(Y i )) 2 = n (y i 0 x i0 1 x i1 k x ik ) 2 = (y X ) T (y X ) där vi låter x i0 vara ettorna i matrisen X Derivatan av Q med avseende på ett element l i blir då Q l = 2 n (y i 0 x i0 1 x i1 k x ik )x il 2 Definitionen av multivariat normalfördelning är egentligen lite striktare än så, se tex avsnitt 66 i kursboken Blom et al [1] 11
6 MULTIPEL REGRESSION Denna derivata satt till noll för varje element i kan skrivas på matrisform X T (y X ) = 0 X T y = X T X MK-skattningen av elementen i fås som lösningen till detta ekvationssystem, som kallas normalekvationerna, och ges av = (X T X ) 1 X T y om matrisen X T X är inverterbar, dvs det(x T X ) 0 En väntevärdesriktig skattning av observationernas varians 2 ges av s 2 = Q 0 n (k + 1) där Q 0 = (y X ) T (y X ) Q 0 är alltså residualkvadratsumman (minimivärdet på Q( )) och k + 1 är antalet skattade parametrar i densamma Exempel 61 I ett experiment har man ansatt en linjär regressionsmodell där y beror av två variabler x 1 och x 2 Bestäm MK-skattningarna av 1 och 2 om 1 x 11 x 12 1 4 1 31 X = 1 x 21 x 22 1 x 31 x 32 = 1 4 2 1 4 3 och y = 50 45 1 x 41 x 42 1 4 4 66 Lsg MK-skattningarna fås som = (X T X ) 1 X T y, men i 4 16 10 X T X = 16 64 40 10 40 30 är de två första kolonnerna parallella, dvs det(x T X ) = 0, och normalekvationerna saknar en entydig lösning Man bör alltså inte mäta y för ett enda värde på x 1 eller x 2 (och inte bara för samma värden på x 1 och x 2 ) eftersom det resulterar i parallella kolonner i X och därmed i X T X Exempel 62 Regression genom origo Bestäm MK-skattningen av i modellen y i = x i + i Lsg I de regressionsmodeller vi hittills sett har vi haft ett intercept med ( eller 0 ) för att inte tvinga regressionslinjen (eller planet) genom origo I den här modellen skall linjen gå genom origo så vi kan använda matrisformuleringen men utan att ta med någon kolonn med ettor i X -matrisen (som här blir en vektor) Vi har alltså x 1 y 1 x 2 X =, y = y 2, X T X = [ ] x 2 n x 1 x 2 x n = x n y n x n 12 x 1 x 2 i
6 MULTIPEL REGRESSION Skattningen av elementen i (dvs det enda elementet ) blir = (X T X ) 1 X T y = (X T X ) 1 [ ] y 2 x 1 x 2 x n = y 1 y n n x i y i n xi 2 63 Skattningarnas fördelning Skattningarna av elementen i är linjära funktioner av y och är därmed normalfördelade För fås väntevärdesvektorn enligt räknereglerna i avsnitt 5 till E( ) = E[(X T X ) 1 X T Y] = (X T X ) 1 X T E(Y) = (X T X ) 1 X T X = och kovariansmatrisen blir V ( ) = V [(X T X ) 1 X T y] = (X T X ) 1 X T 2 I [(X T X ) 1 X T ] T = = 2 (X T X ) 1 X T X [(X }{{} T X ) 1 ] T = 2 [(X T X ) 1 ] T = [en kovariansmatris är symmetrisk] = =I = 2 (X T X ) 1 Varianserna för elementen i återfinns alltså som diagonalelementen i kovariansmatrisen 2 (X T X ) 1 och de övriga elementen är kovarianser V ( 0 ) C( 0, 1 ) C( 0, k ) 2 (X T X ) 1 C( 1 =, 0 ) V ( 1 ) C( 1, k ) C( k, 0 ) C( k, 1 ) V ( k ) Ett konfidensintervall för en parameter l blir således I l = l ± t /2(n (k + 1))d( l ) där d( l ) är roten ur motsvarande diagonalelement i den skattade kovariansmatrisen s2 (X T X ) 1 För residualkvadratsumman gäller dessutom Q 0 2 Õ2 (n (k + 1)) Exempel 63 I West Virginia har man under ett antal år räknat antalet frostdagar på olika orter I vektorn y finns medelantalet frostdagar per år, ix1 ortens höjd över havet (ft) ochx2 nordlig breddgrad ( ) x 1 2375 1586 1459 680 604 1298 3242 1426 550 2250 675 2135 635 1649 2727 1053 2424 789 659 673 x 2 3927 3863 39 3917 3835 3947 3758 3737 3938 378 3805 3823 3965 391 3866 3948 3797 388 401 3767 y 73 29 28 25 115 325 64 13 23 37 26 73 247 41 56 34 37 16 41 12 Skatta parametrarna i modellen y i = 0 + 1 x i1 + 2 x i2 + i 13
6 MULTIPEL REGRESSION samt gör 95% konfidensintervall för var och en av parametrarna I Matlab kan beräkningarna göras enligt: X = [ones(size(y)) x1 x2]; skattas medinv(x *X)*X *y men det är i regel dumt att räkna ut en invers för att använda till att lösa ett ekvationssystem I Matlab kan man i stället lösa (det överbestämda) ekvationssystemet i minsta-kvadratmening med operatorn\ beta = X\y beta = -3996582 00212 104411 Vi ser att antalet frostdagar ökar i genomsnitt med 1 = 002 dagar då höjden över havet ökas en fot och med 2 = 104 dagar då breddgraden ökas en enhet En plot över det skattade regressionsplanet kan ses i figur 61 Figur 61: En plot över skattat regressionsplan i exempel 63 Från observationerna har dragits en lodrät linje till det skattade regressionsplanet (residualerna) Residualkvadratsumman Q 0 fås ur Q0 = (y-x*beta) *(y-x*beta) Q0 = 17798e+03 och med hjälp av en skattning av kovariansmatrisen, V, kan man göra konfidensintervall för parametrarna i n = length(y); s2 = Q0/(n-3); V = s2*inv(x *X) V = 14
6 MULTIPEL REGRESSION 166e4-01722 -4249661-01722 95e-6 00041-4249661 00041 108320 För tex 1 blir konfidensintervallet I 1 = 1 ± t p/2(n 3)d( 1 ) som i Matlab kan räknas ut som ( 1 är element 2 i vektornbeta) kvantil = tinv(1-005/2, n-3); d = sqrt(v(2,2)); Ib1 = beta(2) + [-1 1] * kvantil * d Ib1 = 00146 00277 och övriga intervall: Ib2 = beta(3) + [-1 1] * kvantil * sqrt(c(3,3)) Ib2 = 34972 173849 Ib0 = beta(1) + [-1 1] * kvantil * sqrt(c(1,1)) Ib0 = -6722605-1270559 64 Skattning av punkt på planet För att skatta Y -s väntevärde i en punkt x 0 = (x 01, x 02,, x 0k ) kan vi bilda radvektorn x 0 = [1 x 01 x 02 x 0k ] Punkskattningen blir Ñ (x 0 ) = x 0 som är normalfördelad och dess varians, enligt räknereglerna för kovariansmatris, blir V (Ñ (x 0 )) = V (x 0 ) = x 0 V ( )x T 0 = 2 x 0 (X T X ) 1 x T 0 Observera att vi här har tagit hänsyn till att elementen i inte är oberoende av varandra, kovarianserna mellan dem ingår ju i kovariansmatrisen vi räknar med Ett konfidensintervall för Ñ(x 0 ) blir således I Ñ(x 0 ) = Ñ (x 0 ) ± t /2(n (k + 1))s x 0 (X T X ) 1 x T 0 Vill man i stället göra ett prediktionsintervall får man som tidigare lägga till en etta under kvadratroten Exempel 64 (forts ex 63) Gör ett konfidensintervall för medelantalet frostdagar på en höjd av 3000 ft och 39 nordlig breddgrad Lsg I Matlab blir beräkningarna 15
6 MULTIPEL REGRESSION x0 = [1 3000 39]; mu0 = x0*beta mu0 = 710234 Vmu0 = x0 * V * x0 Vmu0 = 334553 dmu0 = sqrt(vmu0) dmu0 = 57841 Imu0 = mu0 + [-1 1] * kvantil * dmu0 Imu0 = 588201 832266 En plot över konfidensintervallen som funktion av x 1 och x 2 kan ses i figur 62 Figur 62: Konfidensintervall plottade som funktion av x 1 och x 2 i exempel 64 65 Modellvalidering För att övertyga sig om att modellen är rimlig bör man liksom tidigare förvissa sig om att residualerna verkar vara oberoende observationer av N (0, ) Plotta residualerna Som de kommer, dvs mot 1, 2,, n Ev ett histogram Mot var och en av x i -dataserierna I en normalfördelningsplot För var och en av 1,, k (obs i regel ej 0 ) bör man kunna förkasta H 0 i testet H 0 : i = 0 H 1 : i 0 16
6 MULTIPEL REGRESSION eftersom i anger hur mycket y beror av variabeln x i I exempel 63 kan vi se att 1 och 2 båda är signifikant skilda från noll, varken I 1 eller I 2 täckte punkten noll Anm För att testa om alla parametrar i modellen är signifikanta bör man göra ett simultant test H 0 : alla i = 0 mot H 1 : något i 0 Detta kan utföras med ett F-test men det ligger utanför ramen för denna kurs 66 Kolinjäritet mellan förklarande variabler I exempel 62 såg vi att man inte kan välja värdena på de förklarande variablerna hur som helst Tex om man väljer samma värden på alla x-variabler så blir inte X T X inverterbar För att kunna få en skattning av tex ett regressionsplan stabil bör man om möjligt välja sina (x 1i, x 2i )-värden så att de blir utspridda i (x 1, x 2 )-planet och inte klumpar ihop sig längs en linje Detta ger en mer stabil grund åt regressionsplanet Se figur 63 Figur 63: I vänstra figuren är värdena på x 1 och x 2 valda så att de har låg korrelation mellan varandra och ger en stabil grund för regressionsplanet I högra figuren är korrelationen hög och regressionsplanet får en sämre grund att stå på, dvs osäkerheten blir stor i vissa riktningar Konfidensplanen är inritade i figuren 67 Stegvis regression Om inte alla i är signifikant skilda från noll bör man reducera sin modell, dvs ta bort en eller flera x-variabler, skatta parametrarna i den reducerade modellen och eventuellt upprepa förfarandet Vilka variabler skall man då ta bort? x-variabler med hög kolinjäritet (korrelation) bör inte båda vara med i modellen x-variabler med hög korrelation med Y är bra att ha med Har man sedan flera signifikanta modeller att välja mellan kan man beakta saker som Litet s, dvs residualerna avviker lite från skattat plan Med få variabler blir modellen enklare att hantera, men man bör ha tillräckligt många för att beskriva y väl 68 Polynomregression Med matrisframställningen kan man även enkelt hantera vissa situationer där y inte beror linjärt av en variabel x utan beskrivs av tex ett polynom Y i = 0 + 1 x i + 2 x 2 i + + k x k i + i 17
6 MULTIPEL REGRESSION Matrisen X blir 1 x 1 x1 2 xk 1 1 x 2 x2 2 X = xk 2 1 x n xn 2 xn k Skattningar av parametrar blir på samma sätt som tidigare Exempel 65 I en fysiklaboration i kretsprocesser uppmättes följande där x = tid i sekunder och y = temperatur i C i en värmepump x i : 94, 190, 301, 372, 442, 535, 617, 701, 773, 849, 924, 1007, 1083, 1162, 1238, 1318, 1470, 1548, 1625, 1710 y i : 261, 277, 294, 311, 33, 348, 363, 379, 394, 407, 421, 433, 446, 456, 465, 476, 489, 503, 512, 519 I figur 64 ser man att det inte passar så bra med en enkel linjär regressionsmodell Y i = + x i + i 60 y = 2575+001634*x y 50 40 30 20 0 200 400 600 800 1000 1200 1400 1600 1800 x Residualer Normal Probability Plot 2 1 0 1 2 0 5 10 15 20 Probability 098 095 090 075 050 025 010 005 002 1 0 1 Data Figur 64: Data från kretsprocesslaborationen anpassat till en förstagradsmodell Residualplotten visar tydligt att modellen inte är lämplig Om man däremot ansätter en andragradsmodell, Y i = + 1 x i + 2 xi 2 + i, passar data bättre till modellen Se figur 65 69 Kalibreringsområde Motsvarigheten till kalibreringsintervall blir i regel ganska besvärligt att hantera analytiskt då man har en funktion av flera variabler Men med inspiration av metoden med skärningen av prediktionsintervallen i avsnitt 45 kan man ganska enkelt göra kalibreringområden då y är en linjär funktion av två variabler Man plottar in planet y = y 0 och tar skärningarna med prediktionsplanen som kalibreringsområde I figur 66 visas det område där man i genomsnitt har 50 frostdagar 18
6 MULTIPEL REGRESSION 60 y = 2318+002416*x 4294e 06*x 2 y 50 40 30 20 0 200 400 600 800 1000 1200 1400 1600 1800 x Residualer Normal Probability Plot 1 05 0 05 1 0 5 10 15 20 Probability 098 095 090 075 050 025 010 005 002 05 0 05 Data Figur 65: Data från kretsprocesslaborationen anpassat till en andragradsmodell Residualplotten ser betydligt bättre ut även om de kanske inte riktigt är normalfördelade; de tre minsta residualerna är lite för små och den största lite för stor Parametrarna 1 och 2 är signifikanta Figur 66: I vänstra figuren är regressionsplanet från exempel 63 plottat tillsammans med prediktionsplanen och planet y = 50 I högra figuren är samma plott sedd ovanifrån och kalibreringsområdet syns som skärningen mellan planet y = 50 och prediktionplanen 19
A ML- OCH MK SKATTNINGAR AV PARAMETRARNA I ENKEL LINJÄR REGRESSION A ML- och MK skattningar av parametrarna i enkel linjär regression A1 Några hjälpresultat Vi börjar med ett par användbara beteckningar och räkneregler för de summor och kvadratsummor som kommer att ingå i skattningarna Då alla summor nedan löper från 1 till n avstår jag från att skriva ut summationsindexen Först har vi att en ren summa av avvikelser av ett antal observationer kring sitt medelvärde är noll (xi x) = x i n x = [ x = 1 n xi ] = x i x i = 0 (A1) Några beteckningar för kvadratiska- och korsavvikelser kring medelvärde = (x i x) 2, S xy = (x i x)(y i ȳ), S yy = (y i ȳ) 2 där vi känner igen den första och sista från stickprovsvarianserna för x resp y, s 2 x = /(n 1) och motsvarande för y Dessa summor kan skrivas på ett antal former, tex kan S xy utvecklas till S xy = (x i x)(y i ȳ) = x i (y i ȳ) x (y i ȳ) = x i (y i ȳ) eller S xy = (x i x)(y i ȳ) = (x i x)y i ȳ (x i x) = (x i x)y i där sista summan i andra leden blir noll enligt (A1) Motsvarande räkneregler gäller för och S yy och vi har sammanfattningsvis S xy = (x i x)(y i ȳ) = x i (y i ȳ) = (x i x)y i (A2) = (x i x) 2 = x i (x i x) och motsvarande för S yy (A3) A2 Punktskattningar ML-skattning av, och 2 då y i är oberoende observationer av Y i N ( + x i, ) fås genom att maximera likelihood-funktionen L(,, 2 ) = 1 (y 2Ô 2 e 1 x 1 )2 1 (yn xn)2 2 2 e 2 2 = (2Ô) n/2 ( 2 ) n/2 e 1 P 2 2 (yi x i ) 2 2Ô 2 Hur än väljs så kommer L att maximeras med avseende på och då (y i x i ) 2 är minimal, och eftersom det är just denna kvadratsumma som minimeras med MK-metoden så blir skattningarna av och de samma vid de två metoderna Med ML-metoden kan vi dessutom skatta 2 varför vi väljer den Logaritmeras likelihoodfunktionen fås ln L(,, 2 ) = n 2 ln(2ô) + n 2 ln( 2 ) 1 2 2 (yi x i ) 2 Deriveras denna med avseende på var och en av parametrarna och sedan sättes till noll fås ekvationssystemet ln L = 1 (yi 2 x i ) = 0 (A4) ln L = 1 (yi 2 x i )x i = 0 (A5) ln L 2 = n 2 2 + 1 (yi 2 4 x i ) 2 = 0 (A6) 20
A ML- OCH MK SKATTNINGAR AV PARAMETRARNA I ENKEL LINJÄR REGRESSION att lösa med avseende på, och 2 Eftersom vi kan förlänga de två första ekvationerna med 2 och därmed bli av med den kan vi använda dessa till att skatta och (A4) och (A5) kan formas om till yi = n + x i xi y i = x i + x 2 i (A7) Delas första ekvationen med n fås ȳ = + x = ȳ x (A8) som vi kan stoppa in i (A7) som då blir xi y i = ȳ x i x x i + x 2 i xi y i = ( x 2 i x x i ) + ȳ x i = xi y i ȳ x i x 2 j x x j = xi (y i ȳ) xj (x j x) = [(A2)] = (xi x)y i xj (x j x) = [(A2) och (A3)] = S xy (A9) Detta resultat tillsammans med (A8) ger ML-skattningarna av och = S xy, = ȳ x Dessa värden insatta i (A6) förlängd med 4 ger ( 2 ) = 1 n (yi x i ) 2 som dock inte är väntevärdesriktig utan korrigeras till ( 2 ) = s 2 = 1 (yi x i ) 2 = Q 0 n 2 n 2 som är det Q 0 som är summan av kvadratiska avvikelser från observationerna y i till motsvarande punkt på den skattade linjen kallas residualkvadratsumma och den kan skrivas på formen Q 0 = S yy S2 xy A3 Skattningarnas fördelning Om vi börjar med och utgår från (A9) = S xy = (xi x)y i xj (x j x) = c i y i där c i = x i x (A10) den är alltså en linjär funktion av de normalfördelade observationerna och därmed är skattningen normalfördelad Väntevärdet blir E( ) = E( c i Y i ) = c i E(Y i ) = c i ( + x i ) = 1 (xi x)( + x i ) = (xi x) + (xi x)x i = 0 + = 21
REFERENSER där vi i näst sista ledet åter använde hjälpresultaten (A2) och (A3) Skattningen är alltså väntevärdesriktig och dess varians blir dvs V ( ) = V ( c i Y i ) = c 2 i V (Y i) = c 2 i 2 = 2 S 2 xx = S xy är en observation av N (, ) Sxx (xi x) 2 = 2 = ȳ x är även den normalfördelad eftersom den är en linjär funkton av normalfördelningar Väntevärdet blir E( ) = E(Ȳ ) xe( ) = E( 1 Yi ) x = 1 ( + xi ) x = n n = 1 + xi x = + x x = n n så även är väntevärdesriktig Innan vi beräknar dess varians har vi nytta av att Ȳ och är oberoende av varandra Vi visar här att de är okorrelerade, vilket räcker för variansberäkningen Återigen visar det sig fördelaktigt att uttrycka enligt (A10) C(Ȳ, ) = C( 1 Yi, c j Y j ) = 1 c j C(Y i, Y j ) = [Y i är ober av Y j då i j] = n n = 1 n ci C(Y i, Y i ) = 1 n ci V (Y i ) = 2 n där vi återigen känner igen (A1) i sista steget Variansen för blir i j ci = 2 n (xi x) = 0 dvs V ( ) = V (Ȳ x) = V (Ȳ ) + x 2 V ( ) 2 xc(ȳ, ) = 2 n = ȳ x är en observation av 1 N (, n + x2 ) + x2 2 + 0 och är dock inte oberoende av varandra Kovariansen mellan dem är C(, ) = C(Ȳ x, ) = C(Ȳ, ) xc(, ) = 0 xv ( ) = x 2 För variansskattningen och residualkvadratsumman gäller ( 2 ) = s = 1 n 2 Referenser (yi x i ) 2 = Q 0, f Q 0 2 Õ2 (f ) [1] Gunnar Blom, Jan Enger, Gunnar Englund, Jan Grandell och Lars Holst Sannolikhetsteori och statistikteori med tillämpningar Studentlitteratur, Lund, 2005 [2] The Math Works, Inc, Natick, Mass MATLAB Reference Guide, 1993 [3] Gunnar Blom och Björn Holmquist Statistikteori med tillämpningar, bok B Studentlitteratur, Lund, 1998 22