„Znacząca zmienna”, która nie poprawia przewidywań poza próbą - jak interpretować?


10

Mam pytanie, które moim zdaniem będzie dość proste dla wielu użytkowników.

Używam modeli regresji liniowej, aby (i) zbadać związek kilku zmiennych objaśniających i mojej zmiennej odpowiedzi oraz (ii) przewidzieć moją zmienną odpowiedzi za pomocą zmiennych objaśniających.

Wydaje się, że jedna szczególna zmienna objaśniająca X ma znaczący wpływ na moją zmienną odpowiedzi. W celu przetestowania wartości dodanej tej zmiennej objaśniającej X na potrzeby przewidywań mojej zmiennej odpowiedzi poza próbą zastosowałem dwa modele: model (a), który wykorzystał wszystkie zmienne objaśniające, i model (b), który wykorzystał wszystkie zmienne oprócz zmiennej X. W przypadku obu modeli zgłaszam wyłącznie wyniki poza próbą. Wygląda na to, że oba modele zachowują się prawie tak samo dobrze. Innymi słowy, dodanie zmiennej objaśniającej X nie poprawia przewidywań poza próbą. Zauważ, że użyłem również modelu (a), tj. Modelu ze wszystkimi zmiennymi objaśniającymi, aby stwierdzić, że zmienna objaśniająca X ma znaczący wpływ na moją zmienną odpowiedzi.

Moje pytanie brzmi: jak zinterpretować to odkrycie? Bezpośredni wniosek jest taki, że chociaż zmienna X wydaje się znacząco wpływać na moją zmienną odpowiedzi za pomocą modeli wnioskowania, nie poprawia ona przewidywań poza próbą. Mam jednak problem z dalszym wyjaśnieniem tego odkrycia. Jak to możliwe i jakie są wyjaśnienia tego odkrycia?

Z góry dziękuję!

Informacje dodatkowe: przy „znaczącym wpływie” mam na myśli to, że 0 nie jest uwzględnione w najwyższym 95% przednim przedziale gęstości szacunku parametru (im stosując podejście bayesowskie). W kategoriach częstych odpowiada to mniej więcej wartości p niższej niż 0,05. Używam tylko rozproszonych (nieinformacyjnych) priorów dla wszystkich parametrów moich modeli. Moje dane mają strukturę podłużną i zawierają łącznie około 7000 obserwacji. Do prognoz poza próbą wykorzystałem 90% danych, aby dopasować je do moich modeli, a 10% danych do oceny modeli przy użyciu wielu replikacji. Oznacza to, że przeprowadziłem wielokrotny test pociągu i ostatecznie podałem średnie wskaźniki wydajności.


2
Ponieważ stosujesz podejście bayesowskie, Twoje wyniki zależą zarówno od twoich wcześniejszych, jak i od danych. Ponieważ zależność od wcześniejszych danych maleje wraz ze wzrostem ilości danych i rośnie w takim stopniu, w jakim dane i wcześniejsze nie zgadzają się, przydatne byłoby podanie informacji zarówno o wcześniejszej dystrybucji, ilości danych, jak i zgodności samych danych do wcześniejszej dystrybucji.
whuber

1
@ Whuber Zapomniałem wspomnieć, że używam tylko rozproszonych (nieinformacyjnych) priorów. Dlatego nie wydaje mi się, aby moja poprzednia specyfikacja miała cokolwiek wspólnego z moimi ustaleniami. Jestem prawie pewien, że dopasowanie częstych modeli regresji liniowej da dokładnie takie same ustalenia.
dubvice

Dzięki - pomaga to wykluczyć kilka możliwych wyjaśnień.
whuber

1
Czy dopasowujesz modele do przetrzymywanych danych, czy używasz modeli pasujących do oryginalnych danych? W obu przypadkach jednym z możliwych problemów jest to, że popełniacie błąd typu II na przetrzymywanych danych; być może zmienna jest istotna, ale początkowo miałeś słabą moc (w takim przypadku prawdopodobnie przeceniasz efekt, który może pogorszyć przewidywania). Lub zmienna była nieistotna i popełniłeś błąd typu I. Istnieje wiele powodów, dla których może się to zdarzyć.
facet

1
Użyłem kilku wskaźników: RSME, MAE i AUC (próbuję również przewidzieć, czy moja zmienna zależna, która jest ciągła, jest poniżej pewnego progu).
dubvice

Odpowiedzi:


3

