M5VM05 Statistické modelování 6. Ověřování předpokladů v klasickém modelu lineární regrese - II Jan Koláček (kolacek@math.muni.cz) Ústav matematiky a statistiky, Přírodovědecká fakulta, Masarykova univerzita, Brno "f Jan Koláček (PřF MU) M5VM05 Statistické modeloval 1/17 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,... ,k matice plánu X jsou lineárně závislé, takže pro aspoň jednu nenulovou konstantu Cj platí CiXi + ■ ■ ■ + ckxk — 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 X'X = lk. 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 X'X blízký nule, nejmenší vlastní číslo je rovněž blízké nule a matice X'X je „skoro singulární". O multikolinearitě svědčí i vysoké hodnoty poměru největšího a nejmenšího vlastního čísla. Jan Koláček (PřF MU) M5VM05 Statistické modeloval 2/17 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ů. Jan Koláček (PřF MU) M5VM05 Statistické modeloval 3/17 Důsledky multikolinearity V případě přesné multikolinearity je matice X'X singulární a běžnou inverzí nepořídíme odhad neznámých parametrů metodou nejmenších čtverců. Pro přibližnou multikolinearitu jsme sice schopni matici X'X invertovat, ale kvalita pořízených odhadů je poměrně nízká. Snížení kvality se projeví • v kovarianční matici var(p) = c^X'X)-1 • v přesnosti prováděných výpočtů nebot 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 r-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é. Jan Koláček (PřF MU) M5VM05 Statistické modeloval 4/17 VIF - Variance Inflarion Factors Diagonální prvky matice (X'X) 1, tj. a = diagiX'X)-1 označované v literatuře jako VIF — variance inflarion factors úzce souvisí s vícenásobnými korelačními koeficienty, vyjadřující vztah j-té vysvětlující proměnné a lineární funkce ostatních vysvětlujících proměnných. Lze je zapsat jako 1 a' (l-rf)x'ň' kde Yj = rx..XíX2,„x._íX.+í,,,Xk je koeficient mnohonásobné korelace. Vysoký stupeň multikolinearity se projevuje vysokými hodnotami korelačních koeficientů Yj, ale i vysokými hodnotami některých jednoduchých korelačních koeficientů. Jan Koláček (PřF MU) M5VM05 Statistické modeloval 5/17 Detekce multikolinearity Testujeme hypotézu Hq : R = \ proti H\ : R 7^ \, kde R je korelační matice proměnných. Platí-li nulová hypotéza, pak K = n-í- l(2k + 7) 6 ln |R| ~ x 2^-1) Hypotézu Ho tedy na hladině významnosti a zamítáme, pokud Jan Koláček (PřF MU) M5VM05 Statistické modelováni Identifikace proměnných způsobujících multikolinearitu Pro identifikaci proměnných způsobujících multikolinearitu se doporučují statistiky kde djj jsou diagonální prvky matice D = R-1. V případě, že proměnná Xj nezpůsobuje multikolinearitu, má veličina Fj Fisherovo - Snedecorovo rozdělení F(k — l,n—k). Jan KoláCek (PřF MU) M5VM05 Statistické modeloval 7/17 Odstranění multikolinearity Do modelu zařadíme jen ty regresory, které významně přispívají ke zlepšení kvality odhadu K výběru nejlepší podmnožiny regresorů použijeme metodu postupné regrese. Algoritmus: O Spočteme korelační matici R a provedeme test hypotézy Hq : R = \. Je-li korelace prokázána, pokračujeme dalším krokem. O Spočteme korelační koeficienty ry^i- ■ - ,rY,Xk a vybereme ten regresor X,-, jehož ry x, je v absolutní hodnotě největší. O Sestavíme model y = /3q + /3iX(- a odhadneme jeho parametry. Vypočteme (n—2)s~ (n—2)ID hodnotu statistiky F = —= 1_7p , kde ID značí index determinace. Pokud F > Fi_a(l,n — 2), ponecháme regresor X,- v modelu. O Spočteme parciální korelační koeficienty JXX! -x,-/ • • • / ^x,-.! -X,-/ ?Y,x;+1 -X,-/ • • •, x,- a vybereme ten regresor X,-, jehož ryrx--x,- Je v absolutní hodnotě největší. Jan Koláček (PřF MU) M5VM05 Statistické modeloval 8/17 Odstranění multikolinearity Q Sestavíme model y = /3q + /3iX(- + fizXj a odhadneme jeho parametry. Vypočteme hodnotu statistiky F = ^n 1^}^D, kde AID je přírůstek indexu determinace při zařazení Xj do modelu a ID je index determinace pro model y = /3q + /3iX(- + ^Xy. Pokud F > Fi_a(2, n — 3), ponecháme regresor Xy v modelu. O Spočteme parciální korelační koeficienty rY,xr(X;,Xy)' ■■■ >rY,Xk-(XirXj) a vybereme ten regresor X/, jehož ?Yxľ(X;X;) Je v absolutní hodnotě největší a tak pokračujeme dále. Jan Koláček (PřF MU) M5VM05 Statistické modeloval 9/17 Další možnosti Zlepšování podmíněnosti matice X'X • Model standardizovaných proměnných. pracujeme s proměnnými ve tvaru líšto původních proměnných y,- a <7i = Vi-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 X'X korelační matici R = X'X/n. Vektor Z'q/n obsahuje jednoduché korelační koeficienty YyX.. Standardizací proměnných se zmenšují zaokrouhlován chyby a zlepšují se možnosti hodnocení individuálního vlivu proměnných pomocí regresních parametrů. Jan Koláček (PřF MU) M5VM05 Statistické modelováni Další možnosti • Model v kanonickém tvaru. Místo modelu ve tvaru Y = X'jS + £ pracujeme s modelem Y = U;7 + e, kde matice U = XV, vektor 7 = V'/3 a V je matice standardizovaných vlastních vektorů odpovídajících vlastním číslům matice X'X. Odhady parametrů v kanonickém tvaru: 7 = L_1U'Y, kde L je diagonální matice s vlastními čísly matice X'X. Kovarianční matice odhadů var{^) = t7"2L_1 ukazuje, že i v tomto případě jsou odhady nezávislé. Residuální součet čtverců se transformací nemění. • Hřebenová regrese (ridge regression) - lm.ridge v balíku MASS Jan Koláček (PřF MU) M5VM05 Statistické modeloval 11 / 17 Příklad V souboru „vydaje.Rdata" 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 (Xi), počet dětí (x2), průměrný věk výdělečně činných (X3) a příjem domácnosti (X4). Metodou postupné regrese zkonstruujte model s nejlepší podmíněností regresorů. Řešení Uvažujme nejdřív model se všemi regresory. Spočtěme nejprve pro ilustraci der((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~4 Testujeme-li hypotézu Hq : R = I4, hodnota testové statistiky ln|R| = 64,94 výrazně převyšuje kritickou hodnotu x095 (6) = 12,59. Hypotézu Hq tedy na hladině významnosti 0,05 zamítáme. K Jan Koláček (PřF MU) M5VM05 Statistické modeloval 12 / 17 Řešení Pro identifikaci proměnných způsobujících multikolinearitu můžeme spočítat dílčí statistiky F j clenu deti vek príjem 107,88 80,94 1,66 12,83 které porovnáme s kritickou hodnotou Fo/9s(3,16) = 3,24. Postupná regrese O Spočteme korelační koeficienty ryxj, ••• ,J"y,x4 = (0,77;0,67;0,18;0,73). Vybereme regresor Xi, neboť jeho korelace je v absolutní hodnotě největší. O Sestavíme model y = /3q + fiiXi. Vypočteme hodnotu statistiky F = ("~2^P = = 25,87. Tato hodnota je větší než Fq/95(1, 18) = 4,41, takže regresor Xi ponecháme v modelu. O Spočteme parciální korelační koeficienty ^■X^^.x,,^!! = (0,36;0,499;0,32). Vybereme regresor X3, jehož parciální korelační koeficient je v absolutní hodnotě největší. Jan Koláček (PřF MU) M5VM05 Statistické modeloval 13 / 17 Řešení O Sestavíme model y = /3q + f$\Xi + 162x3. Vypočteme hodnotu statistiky r (n-3)AÍD 17-0,102 c ha ~r i. uj 4. ■ «4.-" t = v 1_'ID— = 1 _q 69 = 5,64. Tato hodnota je vetsi nez Fq/95(2, 17) = 3,59, tedy ponecháme regresor X3 v modelu. O Spočteme parciální korelační koeficienty ř"Y,X2-(x1,x3)'ř"Y,x4-(x1,X3) = (0,19;0,17). Vybereme regresor x2, jehož parciální korelační koeficient je v absolutní hodnotě největší. O Sestavíme model y = /3q + f$\Xi + 162x3 + /33x2. Vypočteme hodnotu statistiky F = ^Jjp^ = 1^0704 = 0,63. Tato hodnota je menší než Fq95(3, 16) = 3,24, a tedy regresor x2 již nezahrneme do modelu. Výsledný model je tedy tvaru y=/30 + /31x1 +/32x3. Jan Koláček (PřF MU) M5VM05 Statistické modeloval 14 / 17 Úlohy k procvičení Příklad 1.1 V souboru „ cement. RData" jsou uloženy údaje, které se týkají chemického složení portlandského cementu: y množství tepla v kaloriích na gram cementu X\ Tricalcium aluminate 3CaO.AI203 v % X2 Tricalciam silicate 3CaO.Si02 v % X3 Tetracalcium alumino ferrite 4CaO.AI203.Fe203 v % X4 Dicalcium silicate 2Ca0.5i02 v % Testujte multikolinearitu v daném modelu. Metodou postupné regrese nalezněte vhodný model. Poté ověřte normalitu residuí. [Multikolinearita se nezamítá, vhodný model: y = /3q + + ^2x2 + ^3X4, normalita residuí se nezamítá.] Jan Koláček (PřF MU) M5VM05 Statistické modeloval 15 / 17 Úlohy k procvičení Příklad 1.2 \/ proměnné „mtcars"3 jsou uložena data pro modelování závislosti spotřeby paliva osobních automobilů (proměnná mpg, počet mil/galon) na vlastnostech motoru, které jsou popsány následujícími proměnnými: cyl počet válců disp objem válců (kubické palce) hp výkon (počet koní) drat převodový poměr zadní nápravy wt hmotnost vozidla (kilolibry) qsec zrychlení (počet sekund z 0 na 1/4 míle) vs uspořádání válců (1 — „ V", 0 - za sebou) am převodovka (0 - automat, 1 - manuál) gear počet převodových stupňů carb počet karburátorů Testujte multikolinearitu v daném modelu. Metodou postupné regrese nalezněte vhodný model. Ověřte také normalitu residuí. adatový soubor implementovaný v jazyce R Jan Koláček (PřF MU) M5VM05 Statistické modelováni 16 / 17 Úlohy k procvičení [Multikolinearita se nezamítá, vhodný model: mpg = /3q + jB^wt + ^cyl, normalita residuíse nezamítá.] Příklad 1.3 (pro náročné) Naprogramujte funkci „multicol .R", která pro zadaný model zjistí přítomnost multikolinearity v datech. V případě, že je multikolinearita přítomna, metodou postupné regrese nalezne vhodný model. Jan Koláček (PřF MU) M5VM05 Statistické modeloval 17 / 17