Statistické metody v marketingu Ing. Michael Rost, Ph.D. Jihočeská univerzita v Českých Budějovicích
Pojem závislosti Je nutné rozlišit mezi závislostí nepodstatnou a mezi příčinnou čili kauzální závislostí.ta je předmětem vědeckého bádání. V podstatě lze rozlišovat závislosti z několika pohledů: závislost pevnou a volnou, závislost jednostrannou a oboustrannou, jednodušší formy kauzální závislosti a složitější formy kauzální závislosti.
Statistická neboli volná závislost V případě složitějších forem závislosti si musíme uvědomit, že závislá veličina je ovlivňována větším počtem nezávislých veličin (příčin) jejichž chování nemůžeme plně postihnout. Na změnu závislé veličiny v důsledku změn nezávislých veličin lze v takovém případě usuzovat pouze v průměru!
Statistická a korelační závislost Sledujeme-li statistické znaky y, x 1, x 2,, x p a mění-li se určitým způsobem podmíněné rozdělení znaku y při změnách x 1, x 2,, x p, pak mluvíme o statistické závislosti znaku y na x 1, x 2,, x p. Speciálním typem této statistické závislosti je tzv. korelační závislost, při té se mění podmíněné střední hodnoty znaku y. Zkoumání korelační závislosti patří mezi nejčastěji používané způsoby hodnocení závislostí. Lze se však zajímat i o jiné druhy závislostí (např. asociační závislost nebo kontingenční závislost).
Geometrická interpretace: statistická vs. korelační závislost 1.0 2.0 3.0 4.0 2 0 2 4 6 8 10 x y 10 20 30 40 10 20 30 40 50 x y
Motivační příklad: V souboru Engel.xls máte k dispozici údaje o ročním disponibilním příjmu a ročních výdajích za jídlo, které byly zaznamenány u 235 rodin. Údaje jsou uvedeny v belgických francích. Vytvořte korelační pole. Prostřednictvím funkce ŷ = ˆβ 0 + ˆβ 1 x popište vztah mezi příjmem a výdaji na jídlo. Jak lze interpretovat odhadnutý regresní koeficient u vysvětlující proměnné? Jak jej nazývají ekonomové? Je to vhodný model? S
Příprava v R belgie<-read.table("p:/kurz/engel.csv",header=true,dec=",",sep=";") belgie[1:5,] prijem vydajezajidlo 1 420.1577 255.8394 2 541.4117 310.9587 3 901.1575 485.6800 4 639.0802 402.9974 5 750.8756 495.5608 par(mfrow=c(1,2)) plot(prijem,vydajezajidlo,col="blue",pch=20,xlab="prijem", ylab="vydaje za jidlo") obal<-chull(prijem,vydajezajidlo) belgie1<-belgie[-obal,] plot(belgie1,col="blue",pch=20,xlab="prijem",ylab="vydaje za jidlo")
Vydaje za jidlo 500 1000 1500 2000 Vydaje za jidlo 200 400 600 800 1000 1200 1400 1600 1000 3000 5000 Prijem 500 1000 1500 2000 2500 Prijem
Dva úkoly: V průběhu zkoumání korelační závislosti hledáme odpověd na dvě otázky: Jak nejlépe vystihnout průběh závislosti mezi sledovanými znaky prostřednictvím odpovídající matematické funkce? To řeší regresní analýza.
Dva úkoly: V průběhu zkoumání korelační závislosti hledáme odpověd na dvě otázky: Jak nejlépe vystihnout průběh závislosti mezi sledovanými znaky prostřednictvím odpovídající matematické funkce? To řeší regresní analýza. Jaký je stupeň (těsnosti, intenzity, síly) závislosti mezi sledovanými znaky? Odpověd dává korelační analýza.
Předpoklady regresního modelu Střední hodnota reziduí je nulová. Nebo-li E(ɛ i ) = 0 Rozptyl reziduí je konstantní pro všechny pozorování, tedy V ar(ɛ i ) = σ 2 Rezidua sledují normální rozdělení ɛ i N(0, σ 2 ) Jednotlivé pozorování závislé proměnné y i nezávislé. V důsledku toho pak i jednotlivé ɛ i jsou navzájem Jednotlivé úrovně - hodnoty regresorů jsou pevné, pokud jsou náhodné, pak jsou navzájem nezávislé.
Model V případě jednoduché lineární regrese vycházíme z předpokladu, že lze i-té pozorování, i = 1, 2,, n, n 3 závisle proměnné Y, vyjádřit prostřednictvím nezávisle proměnné X. Konkrétně jako: y i = β 0 + β 1 x i1 + ɛ i, a tedy n rovnic pro n pozorování:
Model V případě jednoduché lineární regrese vycházíme z předpokladu, že lze i-té pozorování, i = 1, 2,, n, n 3 závisle proměnné Y, vyjádřit prostřednictvím nezávisle proměnné X. Konkrétně jako: y i = β 0 + β 1 x i1 + ɛ i, a tedy n rovnic pro n pozorování: y 1 = β 0 + β 1 x 11 + ɛ 1, y 2 = β 0 + β 1 x 21 + ɛ 2,. y n = β 0 + β 1 x n1 + ɛ n,
Abychom nemuseli vypisovat všech n rovnic, využijme maticové symboliky: y = y 1 y 2. X = 1 x 11 1 x 21.. β = [ β0 β 1 ] ɛ = ɛ 1 ɛ 2. y n 1 x n1 ɛ n Situaci pak můžeme elegantně zachytit takto y = Xβ + ɛ. Otázkou je, jak zvolit hodnoty β, tak aby regresní funkce co nejlépe vystihovala analyzovaná data?
Metoda nejmenších čtverců Odhady regresních parametrů β provádíme pomocí metody nejmenších čtverců - MNČ. Její podstatou je minimalizace součtu čtverců reziduí.
Metoda nejmenších čtverců Odhady regresních parametrů β provádíme pomocí metody nejmenších čtverců - MNČ. Její podstatou je minimalizace součtu čtverců reziduí. Zřejmě lze rezidua definovat jako ɛ = y Xβ
Podstata metody Rezidua: (y i ŷ i ) i = 1, 2,..., n.
Podstata metody Rezidua: (y i ŷ i ) i = 1, 2,..., n. Čtverce reziduí: (y i ŷ i ) 2 i = 1, 2,..., n.
Podstata metody Rezidua: (y i ŷ i ) i = 1, 2,..., n. Čtverce reziduí: (y i ŷ i ) 2 i = 1, 2,..., n. Součet čtverců reziduí: n i=1 (y i ŷ i ) 2.
Podstata metody Rezidua: (y i ŷ i ) i = 1, 2,..., n. Čtverce reziduí: (y i ŷ i ) 2 i = 1, 2,..., n. Součet čtverců reziduí: n i=1 (y i ŷ i ) 2. Minimalizace součtu čtverců reziduí: n i=1 (y i ŷ i ) 2 min
Podstata metody Elegantně pomocí maticového zápisu S = n i=1 ɛ i ɛ i = ɛ t ɛ min Pokud hodláme minimalizovat funkci S, pak je nutno funkci derivovat a takto derivovanou funkci položit rovno nule.
Geometrická interpretace MNČ Geometricka interpretace metody nejmensich ctvercu 4.0 3.5 3.0 y 2.5 2.0 1.5 1.0 0.5 0.0 0.5 1.0 1.5 x
Tím je splněn nutný předpoklad. Odhad jednotlivých složek vektoru β tj. regresních koeficientů získáme takto: S = ɛ t ɛ = (y Xβ) t (y Xβ) = = y t y y t Xβ (Xβ) t y + (Xβ) t Xβ = = y t y 2(Xβ) t y + β t X t Xβ Derivaci funkce S položíme rovnou nule a vyřešíme (to je nutná podmínka): S β = 2Xt y + 2X t Xβ = 0
Odhad ˆβ Lze tedy psát 2X t Xβ = 2X t y (X t X) I Získáme tak odhad vektoru regresních koeficientů
Odhad ˆβ Lze tedy psát 2X t Xβ = 2X t y (X t X) I Získáme tak odhad vektoru regresních koeficientů ˆβ = (X t X) I X t y.
... pokračování příkladu attach(belgie) model<-lm(vydajezajidlo~prijem,belgie) summary(model) Residuals: Min 1Q Median 3Q Max -725.699-60.239-4.317 53.411 515.772 Coefficients: Estimate Std. Error t value Pr(> t ) (Intercept) 147.47539 15.95708 9.242 <2e-16 *** prijem 0.48518 0.01437 33.772 <2e-16 *** --- Signif. codes: 0 *** 0.001 ** 0.01 * 0.05. 0.1 1 Residual standard error: 114.1 on 233 degrees of freedom Multiple R-Squared: 0.8304, Adjusted R-squared: 0.8296 F-statistic: 1141 on 1 and 233 DF, p-value: < 2.2e-16 plot(prijem,vydajezajidlo,col="blue",pch=20,xlab="prijem", ylab="vydaje za jidlo") abline(model,lwd=2,col="red")
1000 2000 3000 4000 5000 500 1000 1500 2000 Prijem Vydaje za jidlo
Volba regresní funkce Při volbě regresní funkce je nutné znát její základní vlastnosti, tj. znát jednotlivé funkce, jejich analytické vyjádření, jejich průběh, definiční obor a obor hodnot. V prvé řadě má regresní model co nejlépe zobrazit reálné vztahy mezi jevy a odrážet je v jejich podstatných rysech. Z tohoto důvodu, je třeba vycházet z posouzení věcné podstaty zkoumaných jevů a jejich souvislostí. V mnoha případech však není možno volit regresní funkci apriorně. Pak voĺıme regresní funkci na základě posouzení závislosti v pozorovaných datech. Tento přístup však nemusí vést k nalezení regresní funkce (problém malého počtu pozorování), vhodné pro popis závislosti v základním souboru.
Volba regresní funkce Pro empirické posouzení závislosti je možno použít bodový diagram nebo čáru podmíněných průměrů. Obvykle se však postupuje takto: Vymezíme množinu regresních funkcí - pokud možno jednoduchých Určíme odhady jednotlivých regresních parametrů pro jednotlivé typy regresních funkcí Na základě různých kritéríı zkoumáme, která z regresních funkcí nejlépe vyhovuje empirickým datům.
Korelační koeficient Pro posuzování vhodnosti regresní funkce a těsnosti závislosti vysvětlované proměnné y na uvažovaných vysvětlujících proměnných se používá také druhá odmocnina indexu determinace. Ta se nazývá index korelace (koeficient korelace). V případě prosté lineární regrese jej lze definovat například takto: r yx = cov(x, y) σ x σ y Tato statistika vyjadřuje stupeň lineární statistické závislosti. Symbol cov(x, y) v čitateli představuje kovarianci proměnných x a y. Ve jmenovateli pak vystupuje součin směrodatných odchylek nezávisle a závisle proměnné.
Korelační pole 0.7561 x y 0 20 50 20 0 20 40 60 80 0.0315 x y 0 20 50 60 40 20 0 20 40 60 80 0.997 x y 0 20 50 0 10 20 30 40 50 0.997 x y 0 20 50 50 40 30 20 10 0 1e 04 x y 50 0 20 50 0 500 1000 1500 2000 2500 0.649 x y 0 20 50 80 60 40 20 0 20 c Rost 2006
Posouzení vhodnosti modelu Jedním ze základních kritéríı pro posouzení kvality regresní funkce je tzv. součet čtverců residuí, definovaný jako S = n i=1 ɛ i ɛ i = ɛ ɛ Na základě tohoto kritéria dáváme přednost tomu regresnímu modelu pro nějž nabývá tato statistika nižší hodnoty. V případě, že porovnáváme regresní modely s různým počtem regresních parametrů, musíme si uvědomit, že u regresní funkce s větším počtem parametrů bude residuální součet čtverců nižší než u regresní funkce s menším počtem regresních parametrů.
Otázka vhodnosti modelu Z tohoto důvodu využíváme pro srovnání tzv. residuální rozptyl definovaný jako s 2 e = S n p
Test všech prediktorů - vysvětlujících proměnných Jsou vysvětlující proměnné užitečné pro predikci závisle proměnné? Formálně testujeme hypotézu: Testovou statistikou je H 0 : β 1 = β 2 =... = β p 1 = 0 F = (T SS RSS)/(p 1) RSS/(n p) F F p 1,n p Kde RSS a T SS: RSS = (y Xˆβ) t (y Xˆβ) T SS = (y ȳ) t (y ȳ) Vysoké hodnoty F vedou k zamítnutí testované hypotézy.
... pokračování příkladu summary(model) Residuals: Min 1Q Median 3Q Max -725.699-60.239-4.317 53.411 515.772 Coefficients: Estimate Std. Error t value Pr(> t ) (Intercept) 147.47539 15.95708 9.242 <2e-16 *** prijem 0.48518 0.01437 33.772 <2e-16 *** --- Signif. codes: 0 *** 0.001 ** 0.01 * 0.05. 0.1 1 Residual standard error: 114.1 on 233 degrees of freedom Multiple R-Squared: 0.8304, Adjusted R-squared: 0.8296 F-statistic: 1141 on 1 and 233 DF, p-value: < 2.2e-16
Waldův test pro vysvětlující proměnnou Lze jím odpovědět na otázku, zda je možné vyřadit příslušnou vysvětlující proměnou z regresního modelu. Formálně tedy umožňuje testovat hypotézu H 0 : β i = 0. t i = ˆβ i s.e.( ˆβ i ) t i t n p Malou modifikací Waldova testu můžeme otestovat hypotézu kterou lze vyjádřit jako H 0 : β i = konst. Testové kritérium má pak následující tvar: t i = ˆβ i konst. s.e.( ˆβ i ) t i t n p
Konfidenční intervaly pro β Je dobré si uvědomit, že CI (angl. confidence interval) umožňují alternativně vyjádřit nejistotu našich odhadů! Obecná forma konfidenčních intervalů pro odhady regresních koeficientů: Odhad ± kritická hodnota SE odhadu V případě klasického lineárního modelu získáme intervalový odhad pro regresní koeficient β i jako ˆβ i ± t 1 α/2,n pˆσ (X t X) I ii
Lze sestrojit i simultánní konfidenční oblast pro více regresních koefeicentů. Tento přístup, pokud je umožněn statistickým softwarem, je pochopitelně preferován. Viz grafické znázornění konfidenční elipsy. Oblast, resp. 100(1 α)% konfidenční region lze vyjádřit takto: (ˆβ β) t X t X(ˆβ β) pˆσ 2 F 1 α,p,n p
Konfidenční intervaly pro regresní koeficienty β i β 1 0.40 0.45 0.50 0.55 0.60 100 120 140 160 180 200 β 0
... pokračování práce v R confint(model) 2.5 % 97.5 % (Intercept) 116.0367905 178.913984 prijem 0.4568738 0.513483
Konfidenční intervaly pro predikci V podstatě je nutné rozlišit dva významově odlišné případy: Odhad průměrné hodnoty Y, přesněji odhad podmíněné střední očekávané hodnoty veličiny Y vzhedem ke zvolené kombinaci hodnot vysvětlující (vysvětlujících) proměnné (proměnných): ŷ 0 ± t 1 α/2,n pˆσ x t 0 (Xt X) I x 0 Odhad konkrétní hodnoty Y při určité kombinaci vysvětlující proměnné, či určité kombinaci vysvětlujících proměnných: ŷ 0 ± t 1 α/2,n pˆσ 1 + x t 0 (Xt X) I x 0
Konfidenční intervaly pro predikci v R attach(belgie) range(prijem) x0<-seq(500,5200,10) prij<-data.frame(prijem=x0) pred.konfid<-predict(model,prij,se=t,interval="confidence") pred.pred<-predict(model,prij,se=t,interval="prediction") pred.konfid$fit[1:5,] fit lwr upr 1 390.0646 370.0255 410.1037 2 394.9164 375.0691 414.7636 3 399.7682 380.1105 419.4258 4 404.6200 385.1496 424.0903 5 409.4717 390.1864 428.7570
Grafy predikčních intervalů Vydaje za jidlo 500 1000 1500 2000 2500 Vydaje za jidlo 500 1000 1500 2000 2500 3000 1000 2000 3000 4000 5000 Prijem 1000 2000 3000 4000 5000 Prijem
Regresní diagnostika Mezi základní diagnostické prostředky patří především analýza reziduálních hodnot prostřednictvím kvantilových grafů spolu s diagnostickými statistikami DF BET AS, DF F IT S, COV RAT IO, Cookovou vzdáleností a diagonálními prvky projekční matice H (angl. leverage), kde H = X(X t X)X t
Residuals vs Fitted Normal Q Q Residuals 800 400 0 400 59 105 138 Standardized residuals 6 4 2 0 2 4 6 59 105 138 500 1000 1500 2000 2500 Fitted values 3 2 1 0 1 2 3 Theoretical Quantiles Standardized residuals 0.0 0.5 1.0 1.5 2.0 2.5 Scale Location 10559 138 Standardized residuals 8 4 0 2 4 6 Residuals vs Leverage 59 105 Cook's distance 1 0.5 0.5 1 138 500 1000 1500 2000 2500 Fitted values 0.00 0.05 0.10 0.15 0.20 0.25 Leverage
Galileův pokus Galileo se zabýval studiem pohybu tělesa. K tomuto studiu si sestrojil jednoduché zařízení. Na stůl umístnil nakloněnou rovinu s drážkou. Pokus spočíval v opakovaném vypouštění bronzové koule v jisté výšce, označme tuto výšku jako x a měřil vzdálenost dopadu stříbrné koule od hrany stolu. Výška stolu Galileova stolu činila 500 punti. Galileo naměřil tato data [punti ]: x y [1,] 100 253 [2,] 200 337 [3,] 300 395 [4,] 450 451 [5,] 600 495 [6,] 800 534 [7,] 1000 573 Jedno punti je rovno 169/180 mm c Rost 2006
Proložení prostou lineární regresí y = 253 337 395 451 495 534 573 (X X) I = X = [ 1 100 1 200 1 300 1 450 1 600 1 800 1 1000 X X = [ 7 3450 3450 2342500 ] 0, 5211345940 7, 675195. 10 4 0, 0007675195 1, 557286. 10 6 ˆβ = (X X) I X y = [ 269, 7124583 0, 3333370 ] ] Regresní model lze tedy zapsat jako ŷ i = 269, 7125 + 0, 333337x i pro i = 1, 2,, n. c Rost 2006
Pomocí statistického software Výsledky regresní analýzy prostá lineární regrese: Call: lm(formula = y ~ x) Coefficients: Estimate Std. Error t value Pr(> t ) (Intercept) 269.71246 24.31239 11.094 0.000104 *** x 0.33334 0.04203 7.931 0.000513 *** --- Signif. codes: 0 *** 0.001 ** 0.01 * 0.05. 0.1 1 Residual standard error: 33.68 on 5 degrees of freedom Multiple R-Squared: 0.9264, Adjusted R-squared: 0.9116 F-statistic: 62.91 on 1 and 5 DF, p-value: 0.0005132 Pokusme se ještě lépe vystihnout data prostřednictvím dalších regresních modelů a zlepšit tak proložení dat modelem. c Rost 2006
Polynom 2 stupně... Vzhledem k hodnotám by mohl být adekvátním modelem kvadratický regresní model ŷ i = β 0 + β 1 x i + β 2 x 2 i + ε i Výsledky regresní analýzy pro kvadratický regresní model: Coefficients: Estimate Std. Error t value Pr(> t ) (Intercept) 1.999e+02 1.676e+01 11.928 0.000283 *** x 7.083e-01 7.482e-02 9.467 0.000695 *** I(x^2) -3.437e-04 6.678e-05-5.147 0.006760 ** --- Signif. codes: 0 *** 0.001 ** 0.01 * 0.05. 0.1 1 Residual standard error: 13.64 on 4 degrees of freedom Multiple R-Squared: 0.9903, Adjusted R-squared: 0.9855 F-statistic: 205 on 2 and 4 DF, p-value: 9.333e-05 c Rost 2006
Ještě stále nic??? Pokusíme se přidat ještě kubický člen. Bude popisovat odhadnutá regresní funkce data lépe? Model zapíšeme takto: y i = β 0 + β 1 x i + β 2 x 2 i + β 3x 3 i + ε i. Výsledky regresní analýzy pro případ polynomu třetího stupně jsou uvedeny níže. Všiměte si, že i kubický člen je statisticky významný: Coefficients: Estimate Std. Error t value Pr(> t ) (Intercept) 1.558e+02 8.326e+00 18.710 0.000333 *** x 1.115e+00 6.567e-02 16.983 0.000445 *** I(x^2) -1.245e-03 1.384e-04-8.994 0.002902 ** I(x^3) 5.477e-07 8.327e-08 6.577 0.007150 ** --- Signif. codes: 0 *** 0.001 ** 0.01 * 0.05. 0.1 1 Residual standard error: 4.011 on 3 degrees of freedom Multiple R-Squared: 0.9994, Adjusted R-squared: 0.9987 F-statistic: 1595 on 3 and 3 DF, p-value: 2.662e-05 c Rost 2006
Nepřipadá Vám to poněkud hloupé? Kde je tedy chyba? c Rost 2006
Regresní modely y 250 350 450 550 y 250 350 450 550 200 400 600 800 1000 x 200 400 600 800 1000 x y 250 350 450 550 y 250 350 450 550? 200 400 600 800 1000 x 200 400 600 800 1000 x c Rost 2006
Správné řešení - respektujte skutečnou povahu závislostí Z fyzikálního hlediska by byla jediným správným modelem funkce popisující zákony pohybu po nakloněné rovině a šikmého vrhu mající tvar: y i = xi 2 sin2 α + 4d x i cos 2 α x i sin2α Symbol α představuje úhel nakloněné roviny po které byla vypouštěna koule, symbol d pak výšku stolu. Pokusme se tedy dospět k výsledku jinou cestou. Víme, že Galileův stůl měl výšku 500 punti, po dosazení se správná regresní rovnice zjednoduší: y i = x 2 i sin2 α + 2000 x i cos 2 α x i sin2α. Pomocí Gauss-Newtonova algoritmu se pokusíme získat odhad neznámého parametru α. Ten představuje úhel, který svírala nakloněná rovina s deskou stolu. c Rost 2006
Správné řešení nls(y~sqrt(x^2*(sin(2*a))^2+4*500*x*(cos(a))^2)-x*sin(2*a), start=c(a=0.5203),trace=true) 31357.71 : 0.5203 2576.557 : 0.6101944 2485.280 : 0.6157443 2485.263 : 0.6158206 2485.263 : 0.6158214 Nonlinear regression model model: y ~ sqrt(x^2 * (sin(2 * a))^2 + 4 * 500 * x * (cos(a))^2) - x * sin(2 * a) data: parent.frame() a 0.6158214 residual sum-of-squares: 2485.263. = 35, 3. Dále Řešením jsme získali odhad ˆα = 0, 6158214, tj. můžeme odečíst reziduální sumu čtverců, dosahuje hodnoty 2485,263. c Rost 2006
Respektujte povahu věcí... Spravný model y 250 300 350 400 450 500 550 200 400 600 800 1000 x c Rost 2006
Literatura Problematika je diskutována například v následují literatuře: Norman R. Draper, Harry Smith: Applied Regression Analysis,Wiley Series in Probability and Statistics, ISBN 1-58488-425-8 Julian J. Faraway: Linear Models with R, Chapman & Hall/CRC, Boca Raton, 2005, ISBN 1-58488-425-8 John Fox: An R and S-plus Companion to Applied Regression, Sage Publication, Thousand Oaks, 2002, ISBN 0-7619-2280-6
Děkuji za pozornost.