Jak uzyskać przedział ufności dla zmiany r-kwadratowej populacji

10

Dla prostego przykładu załóżmy, że istnieją dwa modele regresji liniowej

  • 1 Model posiada trzy czynniki prognostyczne, x1a, x2b, ix2c
  • Model 2 ma trzy predyktory z modelu 1 i dwa dodatkowe predyktory x2aorazx2b

Istnieje równanie regresji populacji, w którym wyjaśniona wariancja populacji wynosi ρ(1)2 dla Modelu 1 i ρ(2)2 dla Modelu 2. Inkrementalna wariancja wyjaśniona przez Model 2 w populacji wynosi Δρ2=ρ(2)2ρ(1)2

Jestem zainteresowany uzyskaniem standardowych błędów i przedziałów ufności dla estymatora Δρ2 . Chociaż przykład dotyczy odpowiednio predyktorów 3 i 2, moje zainteresowania badawcze dotyczą szerokiego zakresu różnych liczb predyktorów (np. 5 i 30). Moją pierwszą myślą było używać Δradj2=radj(2)2radj(1)2 jako prognozy i bootstrap, ale nie byłem pewien, czy byłoby to właściwe.

pytania

  • Czy rozsądny estymatorem hemibursztynianu p 2 ?Δradj2Δρ2
  • Jak można uzyskać przedział ufności dla zmiany r-kwadrat populacji (tj. )?Δρ2
  • Czy ładowanie byłoby odpowiednie do obliczania przedziału ufności?Δρ2

Wszelkie odniesienia do symulacji lub opublikowanej literatury będą również mile widziane.

Przykładowy kod

Jeśli to pomoże, stworzyłem mały zestaw danych symulacyjnych w R, który można wykorzystać do zademonstrowania odpowiedzi:

n <- 100
x <- data.frame(matrix(rnorm(n *5), ncol=5))
names(x) <- c('x1a', 'x1b', 'x1c', 'x2a', 'x2b')
beta <- c(1,2,3,1,2)
model2_rho_square <- .7
error_rho_square <- 1 - model2_rho_square
error_sd <- sqrt(error_rho_square / model2_rho_square* sum(beta^2))
model1_rho_square <- sum(beta[1:3]^2) / (sum(beta^2) + error_sd^2)
delta_rho_square <- model2_rho_square - model1_rho_square

x$y <- rnorm(n, beta[1] * x$x1a + beta[2] * x$x1b + beta[3] * x$x1c +
               beta[4] * x$x2a + beta[5] * x$x2b, error_sd)

c(delta_rho_square, model1_rho_square, model2_rho_square)
summary(lm(y~., data=x))$adj.r.square - 
        summary(lm(y~x1a + x1b + x1c, data=x))$adj.r.square

Powód do niepokoju z bootstrap

Uruchomiłem bootstrap na niektórych danych z około 300 przypadkami i 5 predyktorami w prostym modelu i 30 predyktorami w pełnym modelu. Podczas gdy oszacowanie próbki przy użyciu skorygowanej różnicy r-kwadrat było 0.116, przedział ufności podskokiem był przeważnie większy CI95% (0,095 do 0,214), a średnia wartości bootstrapów nie była w pobliżu oszacowania próbki. Wydawało się, że średnia z próbek z zatłoczoną próbką jest wyśrodkowana na oszacowanej próbce różnicy między r-kwadratami w próbce. Dzieje się tak pomimo tego, że do oszacowania różnicy użyłem skorygowanych próbek r-kwadratów.

Co ciekawe, wypróbowałem alternatywny sposób obliczania asΔρ2

  1. obliczyć próbkę zmiany r-kwadrat
  2. skoryguj zmianę próbki r-kwadrat za pomocą standardowej skorygowanej formuły r-kwadrat

W zastosowaniu do przykładowych danych ta zmniejszona oszacowanie do lecz wydawało się odpowiednie przedziały ufności dla tej metody I wspomnianym pierwszym, 95% przedział ufności (0,062, 0,179) ze średnią .118.Δρ2.082

