Otázka:
Jak se porovnává síla logistické regrese a t-testu?
russellpierce
2010-10-28 23:33:15 UTC
view on stackexchange narkive permalink

Je síla logistické regrese a t-testu ekvivalentní? Pokud ano, měly by být „ekvivalentem hustoty dat“, což znamená, že stejný počet podkladových pozorování přináší stejnou sílu vzhledem k pevné alfa 0,05. Zvažte dva případy:

  1. [Parametrický t-test]: Provede se 30 tahů z binomického pozorování a výsledné hodnoty se zprůměrují. To se provádí 30krát pro skupinu A (která má binomický Pr 0,70 výskytu) a 30krát pro skupinu B (která má binomický Pr 0,75 výskytu). Tím se získá 30 prostředků na skupinu, které představují souhrn 1 800 čerpání z binomické distribuce. K porovnání průměrů je proveden 58df t-test.
  2. [Logistická regrese]: Logistická regrese se provádí s fiktivním kódovaným sklonem představujícím členství ve skupině a každou z 1 800 remíz. / ol>

    Moje otázka má dvě části:

    1. Vzhledem k množině alfa 0,05 bude síla těchto metod stejná nebo odlišná? Proč? Jak to mohu dokázat?
    2. Je odpověď na otázku 1 citlivá na velikosti vzorku vstupující do t-testu, velikost vzorku každé skupiny v t-testu, základní binomické pravděpodobnosti nebo jiné faktor? Pokud ano, jak mohu vědět (bez simulace), že síla je skutečně odlišná a jaký druh změn způsobí, jaký druh změn v moci? Alternativně poskytněte vypracovaný R kód, který problém vyřeší pomocí simulace.
Dva odpovědi:
whuber
2010-10-29 01:59:00 UTC
view on stackexchange narkive permalink

Pokud jsem vypočítal správně, logická regrese asymptoticky má stejnou sílu jako t-test. Chcete-li to vidět, zapište si jeho logaritmickou pravděpodobnost a vypočítejte očekávání jeho hesenského na jeho globálním maximu (jeho negativní odhady matice rozptylu a kovariance řešení ML). Neobtěžujte se obvyklou logistickou parametrizací: je jednodušší ji parametrizovat dvěma dotyčnými pravděpodobnostmi. Podrobnosti budou záviset na tom, jak přesně testujete významnost logistického regresního koeficientu (existuje několik metod).

To, že tyto testy mají podobné schopnosti, by nemělo být příliš překvapivé, protože teorie chí-kvadrát pro ML odhady jsou založeny na normální aproximaci logaritmické pravděpodobnosti a t-test je založen na normální aproximaci distribucí proporcí. Podstatou je, že obě metody vytvářejí stejné odhady obou proporcí a oba odhady mají stejné standardní chyby.


Skutečná analýza může být přesvědčivější. Pojďme si osvojit obecnou terminologii pro hodnoty v dané skupině (A nebo B):

  • $ p $ je pravděpodobnost 1.
  • $ n $ je velikost každé sady losování.
  • $ m $ je počet sad losování.
  • $ N = mn $ je množství dat.
  • $ k_ {ij} $ (rovná se $ 0 $ nebo $ 1 $) je hodnota výsledku $ j ^ \ text {th} $ v sadě losování $ i ^ \ text {th} $.
  • $ k_i $ je celkový počet jednotek v sadě losování $ i ^ \ text {th} $.
  • $ k $ je celkový počet jednotek.

Logistická regrese je v podstatě odhad ML pro $ p $. Jeho logaritmus je dán vztahem

$$ \ log (\ mathbb {L}) = k \ log (p) + (Nk) \ log (1-p). $$

Jeho deriváty s ohledem na parametr $ p $ jsou

$$ \ frac {\ částečné \ log (\ mathbb {L})} {\ částečné p} = \ frac {k} {p} - \ frac {Nk} {1-p} \ text {and} $$

$$ - \ frac {\ částečné ^ 2 \ log (\ mathbb {L})} {\ částečné p ^ 2} = \ frac {k} {p ^ 2} + \ frac {Nk} {(1-p) ^ 2}. $$

Nastavením prvního na nulu se získá odhad ML $ {\ hat {p} = k / N} $ a jeho vložením do převrácené hodnoty druhého výrazu se získá varianta $ \ hat {p} (1 - \ hat { p}) / N $, což je druhá mocnina standardní chyby.

t statistika bude získána z odhadů na základě dat seskupených podle sad losování; jmenovitě jako rozdíl průměrů (jeden ze skupiny A a druhý ze skupiny B) dělený standardní chybou tohoto rozdílu, která se získá ze směrodatných odchylek průměrů. Podívejme se tedy na průměr a směrodatnou odchylku pro danou skupinu. Průměr se rovná $ k / N $, což je totožné s odhadem ML $ \ hat {p} $. Dotyčná směrodatná odchylka je směrodatná odchylka čerpacích prostředků; to znamená, že jde o směrodatnou odchylku množiny $ k_i / n $. Zde je podstata věci, pojďme tedy prozkoumat některé možnosti.

  1. Předpokládejme, že data nejsou vůbec seskupena do losování: tj. $ N = 1 $ a $ m = N $. $ K_ {i} $ jsou prostředky losování. Jejich ukázková varianta se rovná $ N / (N-1) $ krát $ \ hat {p} (1 - \ hat {p}) $. Z toho vyplývá, že standardní chyba je shodná se standardní chybou ML kromě faktoru $ \ sqrt {N / (N-1)} $, který je v podstatě $ 1 $, když $ N = 1800 $. Proto - kromě tohoto malého rozdílu - budou všechny testy založené na logistické regrese stejné jako t-test a dosáhneme v podstatě stejné síly.

  2. Když data jsou seskupena, (true) rozptyl $ k_i / n $ se rovná $ p (1-p) / n $, protože statistika $ k_i $ představuje součet proměnných $ n $ Bernoulli ($ p $), každá s odchylka $ p (1-p) $. Proto očekávaná standardní chyba průměru $ m $ těchto hodnot je druhá odmocnina $ p (1-p) / n / m = p (1-p) / N $, jen jako předtím.

