Otázka:
Maximální počet nezávislých proměnných, které lze zadat do vícenásobné regresní rovnice
Melissa Duncombe
2011-07-10 07:05:06 UTC
view on stackexchange narkive permalink

Jaký je limit počtu nezávislých proměnných, které lze zadat do vícenásobné regresní rovnice? Mám 10 prediktorů, které bych chtěl zkoumat z hlediska jejich relativního příspěvku k výsledné proměnné. Mám použít korekci bonferroni k úpravě pro více analýz?

čtyři odpovědi:
Jeromy Anglim
2011-07-10 08:59:17 UTC
view on stackexchange narkive permalink

Musíte přemýšlet o tom, co máte na mysli pod „limitem“. Existují limity, například když máte více prediktorů než případů, narazíte na problémy v odhadu parametrů (viz malá simulace R ve spodní části této odpovědi) ).

Představuji si však, že mluvíte spíše o měkkých mezích týkajících se statistické síly a dobré statistické praxe. V tomto případě není jazyk „limitů“ opravdu vhodný. Spíše větší velikosti vzorků mají tendenci aby bylo rozumnější mít více prediktorů a hranice toho, kolik prediktorů je rozumných, pravděpodobně spadá do kontinua přiměřenosti. Diskuse o pravidlech pro velikost vzorku v několika regresích může být relevantní, protože mnoho takových obecných pravidel odkazuje na počet prediktorů.

Několik bodů

  • Pokud vám jde spíše o celkovou predikci než o statistickou významnost jednotlivých prediktorů, pak je pravděpodobně rozumné zahrnout více prediktorů, než pokud máte obavy w se statistickou významností jednotlivých prediktorů.
  • Pokud vás více zajímá testování konkrétního statistického modelu, který souvisí s vaší výzkumnou otázkou (např. jak je to běžné v mnoha aplikacích společenských věd), pravděpodobně máte důvody pro zahrnutí konkrétní prediktory. Můžete však mít také příležitost být selektivní, do kterých prediktorů zahrnete (např. pokud máte více proměnných, které měří podobný konstrukt, můžete zahrnout pouze jednu z nich). spousta možností a rozhodnutí, které prediktory zahrnout, zahrnuje úzké spojení mezi vaší teorií a výzkumnou otázkou.
  • Často nevidím výzkumníky používající Bonferroniho korekce aplikované na testy významnosti regresních koeficientů. Jedním z rozumných důvodů může být to, že vědci mají větší zájem o hodnocení celkových vlastností modelu.
  • Pokud vás zajímá posouzení relativní důležitosti prediktorů, považuji za užitečné prozkoumat jak dvojrozměrný vztah mezi prediktorem a výsledkem, tak i vztah mezi prediktorem a kontrolou výsledku u ostatních prediktorů. Pokud zahrnete mnoho prediktorů, je častěji pravděpodobné, že zahrnete prediktory, které jsou vysoce vzájemně propojené. V takových případech může být užitečná interpretace indexů důležitosti založených jak na bivariatech, tak na modelech, protože proměnná důležitá v bivariate smyslu může být v modelu skrytá jinými korelovanými prediktory ( více zde rozpracuji s odkazy).


Malá simulace R