Ogólnie rzecz biorąc, obawiam się, że ładowanie początkowe zakłada, że ​​próbka jest populacją, a zatem szacunki, że redukcja w przypadku nadmiernego dopasowania może nie działać odpowiednio.

Jeromy Anglim
źródło
„Obawiam się jednak, że bootstrapowanie takiej wartości skorygowanej pod względem populacji może być problematyczne”. -- dlaczego?
stycznia 13
@ Stycznia Edytowałem pytanie i starałem się wyrazić moje obawy dotyczące ładowania początkowego za pomocą skorygowanego r-kwadratu.
Jeromy Anglim
Jaka jest populacja R podniesiona do kwadratu ? Przyjrzałem się podanej tutaj definicji, ale dla mnie wariancja nie ma sensu, ponieważ y i nie są identycznie rozłożone. σy2yi
Stéphane Laurent
@ StéphaneLaurent jest to procent wariancji wyjaśniony w populacji przez równanie regresji populacji. Możesz też zdefiniować go asymptotycznie jako odsetek wariancji wyjaśniony w próbie, gdy wielkość próby zbliża się do nieskończoności. Zobacz także tę odpowiedź dotyczącą obiektywnych szacunków populacji r-kwadrat . Jest to szczególnie istotne w psychologii, gdzie często bardziej interesuje nas prawdziwa relacja niż faktyczne stosowanie naszego szacunkowego równania prognostycznego.
Jeromy Anglim
3
Test F można traktować jako test hipotezy . Czy można tego użyć do uzyskania standardowego błędu i przedziału ufności, którego szukasz? Δρ2=0
Maarten Buis

Odpowiedzi:

3

Populacja R2

Ja najpierw próbuje zrozumieć definicję ludności R-kwadrat .

Cytując swój komentarz:

Możesz też zdefiniować go asymptotycznie jako odsetek wariancji wyjaśniony w próbie, gdy wielkość próby zbliża się do nieskończoności.

Myślę, że masz na myśli to jest granica próbki R2 , gdy jeden replikuje modelowi nieskończenie wiele razy (z tymi samymi czynnikami prognostycznymi przy każdej replikacji).

Jaki jest zatem wzór na wartość asymptotyczną próbki ? Napisz swój model liniowy Y = μ + σ G jak w https://stats.stackexchange.com/a/58133/8402 i używaj tych samych notacji co ten link. Następnie można sprawdzić, czy próbka R 2 przechodzi do P O P R 2 : = λR²Y=μ+σG
R2 gdy powiela się modelY=μ+σGnieskończenie wiele razy.popR2:=λn+λY=μ+σG

Jako przykład:

> ## design of the simple regression model lm(y~x0)
> n0 <- 10
> sigma <- 1
> x0 <- rnorm(n0, 1:n0, sigma)
> a <- 1; b <- 2 # intercept and slope
> params <- c(a,b)
> X <- model.matrix(~x0)
> Mu <- (X%*%params)[,1]
> 
> ## replicate this experiment k times 
> k <- 200
> y <- rep(Mu,k) + rnorm(k*n0)
> # the R-squared is:
> summary(lm(y~rep(x0,k)))$r.squared 
[1] 0.971057
> 
> # theoretical asymptotic R-squared:
> lambda0 <- crossprod(Mu-mean(Mu))/sigma^2
> lambda0/(lambda0+n0)
          [,1]
[1,] 0.9722689
> 
> # other approximation of the asymptotic R-squared for simple linear regression:
> 1-sigma^2/var(y)
[1] 0.9721834

Populacja submodeluR2

Załóżmy teraz, że modelem jest z H 1 : μ W 1 i rozważmy podmodel H 0 : μ W 0 .Y=μ+σGH1:μW1H0:μW0

Następnie stwierdzono powyżej, że populacja modelowego H 1 jest p o p R 2 1 : = λ 1R2H1 gdzieλ1= P Z 1 μ2popR12:=λ1n+λ1 iZ1=[1]W1,a następnie po prostu mamyPZ1μ2=(μi-ˉμ)2.λ1=PZ1μ2σ2Z1=[1]W1PZ1μ2=(μiμ¯)2