Číslo 2 naznačuje, že síla testu by se neměla znatelně lišit v závislosti na tom, jak jsou rozděleny losování (tj. s tím, jak se $ m $ a $ n $ mění podle $ mn = N $), kromě snad malý efekt z úpravy v rozptylu vzorku (pokud jste nebyli tak hloupí, že byste v každé skupině použili extrémně málo sad remíz).

Omezené simulace pro porovnání $ p = 0,70 $ až $ p = 0,74 $ (s 10 000 iteracemi za kus) zahrnující $ m = 900, n = 1 $ (v podstatě logistická regrese); $ m = n = 30 $; a $ m = 2, n = 450 $ (maximalizace úpravy rozptylu vzorku) to potvrzují: síla (při $ \ alpha = 0,05 $, jednostranná) je v prvních dvou případech 0,59, zatímco ve třetím, kde korekční faktor provede podstatnou změnu (nyní existují pouze dva stupně volnosti místo 1798 nebo 58), klesne na 0,36. Další test porovnávající $ p = 0,50 $ s $ p = 0,52 $ dává mocnosti 0,22, 0,21 a 0,15, v tomto pořadí: opět pozorujeme pouze mírný pokles od bez seskupení do losování (= logistická regrese) do seskupení do 30 skupin a podstatný rozbalovací seznam na pouhé dvě skupiny.

Morálka této analýzy je:

  1. Při rozdělení svého oddílu o mnoho neztratíte Datové hodnoty $ N $ do velkého počtu $ m $ relativně malých skupin „remíz“.
  2. Při malém počtu skupin můžete přijít o znatelnou sílu ($ m $ je malé, $ n $ - množství dat na skupinu - je velké).
  3. Nejlepší je, když své datové hodnoty $ N $ neseskupujete vůbec do „losování“. Stačí je analyzovat tak, jak jsou (pomocí jakéhokoli rozumného testu, včetně logistické regrese a t-testování).
@suncoolsu Je škoda, že nemůžeme hlasovat pro aktualizaci ...
@chl .. Souhlasím, rád bych dal (+2) :-), vlastně jsem o této otázce až do této aktualizace nikdy tak hluboce neuvažoval.
Jako obvykle tour de force od Billa Hubera.Podívám se na zmatenou otázku, jak porovnat výkon pro t test s logistickou regresí.Ale zdá se, že shodnost dává oběma metodám za úkol testovat proporce.
user28
2010-11-03 00:19:50 UTC
view on stackexchange narkive permalink

Zde je kód v R, který ilustruje simulaci odpovědi Whubera. Zpětná vazba na vylepšení mého R kódu je více než vítaná.

  N <- 900 # Celkový počet datových bodům <- 30; # Velikost remízy na set <- 30; # Počet setsp_null <- 0,70; # Null hypothesisp_alternate <- 0,74 # Alternativní hypothesistot_iter <- 10 000; set.seed (1); # Inicializovat náhodné seednull_rejected <- 0; # Nastavit čítač na 0for (iter in 1: tot_iter) {draws1 <- matrix (0, m, n); draw2 <- matice (0, m, n); means1 <- matice (0, m); means2 <- matice (0, m); for (obs in 1: m) {draws1 [obs,] <-rbinom (n, 1, p_null); draw2 [obs,] <rbinom (n, 1, p_alternate); means1 [obs,] <- mean (draws1 [obs,]); means2 [obs,] <- mean (draws2 [obs,]); } if (t.test (means1, means2, alternative = "l") $ p.value < = 0,05) {null_rejected <- null_rejected + 1; }} power <- null_rejected / tot_iter  
Děkujeme za sdílení! (Líbí se mi tvůj styl vytváření proměnných všech parametrů a jejich jasné komentování.) Dnes jsem mimo hlasování :-( takže si budu muset počkat, než to potvrdím.
@Srikant Jen pár slov o R kódu (na váš požadavek): můžete použít `replicate ()` kdykoli chcete volat danou funkci jako `rbinom ()` $ k $ nezávislé časy; funkce rodiny „{*} apply ()“ jsou velmi užitečné pro práci s matrix, data.frame nebo seznamem a volání stejné funkce pomocí sloupce nebo řádku; doporučuje se vyhnout se podtržítku pro pojmenování proměnných (a místo toho použít tečku), ale je předmětem debaty. Jinak mám také rád jednoduchý a explicitní R kód, jako je ten váš, protože bude všem srozumitelný. Dal jsem své +1.
@chl Díky. Tyto otázky používám k tomu, abych se naučil R! Zpětná vazba, jako je ta vaše, je tedy cenná.
@Skrikant LOL Právě jsem přidával: „BTW Líbí se mi způsob, jakým se učíš R!“
Jsem zmatený; nedává to jen sílu t.testu?
@drknexus Samozřejmě dává sílu pouze t-testu. whuber poukázal na dopad seskupování dat do souborů a poskytl výstup pro určité konkrétní situace. Jednoduše jsem naprogramoval jeho simulaci v R, která demonstruje bod, který udělal ve vztahu k t-testu.
Ah; dobře. Neporovnává moc pomocí simulace (jak byla položena otázka). Ale kód, který jste vytvořili, bylo snadné upravit; dík.


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 2.0, pod kterou je distribuován.
Loading...