Kiedy dany predyktor jest statystycznie istotny, tak naprawdę nie oznacza to, że znacznie poprawia wydajność predykcyjną modelu. Wydajność predykcyjna jest bardziej związana z rozmiarem efektu. Jako przykład, funkcja poniżej danych symuluje z modelu regresji liniowej z dwoma czynnikami prognostycznymi x1i x2, i mieści dwa modele jednego z obydwoma x1, a x2, a druga x1sama. W funkcji możesz zmienić rozmiar efektu x2. Funkcja zgłasza przedziały ufności dla współczynników x1i x2oraz wartości dwóch modeli jako miarę wydajności predykcyjnej.R2

Funkcja to:

sim_ES <- function (effect_size = 1, sd = 2, n = 200) {
    # simulate some data
    DF <- data.frame(x1 = runif(n, -3, 3), x2 = runif(n, -3, 3))
    DF$y <- 2 + 5 * DF$x1 + (effect_size * sd) * DF$x2 + rnorm(n, sd = sd)

    # fit the models with and without x2
    fm1 <- lm(y ~ x1 + x2, data = DF)
    fm2 <- lm(y ~ x1, data = DF)

    # results
    list("95% CIs" = confint(fm1),
         "R2_X1_X2" = summary(fm1)$r.squared,
         "R2_only_X1" = summary(fm2)$r.squared)
}

Jako przykład, dla wartości domyślnych, które otrzymujemy,

$`95% CIs`
               2.5 %   97.5 %
(Intercept) 1.769235 2.349051
x1          4.857439 5.196503
x2          1.759917 2.094877

$R2_X1_X2
[1] 0.9512757

$R2_only_X1
[1] 0.8238826

x2Jest to więc znaczące i nieuwzględnienie go w modelu ma duży wpływ na .R2

Ale jeśli ustawimy wielkość efektu na 0.3, otrzymamy:

> sim_ES(effect_size = 0.3)
$`95% CIs`
                2.5 %    97.5 %
(Intercept) 1.9888073 2.5563233
x1          4.9383698 5.2547929
x2          0.3512024 0.6717464

$R2_X1_X2
[1] 0.9542341

$R2_only_X1
[1] 0.9450327

Współczynnik jest nadal znaczący, ale poprawa jest bardzo niewielka.R2


Niejasna dychotomia między istotnością statystyczną a wydajnością predykcyjną jest zmorą mojego życia analitycznego na wiele sposobów. (+1 - i ogólne powitanie w CV Prof.!)
usεr11852

-1

Jest to dość normalna rzecz w przypadku regresji wielokrotnej. Najczęstszym powodem jest to, że twoje predyktory są ze sobą powiązane. Innymi słowy, można wywnioskować X na podstawie wartości innych predyktorów. Dlatego, chociaż jest przydatny do przewidywań, jeśli jest to jedyny predyktor, który masz, kiedy już masz wszystkie inne predyktory, nie zapewnia on zbyt wielu dodatkowych informacji. Możesz sprawdzić, czy tak jest, regresując X na innych predyktorach. Chciałbym również odnieść się do rozdziału dotyczącego regresji liniowej w darmowym podręczniku online, Elementy uczenia statystycznego.


1
Wygląda na to, że raczej opisujesz nieistotną zmienną objaśniającą, a nie konkretne okoliczności opisane w pytaniu.
whuber

Opisuję zmienną objaśniającą, która jest istotnie związana z odpowiedzią samą w sobie (tj. W prostej regresji), co, jak sądzę, oznacza to pytanie przez „X wydaje się wyraźnie wpływać na moją zmienną odpowiedzi”.
Denziloe,

Ale w takim przypadku nie stwierdziłbym, że moja zmienna objaśniająca X znacząco wpływa na moją zmienną odpowiedzi, prawda? Może początkowo nie wyjaśniłem tego w swoim pytaniu, ale użyłem modelu ze wszystkimi zmiennymi objaśniającymi, aby stwierdzić, że zmienna objaśniająca X ma znaczący wpływ na moją zmienną odpowiedzi.
dubvice

3
Czytam pytanie jako znaczące, że jest znaczący w kontekście regresji wielokrotnej. Wydaje się to dość jasne z odniesień do „kilku zmiennych objaśniających”. Obawiam się, że twoja odpowiedź może wprowadzać w błąd OP. X
whuber

1
Tak, kurwa, zrozumiałeś to poprawnie. To jest to co mam na mysli. Mam nadzieję, że wyjaśniłem to wystarczająco dobrze w moim pytaniu.
dubvice
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.