R2 H0R2H0H1

Stéphane Laurent
źródło
Dzięki Stéphane. Będę musiał pomyśleć o tym, co mówisz. W odniesieniu do twojego pytania. Zakładam, że prawdziwy proces generujący dane nie są znane, ale że jest to ta sama fo obu modeli, ale to nie jest prawda odsetek wariancji wyjaśnia regresji liniowej w modelu 1 i modelu 2.
Jeromy Anglim
R2
1
@JeromyAnglim Badanie tego artykułu wydaje się być bliskie temu, czego szukasz (z losowymi predyktorami).
Stéphane Laurent
Dzięki. Papier Algina, Keselman i Penfield wygląda bardzo przydatnie. Do mojej odpowiedzi dodałem kilka komentarzy .
Jeromy Anglim
@JeromyAnglim Więc jakie jest założenie dotyczące predyktorów? Są generowane zgodnie z wielowymiarowym rozkładem Gaussa?
Stéphane Laurent,
1

Zamiast odpowiedzieć na pytanie, które zadałeś, zapytam, dlaczego zadajesz to pytanie. Zakładam, że chcesz wiedzieć, czy

mod.small <- lm(y ~ x1a + x1b + x1c, data=x)

jest co najmniej tak dobry jak

mod.large <- lm(y ~ ., data=x)

w wyjaśnianiu y. Ponieważ te modele są zagnieżdżone, wydaje się, że oczywistym sposobem na odpowiedź na to pytanie jest przeprowadzenie analizy wariancji porównującej je, w taki sam sposób, jak można przeprowadzić analizę dewiacji dla dwóch GLM, takich jak

anova(mod.small, mod.large)

Następnie możesz użyć przykładowej poprawy R-kwadrat między modelami jako najlepszego odgadnięcia, jaka byłaby poprawa dopasowania w populacji, zawsze zakładając, że możesz zrozumieć sens populacji R-kwadrat. Osobiście nie jestem pewien, czy mogę, ale z tym nie ma to żadnego znaczenia.

Mówiąc bardziej ogólnie, jeśli interesuje Cię ilość ludności, prawdopodobnie jesteś zainteresowany uogólnieniem, więc miara dopasowania próbki nie jest dokładnie tym, czego chcesz, ale „poprawiona”. Na przykład wydaje się, że sprawdzanie krzyżowe pewnej ilości, która szacuje rodzaj i liczbę faktycznych błędów, których można się spodziewać po próbce, takich jak MSE, osiąga pożądane wyniki.

Ale jest całkiem możliwe, że czegoś mi brakuje ...

sprzężonyprior
źródło
Doceniam twoją odpowiedź i może być dobrą radą dla innych. Ale mój kontekst badawczy oznacza, że ​​jestem prawnie zainteresowany kwadratem delta-rho. Podczas gdy większość statystyków jest często bardziej zainteresowana przewidywalnością użyteczności modelu (np. Potwierdzona krzyżowo delta r-kwadrat), jestem naukowcem psychologicznym i szczególnie interesuje mnie własność populacji. Co więcej, nie jestem zainteresowany statystycznym znaczeniem poprawy. Jestem zainteresowany wielkością ulepszenia. I uważam, że delta-r-kwadrat jest użyteczną miarą do indeksowania tego rozmiaru poprawy.
Jeromy Anglim
Jeśli chodzi o MSE, różne badania w dziedzinie psychologii wykorzystują miary dotyczące bardzo różnych wskaźników. Zatem istnieje znormalizowana miara, taka jak r-kwadrat, pociągająca, dobra lub zła.
Jeromy Anglim
W porządku, szczególnie w przypadku MSE. Nadal jestem trochę zdezorientowany zainteresowaniem procesem ładowania i wnioskowania przez populację, ale brak zainteresowania testowaniem, ponieważ być może naiwnie wydaje się, że są to równorzędne obawy, które są różnie rozwiązywane. Mam również trudności z dokładnym rozróżnieniem przewidywania próby od wnioskowania do populacji, ale prawdopodobnie przeszkadza w tym bayesianizm przed kawą.
conjugateprior
Być może mówiłem trochę szybko. W moim kontekście badawczym często istnieje wiele dowodów na to, że delta-rho-kwadrat jest większy od zera. Pytanie dotyczy tego, jaki jest stopień wzrostu. Tj. Jest to trywialny wzrost lub teoretycznie znaczący wzrost. Tak więc zaufanie lub wiarygodne przedziały czasowe dają mi oszacowanie niepewności związanej z tym wzrostem. Nie pogodziłem jeszcze tego, co tu robię, ze zrozumieniem statystyki bayesowskiej, ale chciałbym.
Jeromy Anglim
1