Tuto malou simulaci jsem napsal, abych zdůraznil vztah mezi velikostí vzorku a parametrem odhad ve vícenásobné regrese.

  set.seed (1) fitmodel <- funkce (n, k) {# n: velikost vzorku # k: počet prediktorů # návrat lineárního modelu vhodného pro daný vzorek prediktory velikosti a k ​​x <- data.frame (matrix (rnorm (n * k), nrow = n)) names (x) <- paste ("x", seq (k), sep = "") x $ y <- rnorm (n) lm (y ~., Data = x)}  

Funkce fitmodel vyžaduje dva argumenty n pro velikost vzorku a k pro počet prediktorů. Nepočítám konstantu jako prediktor, ale odhaduje se. Potom vygeneruji náhodná data a vejde se do regresního modelu předpovídajícího proměnnou a z proměnných prediktoru k a vrátí fit.

Vzhledem k tomu, že jste ve své otázce zmínili, že vás zajímá, zda je 10 prediktorů příliš mnoho, následující volání funkcí ukazují, co se stane, když je velikost vzorku 9, 10, 11 a 12. Tj. Velikost vzorku je o jeden menší než počet prediktorů na dva více než počet prediktorů

  souhrn (fitmodel (n = 9, k = 10)) souhrn (fitmodel (n = 10) , k = 10)) shrnutí (fitmodel (n = 11, k = 10)) shrnutí (fitmodel (n = 12, k = 10))  

> shrnutí (fitmodel (n = 9, k = 10))

  volání: lm (vzorec = y ~., data = x) rezidua: VŠECH 9 reziduí je 0: ne zbytkové stupně volnosti! Koeficienty: (2 nejsou definovány kvůli singularitám) Odhad Std. Chybná hodnota t Pr (> | t |) (Intercept) -0,31455 NA NA NAx1 0,34139 NA NA NAxx-0,45924 NA NA NAx3 0,42474 NA NAx4 -0,87727 NA NA NAx5 -0,07884 NA NA NAx6 -0,03900 NA NAxx7 1,08482 NA NAx8 0,62890 NA NA NAx9 NA NA NA NAx10 NA NA NA N Zbytková standardní chyba: NaN na 0 stupních volnosti Více R-kvadrát: 1, Upravený R-kvadrát: NaN F-statistika: NaN na 8 a 0 DF, p-hodnota: NA  

Velikost vzorku je o jeden menší než počet prediktorů. Je možné odhadnout pouze 9 parametrů, z nichž jeden je konstanta.

> shrnutí (fitmodel (n = 10, k = 10))

  Volejte: lm (vzorec = y ~., Data = x) Zbytky: VŠECH 10 zbytků je 0: žádný zbytkový stupeň s svobody! Koeficienty: (1 není definováno kvůli singularitám) Odhad Std. Chyba t hodnota Pr (> | t |) (Intercept) 0,1724 NA NA NAx1 -0,3615 NA NA NAxx-0,4670 NA NA NAx3 -0,6883 NA NA NAx4 -0,1744 NA NA NAx5 -1,0331 NA NA NAx6 0,3886 NA NAxx -0,9886 NA NA NAx8 0,2778 NA NA NAx9 0,4616 NA NA NAxx10 NA NA NA NAR zbytková standardní chyba: NaN na 0 stupních volnosti Více R-kvadrát: 1, Upravený R-kvadrát: NaN
Statistika F: NaN na 9 a 0 DF, hodnota p: NA 

Velikost vzorku je stejná jako počet prediktorů. Je možné odhadnout pouze 10 parametrů, z nichž jeden je konstanta.

> shrnutí (fitmodel (n = 11, k = 10))

  volání: lm (vzorec = y ~., data = x) zbytky : VŠECH 11 reziduí je 0: žádné zbytkové stupně volnosti! Koeficienty: Odhad Std. Chybná hodnota t Pr (> | t |) (Intercept) -0,9638 NA NA NAx1 -0,8393 NA NA NAx2 -1,5061 NA NA NAx3 -0,4917 NA NA NAx4 0,3251 NA NA NAx5 4,4212 NA NA NAx6 0,7614 NA NAx7 -0,4195 NA NA 0,2142 NA NA NAx9 -0,9264 NA NA NAx10 -1,2286 NA NA N Zbytková standardní chyba: NaN na 0 stupních volnosti Více R-kvadrát: 1, Upravený R-kvadrát: NaN F-statistika: NaN na 10 a 0 DF, p-hodnota: NA 

Velikost vzorku je o jeden více než počet prediktorů. Všechny parametry jsou odhadovány včetně konstanty.

