La regressione graduale fornisce una stima parziale della r-square della popolazione?


14

In psicologia e in altri campi viene spesso impiegata una forma di regressione graduale che prevede quanto segue:

  1. Guarda i predittori rimanenti (all'inizio non ce ne sono nel modello) e identifica il predittore che determina la più grande variazione del quadrato r;
  2. Se il valore p della variazione del quadrato r è inferiore a alfa (in genere 0,05), includere tale predittore e tornare al passaggio 1, altrimenti interrompere.

Ad esempio, vedere questa procedura in SPSS .

La procedura viene regolarmente criticata per una serie di motivi (vedere questa discussione sul sito Web di Stata con riferimenti ).

In particolare, il sito Web di Stata riassume diversi commenti di Frank Harrell. Sono interessato al reclamo:

[regressione graduale] produce valori R-quadrati che sono fortemente distorti per essere alti.

In particolare, alcune delle mie ricerche attuali si concentrano sulla stima del r-quadrato della popolazione . Per r-quadrato della popolazione mi riferisco alla percentuale di varianza spiegata dai dati sulla popolazione che generano l'equazione nella popolazione. Gran parte della letteratura esistente che sto esaminando ha utilizzato procedure di regressione graduale e voglio sapere se le stime fornite sono distorte e in tal caso di quanto. In particolare, uno studio tipico avrebbe 30 predittori, n = 200, alfa dell'entrata di 0,05 e stime del quadrato r intorno a .50.

Quello che so:

  • Asintoticamente, qualsiasi predittore con un coefficiente diverso da zero sarebbe un predittore statisticamente significativo e r-quadrato equivarrebbe a r-quadrato rettificato. Pertanto, la regressione asintoticamente graduale dovrebbe stimare l'equazione della regressione reale e il vero r-quadrato della popolazione.
  • Con campioni di dimensioni inferiori, la possibile omissione di alcuni predittori comporterà un quadrato r più piccolo rispetto a tutti i predittori inclusi nel modello. Ma anche il solito pregiudizio di r-square per campionare i dati aumenterebbe il r-square. Quindi, il mio pensiero ingenuo è che potenzialmente, queste due forze opposte potrebbero in determinate condizioni sfociare in un quadrato r imparziale. E più in generale, la direzione del bias sarebbe subordinata a varie caratteristiche dei dati e ai criteri di inclusione alfa.
  • L'impostazione di un criterio di inclusione alfa più rigoroso (ad esempio, .01, .001, ecc.) Dovrebbe ridurre i r-quadrati previsti stimati poiché la probabilità di includere qualsiasi predittore in qualsiasi generazione di dati sarà inferiore.
  • In generale, r-square è una stima al rialzo di r-square della popolazione e il grado di questo bias aumenta con un numero maggiore di predittori e dimensioni del campione inferiori.

Domanda

Quindi, finalmente, la mia domanda:

  • In che misura il r-quadrato dalla regressione graduale si traduce in una stima distorta del r-quadrato della popolazione?
  • In che misura questo pregiudizio è correlato alla dimensione del campione, al numero di predittori, al criterio di inclusione alfa o alle proprietà dei dati?
  • Ci sono riferimenti su questo argomento?

3
La versione principale delle FAQ di Stata che hai citato è precedente alle strategie di modellazione del libro di regressione di Frank Harrell del 2001 . New York: Springer, che è il riferimento che vorrei iniziare da qui.
Nick Cox,

3
Consiglio vivamente di leggere il libro di @FrankHarrell che Nick Cox menziona lì; Assegno regolarmente i miei studenti post-laurea e onoro gli studenti che ne leggono (in particolare il capitolo 4). Che R ^ 2 sia distorto in presenza della selezione di variabili è abbastanza facile da vedere simulando molti set di dati (ad es. N = 100, p = 50) che ha una correlazione della popolazione pari a zero e quindi eseguendo la procedura di selezione delle variabili che si desidera mostrare su.
Glen_b

5
Come notano i commenti, la simulazione può mostrare che, in una situazione nota, la regressione graduale sopravvaluterà e può mostrare quanto. Ma non può mostrare quanta inflazione c'è in una situazione in cui non sai quali dovrebbero essere i valori della popolazione. Cioè, non solo i risultati sono distorti in modo graduale, ma sono distorti in modi molto difficili (se non impossibili) da stimare. R2
Peter Flom - Ripristina Monica

3
Se la popolazione R ^ 2 è zero, penso che il campione R ^ 2 sia distorto anche se non si utilizza la selezione graduale. Sospetto (ma non sono sicuro) che sarebbe anche di parte se la popolazione R ^ 2 è diversa da zero.
mark999,

2
Dire che la popolazione ha un e che stiamo facendo una qualche forma di selezione del modello è fare alcune ipotesi particolari sulla situazione del campionamento - che esiste un modello "vero" e che ha una dimensione particolare, che ci sono più variabili da considerare rispetto a quelle del modello vero (almeno potenzialmente più) e così via. Penso che ci sia anche un'implicazione che non tutte le variabili sono ugualmente fortemente correlate alla risposta. A tal fine, penso che qualsiasi simulazione che facciamo per indagare sulle proprietà dovrebbe rispettare tutte le implicazioni che imposta. R2
Glen_b -Restate Monica,

Risposte:


5

R2R2R2


Soprattutto quando il numero di predittori candidati supera il numero di osservazioni!
Alexis,

2

Panoramica

R2ρ2

R2ρ2R2ρ2R2R2R2ρ2

R2

R2ρ2ρ2

Simulazione

La seguente simulazione ha quattro predittori non correlati in cui il quadrato r della popolazione è del 40%. Due dei predittori spiegano il 20% ciascuno e gli altri due predittori spiegano lo 0%. La simulazione genera un set di dati 1000 e stima il r-quadrato della regressione graduale come percentuale per ciascun set di dati.

# source("http://bioconductor.org/biocLite.R")
# biocLite("maSigPro") # provides stepwise regression function two.ways.stepfor 
library(maSigPro)
get_data <- function(n=100) {
    x1 <- rnorm(n, 0, 1)
    x2 <- rnorm(n, 0, 1)
    x3 <- rnorm(n, 0, 1)
    x4 <- rnorm(n, 0, 1)
    e  <- rnorm(n, 0, 1)
    y <- 1 * x1 + 1 * x2 + sqrt(3) * e
    data <- data.frame(y, x1, x2, x3, x4)
    data
}

get_rsquare <- function(x, alpha=.05) {
    fit <- two.ways.stepfor(x$y, subset(x, select=-y),  alfa=alpha)
        class(fit) <-'lm'
        summary.lm(fit)$r.square * 100
}

Il codice seguente restituisce il quadrato r con un alfa per l'immissione di .01, .001, .0001 e .00001.

set.seed(1234)
simulations <- 1000
datasets <- lapply(seq(simulations), function(X) get_data(n=100))
rsquares01 <- sapply(datasets, function(X) get_rsquare(X, alpha=.01))
rsquares001 <- sapply(datasets, function(X) get_rsquare(X, alpha=.001))
rsquares0001 <- sapply(datasets, function(X) get_rsquare(X, alpha=.0001))
rsquares00001 <- sapply(datasets, function(X) get_rsquare(X, alpha=.00001))

I seguenti risultati indicano la distorsione per ciascuna delle cinque lettere alfa delle voci. Nota che ho moltiplicato r-quadrato per 100 per rendere più facile vedere le differenze.

mean(rsquares01) - 40 
mean(rsquares001) - 40 
mean(rsquares0001) - 40 
mean(rsquares00001) - 40 
sd(rsquares01)/sqrt(simulations) # approximate standard error in estimate of bias 

I risultati suggeriscono che l'alfa delle voci di .01 e .001 comporta una distorsione positiva e l'alfa delle voci di .0001 e .00001 determina una distorsione negativa. Quindi presumibilmente un alfa di entrata intorno a .0005 comporterebbe una regressione graduale imparziale.

> mean(rsquares01) - 40 
[1] 1.128996
> mean(rsquares001) - 40 
[1] 0.8238992
> mean(rsquares0001) - 40 
[1] -0.9681992
> mean(rsquares00001) - 40 
[1] -5.126225
> sd(rsquares01)/sqrt(simulations) # approximate standard error in estimate of bias
[1] 0.2329339

La principale conclusione che ne traggo è che la regressione graduale non è intrinsecamente distorta in una direzione particolare. Detto questo, sarà almeno in qualche modo distorto per tutti tranne un valore p dell'ingresso predittore. Prendo in considerazione @Peter Flom che nel mondo reale non conosciamo il processo di generazione dei dati. Tuttavia, immagino che un'esplorazione più dettagliata di come questa distorsione vari, n, alfa dell'entrata, processi di generazione dei dati e procedura di regressione graduale (ad esempio, incluso il passaggio all'indietro) possa sostanzialmente informare una comprensione di tale distorsione.

Riferimenti

  • Harrell, FE (2001). Strategie di modellazione della regressione: con applicazioni a modelli lineari, regressione logistica e analisi di sopravvivenza. Springer.

È ancora di parte (direi), hai appena ridotto molto il pregiudizio.
Jeremy Miles,

@JeremyMiles Sì. Ma non è intrinsecamente distorto in una direzione particolare.
Jeromy Anglim,

Sarei molto interessato a vedere la tesi di @FrankHarrell su questo.
Glen_b

1
SW(p)R2ppSW(p)pSW(p) è "intrinsecamente" di parte a meno che tu non abbia fatto un'ipotesi fortunata p.
whuber

1
@whuber Ho modificato il paragrafo finale per rendere più chiari alcuni dei punti che hai citato.
Jeromy Anglim,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.