ρ2

Podwójnie regulowany pasek w kształcie r-kwadrat

Moim najlepszym przypuszczeniem przy odpowiedzi jest zrobienie podwójnie dostosowanego bootstrapu z kwadratem r. Wdrożyłem technikę. Obejmuje to:

  • Wygeneruj zestaw próbek bootstrap z bieżących danych.
  • Dla każdej próbki startowej:
    • obliczyć pierwszy skorygowany kwadrat r dla dwóch modeli
    • obliczyć drugi skorygowany r-kwadrat na skorygowanych wartościach r-kwadrat z poprzedniego kroku
    • Δρ2

Uzasadnieniem jest to, że pierwszy skorygowany r-kwadrat usuwa uprzedzenie wprowadzone przez bootrapping (tj. Ładowanie początkowe zakłada, że ​​próbka r-kwadrat jest r-kwadratem populacji). Drugi skorygowany r-kwadrat wykonuje standardową korektę, która jest stosowana do normalnej próbki w celu oszacowania populacji r-kwadrat.

W tym momencie wszystko, co widzę, to to, że zastosowanie tego algorytmu generuje szacunki, które wydają się odpowiednie (tj. Średnia theta_hat w bootstrapie jest bardzo zbliżona do próbki theta_hat). Standardowy błąd jest zgodny z moją intuicją. Nie przetestowałem jeszcze, czy zapewnia on odpowiednią częstotliwość odwiedzin, gdy znany jest proces generowania danych, i nie jestem do końca pewien, w jaki sposób argument można uzasadnić na podstawie pierwszych zasad

Jeśli ktoś widzi powody, dla których takie podejście byłoby problematyczne, byłbym wdzięczny za to.

Symulacja Algina i in

Δρ2

Smithson (2001) na temat używania parametru niecentryczności

R2f2R2

Bibliografia

  • Algina, J., Keselman, HJ i Penfield, RD Przedziały ufności dla kwadratowego wielokrotnego współczynnika korelacji dwuczęściowej. PDF
  • Smithson, M. (2001). Prawidłowe przedziały ufności dla różnych rozmiarów i parametrów efektu regresji: Znaczenie niecentralnych rozkładów w przedziałach obliczeniowych. Pomiary edukacyjne i psychologiczne, 61 (4), 605-632.
Jeromy Anglim
źródło
1
Wygląda na to, że nikt tutaj (łącznie z tobą) nie zna definicji twojej kwadratu R. Dlatego też IMHO jest to bardzo problematyczne podejście.
Stéphane Laurent
@ StéphaneLaurent Dzięki za to. Przyznaję, że do tej pory nie widziałem populacji r-kwadrat jako właściwości niezgody. Na przykład, mógłbym zaproponować proces generowania danych, a do kwadratu r byłby zbliżony, gdy moja próbka symulacyjna zbliży się do nieskończoności. Podobnie zakładam, że dla moich danych istnieje proces generowania danych, a zatem gdyby udało się uzyskać nieskończoną próbkę, mógłbym obliczyć rzeczywistą populację r-kwadrat.
Jeromy Anglim
Tak, ale mam wrażenie, że zakładacie również proces generowania predyktorów. Nie mogę zrozumieć, jak to może mieć sens dla ogólnego modelu liniowego.
Stéphane Laurent,