> shrnutí (fitmodel (n = 12, k = 10) ))

  Volání: lm (vzorec = y ~., data = x) Zbytky: 1 2 3 4 5 6 7 8 9 10 11 0,036530 -0,042154 -0,009044 -0,117590 0,171923 -0,007976 0,050542 -0,011462 0,010270 0,000914 -0,083533 12 0,001581 Koeficienty: Odhad Std. Chyba t hodnota Pr (> | t |) (Intercept) 0,14680 0,11180 1,313 0,4144 x1 0,02498 0,09832 0,244 0,8416 x2 1,01950 0,13602 7,495 0,0844 .x3 -1,76290 0,26094 -6,756 0,0936 .x4 0,44832 0,16283 2,753 0,2218 x5 -0,71 0,33209 0,18554 - 1,790 0,3244
x7 1,62276 0,21562 7,526 0,0841 .x8 -0,47561 0,18468 -2,575 0,2358 x9 1,70578 0,31547 5,407 0,1164 x10 3,25415 0,46447 7,006 0,0903 .--- Signif. kódy: 0 '***' 0,001 '**' 0,01 '*' 0,05 '.' 0,1 '' 1 Zbytková standardní chyba: 0,2375 na 1 stupni volnosti Více R-kvadrát: 0,995, Upravený R-kvadrát: 0,9452 F-statistika : 19,96 na 10 a 1 DF, hodnota p: 0,1726 

Velikost vzorku je o dva více než počet prediktorů a konečně je možné odhadnout přizpůsobení celkového modelu.

Může někdo vysvětlit, proč jsou standardní chyby v prvním scénáři (n = 9, k = 10) NA?Mám standardní chybový vzorec, ale nevidím, jak by jmenovatel byl 0, abychom dostali NA.
Frank Harrell
2011-07-10 17:51:10 UTC
view on stackexchange narkive permalink

Často se na to dívám z hlediska toho, zda model vybavený určitým počtem parametrů pravděpodobně přinese předpovědi mimo vzorek, které jsou stejně přesné jako předpovědi provedené na původním vzorku vývoje modelu. Kalibrační křivky, střední kvadratické chyby X * Beta a indexy prediktivní diskriminace jsou některá z obvykle používaných měřítek. Odtud pocházejí některá základní pravidla, například pravidlo 15: 1 (efektivní velikost vzorku 15 na zkoumaný nebo odhadovaný parametr).

Pokud jde o multiplicitu, perfektní úprava multiplicity za předpokladu model drží a jsou splněny distribuční předpoklady, je globální test, že všechny bety (kromě průsečíku) jsou nulové. Toto se obvykle testuje pomocí poměru pravděpodobnosti nebo testu F.

Existují dva celkové přístupy k vývoji modelu, které mají tendenci fungovat dobře. (1) Mít přiměřenou velikost vzorku a přizpůsobit se celému předem specifikovanému modelu a (2) použít penalizovaný odhad maximální pravděpodobnosti, aby v regresi byl povolen pouze tolik účinných stupňů volnosti, kolik bude aktuální velikost vzorku podporovat. [Postupný výběr proměnných bez penalizace by neměl hrát žádnou roli, protože je známo, že nefunguje.]

Jsou tato základní pravidla založena na předpokladech o velikosti skutečných regresních koeficientů a velikosti odchylky chyb? Měl bych pravdu, kdybych si myslel, že pokud je známo, že odchylka chyby je velmi malá, je přijatelný mnohem menší poměr datových bodů k parametrům?
To je vynikající bod, který jsem opomněl zmínit. Pravidlo 15: 1 platí pro typy signál: šumové poměry pozorované v biomedicínských a sociálních vědách. Pokud máte nízkou zbytkovou odchylku, můžete přesně odhadnout mnohem více parametrů.
gappy
2011-07-11 08:47:12 UTC
view on stackexchange narkive permalink

