MA012 Statistika II 8. Autokorelace a multikolinearita v lineárním modelu -> Ondřej Pokora (pokora@math.muni.cz) Ustav matematiky a statistiky, Přírodovědecká fakulta, Masarykova univerzita, Brno (podzim 2015) Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 1/30 Klasický lineární regresní model V ~ £(xp, cr2In) Y = Xfi + e ■ nesystematické chyby: Eej = 0, i = 1,...,n, tzn. EY = X/S, ■ homogenita rozptylu chyb (měření): Dej = cr2 > 0, i — \,...,n, ■ nekorelovanost chyb (měření): C(£z/£;) = 0, z,; = 1,... ,n, i^j, tzn. De = DY = a2!-, MA012 Statistika 11-8. Autokorelace a multikolinearita 2/30 m Autokorelace V některých případech (často v časových řadách) hodnoty náhodné chyby Sj závisí i na předchozích hodnotách k = 1,2,..., což má za následek, že efekt náhodných chyb není jen okamžitý, aleje pociťován i v budoucnosti. Tento případ se nazývá autokorelace. Častým typem autokorelace je tzv. autoregrese 1. řádu, označovaná AR(1): Definice 1 (AR(1)) £{ — 0£i-i + U{, kde 6 je neznámý parametr, 6 < 1, Eiij = 0, Duj = c%, C{ui,Uj) = 0 pro i ^ j. MA012 Statistika 11-8. Autokorelace a multikolinearita 3/30 m Postupným aplikovaním AR(1) formule na náhodné chyby obdržíme vyjadrení £j = QSi-i + Ui = 6(6£j_2 + Ui-i) + Ui = 62£j_2 + + Uj = = 62(6eí_3 + Ui_i) + 6uí_i + ui = 63Ui_3 + e2Ui_2 + + ui = 00 1=0 Počítejme střední hodnotu náhodných chyb: 00 00 eeí = e £ dui-x = £ e1 euí_j = o. 1=0 1=0 -^0 o Při výpočtu rozptylu náhodných chyb využijeme nekorelovanosti veličin u 00 00 00 De, = D ( 1 = EÄ0"" = Ú EV2)1 = T~Z J=o J 1=0 4^^^ /=o e1 cr 1-92 Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 4/30 AR(1) Podobně spočítáme kovariance náhodných chyb (pro Z = 1,2,...): 00 00 C(ei,Si-i) = E E ô'FCÍUi-rrUi+s) = elal E o 00 2r r=0 s=0 r=0 U2 O1 o: i-e2 u =6lcr2, Kovarianční matice náhodných chyb je tedy tvaru / D£ = cr, u i-e2 i e Ke n—1 0 1 e2 e e2 e w Ôn~1\ gn-2 e 1 = a2 W. Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 5/30 Rozšírený lineární model Máme tedy lineární regresní model model Y ~ £(Xj6, o W) Definice 2 (Rozšířený lineární model) Y = Xj6 + e, Es = 0, De = cr2 W, kde kovariační matice již není diagonální. Věta 3 (Aitkenův odhad, zobecněná metoda nejmenších čtverců) Mějme regresní model Y ~ £(Xj6, cr2 W) p/né hodnosti, kde \ W\ > 0. Pa/c odhad vektoru parametrů zobecněnou metodou nejmenších čtverců je roven J8 = {X'W~lX)~lX'W~lY. Z věty tedy plyne, že pokud známe parametr 0, dokážeme najít odhady j6 i v linárním modelu s autokorelovanými náhodnými chybami. Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 6/30 Detekce autokorelace Graficky je možno autokorelaci detekovat tak, že vynášíme hodnoty reziduí rz-klasického lineárního modelu v závislosti na rz-. Je-li z grafu patrná přibližná lineární závislost, svědčí to o autoregresi 1. řádu (AR(1)) nebo o špatné volbě modelu. Věta 4 (Asymptotický test) Statistika U má asymptoticky standardizované normální rozdělení pra vděpodobnosti, 6 — 6 as. LL = —, ~ 1-6)2 n N(0,1). Při testování hypotézy Hq : 9 = 0 proti H\ : 6 7^ 0 tedy pro dostatečně velká n (n>30) platí a Ho zamítáme na hladině významnosti a, pokud |0Vň| > ui_a/2. Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 7/30 m Durbinův-Watsonův test Definice 5 (Durbinova-Watsonova statistika) Durbinova-Watsonova statistika je definována pomocí reziduí v lineárním modelu n i=l Věta 6 (Durbinův-Watsonův test) Vždy platí 0 < D < 4. Při nekorelovanosti náhodných chyb má statistika hodnotu D = 2. Kladná korelace chyb se projeví hodnotou D —>► 0, záporná korelace chyb se projeví hodnotou D —>» 4. Hodnoty kritických hodnot pro Durbinův-Watsonův test závisí na počtu pozorování, počtu parametrů a na hladině významnosti a jsou tabelovány Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 8/30 Odhad parametru 6 Parametr 6 v AR(1) modelu náhodných chyb lze odhadnout více způsoby: ■ Odhadujeme jako regresní koeficient v modelu pro rezidua r{ — 6 ľ{-\ +Ui, i — 2,..., n metodou nejmenších čtverců. Odtud pak n E r i n-i e = ^-. n i=2 Pomocí Durbin - Watsonovy statistiky: Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 9/30 Model bez autokorelace 1. řádu □ Nalezneme odhad 6. Vytvoříme nový model Yj — YiJr\ 6 Yj, Xj^j — %iJr\fj 6 Xjj, i — 1,..., ti 1, j — 1,..., k, tj. vznikne model V* = X*j6* + £*, Eč* = 0, Dč* = of* In v němž počítáme odhady /S standardním způsobem. MA012 Statistika 11-8. Autokorelace a multikolinearita Příklad Příklad 1 V letech 1953 - 1983 byly měřeny ztráty vody pri distribuci do domácností. Výsledky měření jsou uloženy v souboru voda.csv. Proměnná x označuje množství vyrobené vody proměnná Y ztrátu. Ověřte, zda se v datech vyskytuje autokorelace 1. rádu a případně ji odstraňte. MA012 Statistika 11-8. Autokorelace a multikolinearita 11/30 Řešení Graficky: je patrná lineární závislost mezi rezidui residual plot residual plot MA012 Statistika 11-8. Autokorelace a multikolinearita Řešení Asymptotický test: U= \9y/ň\ =2,339. Nulovou hypotézu tedy zamítáme, neboť \U\ > Ui_0i/2 — 1/96. Durbinův-Watsonův test: D = 1,082 a p-hodnota testu je 0,0016, takže také zamítáme nulovou hypotézu Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 13/30 Řešení Odstranění autokorelace: Odhad metodou nejmenších čtverců: 6 = 0,42, z D-W statistiky: 6 = 0,459. V nově vzniklém modelu vykreslíme rezidua: residual plot residual plot -15 -10 -5 0 5 10 15 0 5 10 15 20 25 r_1.....rn-1 index Také D-W test již nezamítá nulovou hypotézu (p-hodnota je 0,4). MA012 Statistika 11-8. Autokorelace a multikolinearita MA012 Statistika 11-8. Autokorelace a multikolinearita Příklad LakeHuron: řešení Multikolinearita Multikolinearitou se rozumí vzájemná lineární závislost vysvětlujících proměnných. Přesnou multikolinearitou se rozumí případ, kdy jednotlivé sloupce Xj, j = 1,... ,p matice plánu X bez sloupce pro absolutní člen jsou lineárně závislé, takže pro aspoň jednu nenulovou konstantu Cj platí C\X\ + • • • + CpXp = 0. V praxi bychom se s tímto případem neměli setkávat, neboť při rozumně sestaveném regresním modelu využijeme lineární kombinaci a zmenšíme počet vysvětlujících proměnných. Podobně nereálný je v praxi případ ortogonálních vysvětlujících proměnných, kdy matice X je ortogonální a platí, že X7X = Ip. V praxi se tedy multikolinearitou rozumí případ, kdy přibližně platí rovnice vyjadřující lineární kombinaci vysvětlujících proměnných. V případě silné multikolinearity je determinant informační matice X7X blízký nule, nejmenší vlastní číslo je rovněž blízké nule a matice X7X je „skoro singulární". O multikolinearitě svědčí i vysoké hodnoty poměru největšího a nejmenšího vlastního čísla. MA012 Statistika 11-8. Autokorelace a multikolinearita Důvody multikolinearity ■ Multikolinearitu způsobuje regresní rovnice obsahující nadbytečné vysvětlující proměnné. Statistickými technikami můžeme přebytečné proměnné identifikovat a vyloučit z regresní rovnice. Multikolinearitu jen ztěží odstraníme v úlohách, kdy vzájemná spřaženost hodnot vysvětlujících proměnných je způsobena neuvažovanými veličinami nebo formou statistického zjišťování. Jde-li např. o údaje z časových řad, je podobný vývoj sledovaných veličin dostatečným důvodem vzniku multikolinearity. Vzhledem k tomu, že multikolinearitu hodnotíme výhradně na základě určitého souboru pozorování, stačí nesprávný výběr kombinací hodnot vysvětlujících proměnných, nereprezentujících obor možných hodnot, k existenci významné multikolinearity. Závažným důvodem multikolinearity je skutečný vztah vysvětlujících proměnných v rámci sledovaného jevu, procesu nebo systému. V tomto případě je třeba využít všechny informace nevýběrového charakteru k zlepšení kvality regresních odhadů. Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 18/30 Důsledky multikolinearity V případě přesné multikolinearity je matice XfX singulární a běžnou inverzí nepořídíme odhad neznámých parametrů /S metodou nejmenších čtverců. Pro přibližnou multikolinearitu jsme sice schopni matici XrX invertovat, ale kvalita pořízených odhadů je poměrně nízká. Snížení kvality se projeví ■ v kovarianční matici D/S = cr2(X;X)_1 v přesnosti prováděných výpočtů neboť důsledkem vysokých rozptylů odhadů jsou příliš široké intervaly spolehlivosti, a tedy malá přesnost odhadu. Logickým důsledkem multikolinearity je obtížné vyjádření individuálního vlivu jednotlivých vysvětlujících proměnných. Projeví se to nízkými hodnotami testových kritérií v T-testech nedovolujícími potvrdit závažnost jednotlivých regresorů v regresní funkci. Závažným důsledkem je značná výpočetní nespolehlivost a nestabilní hodnoty regresních odhadů. Stačí malý zásah do statistických údajů a výsledné odhady jsou odlišné. MA012 Statistika 11-8. Autokorelace a multikolinearita VIF - Variance Inflation Factors Definice 7 (VIF = variance inflation factors) Diagonální prvky matice (X7X) 1, tj (a\, ...,cip) = diag(X7X) 1, označované jako VIF - variance inflation factors, úzce souvisíš mnohonásobnými korelačními koeficienty, vyjadřující vztah /-té vysvětlující proměnné a lineární funkce ostatních vysvětlujících proměnných. Lze je zapsat jako a j = (1 - rj) xr-Xjf kde r j r JCj * OC'Y ^2 """ _1 OC^_|_^ je koeficient mnohonásobné korelace mezi /-tou proměnnou a všemi ostatními proměnnými (kromě/) Vysoký stupeň multikolinearity se projevuje vysokými hodnotami korelačních koeficientů ry, ale i vysokými hodnotami některých jednoduchých korelačních koeficientů. Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 20/30 Detekce multikolinearity Test multikolinearity je založen na testování, že korelační matice nezávisle proměnných je jednotková, H0:R = Ip, Hi : R ^ Ip, V' kde R je korelační matice nezávisle proměnných rozměru p x p, Věta 8 (Test multikolinearity) Za platnosti Hq má statistika K= - n-l--(2p + 7) o In R nu x2 Qp(p-i) X2 rozdělení pravděpodobnosti. Hypotézu Hq tedy na hladině významnosti oc zamítáme, pokud Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 21/30 Multikolinearita: identifikace proměnných Pro identifikaci proměnných způsobujících multikolinearitu se doporučují statistiky kde dk jsou diagonální prvky inverzní matice ke korelační matici nezávisle proměnných, (d\,...,dp) = diag.R_1. Věta 9 V případě, že proměnná Xj nezpůsobuje multikolinearitu, má veličina F j Fisherovo-Snedecorovo rozdělení, F j ~ F (p — 1, n — p). Pokud tedy F j > Fi_0Ĺ(p — 1, n — p), přispívá j-tá proměnná k multikolinearitě. MA012 Statistika 11-8. Autokorelace a multikolinearita 22/30 Metoda postupné regrese Následující algortimus stavby lineárního modelu bez multikolinearity je založen na tom, že do modelu postupně zařazujeme jen ty regresory (nezávisle proměnné), které významně přispívají ke zlepšení kvality odhadu /S. K výběru nejlepší podmnožiny regresorů používá tzv. metodu postupné regrese: □ Spočteme korelační matici R regresorů a provedeme test hypotézy Hq : R = Ip. Pokud test Hq nezamítne, pracujeme s klasickým lineárním modelem, do něhož můžeme zařadit všechny regresory. Je-li korelace mezi regresory prokázána, pokračujeme dalším krokem. Spočteme korelační koeficienty ryx^ • • •/ rY,xk a Pro další krok vybereme regresor Xj s nej větší absolutní hodnotou korelačního koeficientu |ryx; ■ Sestavíme model y = jSq + j^i Xj a odhadneme jeho parametry metodou nejmenších čtverců. Vypočteme hodnotu statistiky F-testu modelu, f = (n — 2)-y—, kde Ry.x. Je koeficient determinace tohoto modelu Pokud f > Fi_a(l, n — 2), ponecháme regresor Xj v modelu. MA012 Statistika 11-8. Autokorelace a multikolinearita Metoda postupné regrese Spočteme parciální korelační koeficienty ^YXi-Xy/ •••/ rYxhl-xľ ľYXj+1.xľ ryXp-Xj a pro další krok vybereme ten regresor Xj, jehož |rYxrx;| je nej větší. Sestavíme model y = jSq + j^i Xy + /^X; a odhadneme jeho parametry metodou nejmenších čtverců. Vypočteme hodnotu statistiky R2 — R2 . 1XY • Xj Xi 1XY • Xj F = (n — 3)--—2- » ^e ve jmenovateli je koeficient determinace 1 -^Y-XyX; nového modelu a v čitateli rozdíl koeficientů determinace nového a předchozího modelu. Připomeňme, že předchozí model je podmodelem nového modelu. Pokud F > Fi_0Ĺ(2/ n — 3), ponecháme regresor Xj v modelu. Spočteme parciální korelační koeficienty ryxx-x;xř/ •••/ rYXv-XjX{ mezi ^ a dosud nezařazenými regresory za vyloučení vlivu regresorů do modelu již zařazených. Ze skupiny dosud nezařazených regresorů vybereme regresor s největší absolutní hodnotou parciálního korelačního koeficientu, sestavíme s ním nový model a analogicky opakujeme kroky 5-6, dokud lze zařazovat další regresory. Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 24/30 Model standardizovaných proměnných Místo původních proměnných yz- a Xjj pracujeme s proměnnými ve tvaru n. y i ~y **/ ~ */ kde Sy a sx. jsou směrodatné odchylky jednotlivých proměnných. Standardizací vysvětlujících proměnných dostáváme při použití metody nejmenších čtverců místo matice XfX korelační matici R = ZfZ/n. Vektor Zrq/n obsahuje jednoduché korelační koeficienty ľyx-- Standardizací proměnných se zmenšují zaokrouhlovací chyby a zlepšují se možnosti hodnocení individuálního vlivu proměnných pomocí regresních parametrů. MA012 Statistika 11-8. Autokorelace a multikolinearita Model v kanonickém tvaru Místo modelu ve tvaru V = X'jS + e pracujeme s modelem y = ir77 + e, kde matice U = XV, vektor 7 = Vfa V je matice standardizovaných vlastních vektorů odpovídajících vlastním číslům matice X7X. Odhady parametrů v kanonickém tvaru: 7 = LxUfYf kde L je diagonální matice s vlastními čísly matice X7X. Kovarianční matice odhadů D(7) = cr2L_1 ukazuje, že i v tomto případě jsou odhady nezávislé. Reziduálni součet čtverců se transformací nemění. MA012 Statistika 11-8. Autokorelace a multikolinearita Hřebenová regrese (ridge regression) Autoři tzv. hřebenové regrese vyšli z faktu, že vliv multikolinearity se silně projevuje při výpočtu inverzní matice (X'X)-1, a to konkrétně tím, že diagonální prvky této inverzní matice jsou příliš velké. Navrhli proto jiný odhad j6= (X'X + mí^^X'Y, závisející na parametru m > 0. Výhodou takového odhadu je především to, že vhodnou volbou m lze numerické vlastnosti potřebné pro výpočet inverní matice výrazně zlepšit a získat tak relativně přesné hodnoty. Nevýhodou je to, že tento odhad není nestranný a že neexistuje jednotný algoritmický postup pro určení vhodné hodnoty parametru m. Obvykle se vychází z modelu v kanonickém tvaru a postupně se zkouší různé volby hodnot m, dokud se nedosáhne „stabilizace", kdy model dostává charakter ortogonálního systému. MA012 Statistika 11-8. Autokorelace a multikolinearita Příklad Příklad 2 V souboru výdaje, csv jsou uložena data o 20 náhodně vybraných domácnostech. Sloupce proměnné „ domácnosti" obsahují postupně tyto údaje: výdaje za potraviny a nápoje (Y), počet členů domácnosti (X\), počet dětí (X2), průměrný věk výdělečně činných (X3) a příjem domácnosti (X^). Metodou postupné regrese zkonstruujte model s nejlepší podmíněností regresorů. Uvažujme nejdřív model se všemi regresory. Spočtěme nejprve pro ilustraci (X'X)-1! = 4,65 x 10~16. Také hodnoty VIF jsou pro první dva regresory vysoké: clenu deti vek pri jem 21,23 16,18 1,31 3Ä Testujeme-li hypotézu Hq : R = Í4, hodnota testové statistiky 15 K=- 19- ln R = 64,94 výrazně převyšuje kritickou hodnotu x095 (6) = 12,59. Hypotézu Hq tedy na adině významnosti 0,05 zamítáme. Ondřej Pokora, PřF MU (2015) MA012 Statistika 11-8. Autokorelace a multikolinearita 28/30 Řešení Pro identifikaci proměnných způsobujících multikolinearitu můžeme spočítat dílčí statistiky Fy clenu deti vek pri jem 107,88 80,94 1,66 12,83 které porovnáme s kritickou hodnotou Fo795(3,16) = 3,24. Postupná regrese □ Spočteme korelační koeficienty Ty^v - — 'rY,x± = (0,77;0,67;0,18;0,73). Vybereme regresor Xi, neboť jeho korelace je v absolutní hodnotě největší. B Sestavíme model y = jSq + j^iXi. Vypočteme hodnotu statistiky F = (n-2)RY.Xi = 18-0,5897 = 25,«7. Tato hodnota je větší než ^0,95(1/18) = 4,41, takže regresor Xi ponecháme v modelu. Q Spočteme parciální korelační koeficienty ^Xz-Xi/^Xs-Xi/^yä-Xi = (0,36;0,499;0,32). Vybereme regresor X3, jehož parciální korelační koeficient je v absolutní hodnotě největší. MA012 Statistika 11-8. Autokorelace a multikolinearita Řešení Sestavíme model y = j8q + j^iXi + JS3X3. Vypočteme hodnotu statistiky F = ^"^(^^-^Y-^Xg) = = 5^64 TatQ hodnota je větší než 1 Ky ■x1x3 ^0,95(2/17) = 3,59, tedy ponecháme regresor X3 v modelu. Spočteme parciální korelační koeficienty ľYfXr^i;x3)^YfxK{xlfx3) = (0,19;0,17). Vybereme regresor X2, jehož parciální korelační koeficient je v absolutní hodnotě největší. Sestavíme model y = /3o + j^iXi + JS3X3 + ^2X2. Vypočteme hodnotu statistiky F = (n~3)(^*ix3~R'-x1x3x2) = 15^012 = Q 63 TatQ hodnota je Y • X^ X^ X2 menší než Fo,95(3,16) = 3,24, a tedy regresor X2 již nezahrneme do modelu Výsledný model je tedy tvaru Y = j80 + jSjX! + /33X3. MA012 Statistika 11-8. Autokorelace a multikolinearita