Otázku bych přeformuloval takto: Mám pozorování $ n $ a prediktory kandidátů $ p $. Předpokládejme, že skutečný model je lineární kombinací proměnných $ m $ mezi prediktory kandidátů $ p $. Existuje horní hranice do $ m $ (váš limit), takže mohu stále identifikovat tento model? Intuitivně, pokud je $ m $ příliš velký ve srovnání s $ n $, nebo je velký ve srovnání s $ p $, může být těžké určit správný model. Jinými slovy: existuje omezení výběru modelu?

Na tuto otázku Candes and Plan ve své práci kladně odpovídají „Výběr téměř ideálního modelu minimalizací $ \ ell_1 $“: $ m \ le K p \ sigma_1 / \ log (p) $, kde $ \ sigma_1 $ je největší singulární hodnota matice prediktorů $ X $. Jedná se o hluboký výsledek, a ačkoli se spoléhá na několik technických podmínek, spojuje počet pozorování (prostřednictvím $ \ sigma_1 $) a $ p $ s počtem prediktorů, které můžeme doufat odhadnout.

probabilityislogic
2011-07-10 15:50:57 UTC
view on stackexchange narkive permalink

V zásadě neexistuje samo o sobě žádné omezení počtu prediktorů, které můžete mít. V zásadě můžete odhadnout 2 miliardy „betas“. V praxi se ale děje to, že bez dostatečných údajů nebo dostatečných předběžných informací se neprokáže jako velmi plodné cvičení. Žádné konkrétní parametry nebudou stanoveny velmi dobře a z analýzy se toho moc nedozvíte.

Nyní, pokud nemáte mnoho předchozích informací o svém modelu (struktura modelu, hodnoty parametrů, šum, atd.), pak budete k poskytnutí těchto údajů potřebovat údaje. Toto je obvykle nejběžnější situace, která dává smysl, protože obvykle potřebujete docela dobrý důvod ke sběru dat (a utrácení $$$) o něčem, co už docela dobře znáte. Pokud je to vaše situace, pak je rozumným limitem mít velký počet pozorování na parametr. Máte 12 parametrů (10 sklonových bet, 1 zachycení a parametr šumu), takže vše, co má přes 100 pozorování, by mělo být schopno určit vaše parametry dostatečně dobře, aby bylo možné učinit nějaké závěry.

Ale existuje žádná „tvrdá a rychlá“ pravidla. S pouhými 10 prediktory byste neměli mít problémy s výpočtovým časem (získáte lepší počítač, pokud ano). Znamená to hlavně dělat více práce, protože máte 11 dimenzí dat, které chcete absorbovat - což ztěžuje vizualizaci dat. Základní principy z regrese pouze s 1 závislou proměnnou se ve skutečnosti neliší.

Problém s Bonferroniho korekcí spočívá v tom, že má-li to být rozumný způsob, jak upravit úroveň významnosti, aniž byste obětovali příliš mnoho síly, potřebujete hypotézu, kterou opravujete, abyste byli nezávislí (tj. zjištění, že jedna hypotéza je pravdivá, vám říká nic o tom, zda je jiná hypotéza pravdivá). To neplatí například pro standardní „t-test“ ve vícenásobné regresi pro koefektivní nulovou hodnotu. Statistika testu závisí na tom, co ještě v modelu je - což je kruhový objezd, podle kterého jsou hypotézy závislé. Nebo častější způsob, jak to říci, je, že rozdělení vzorkování t-hodnoty podmíněné nulovým prediktorem nuly závisí na tom, jaké další parametry jsou nulové. Použitím Bonferroniho korekce zde tedy může být ve skutečnosti nižší „celková“ úroveň významnosti, než si myslíte.



Tyto otázky a odpovědi byly automaticky přeloženy z anglického jazyka.Původní obsah je k dispozici na webu stackexchange, za který děkujeme za licenci cc by-sa 3.0, pod kterou je distribuován.
Loading...