Talvez seja mais fácil entender como a regressão passo a passo está sendo feita, analisando todos os 15 possíveis modelos de filme.
Aqui está uma rápida para gerar a fórmula para todas as 15 combinações.
library(leaps)
tmp<-regsubsets(mpg ~ wt + drat + disp + qsec, data=mtcars, nbest=1000, really.big=T, intercept=F)
all.mods <- summary(tmp)[[1]]
all.mods <- lapply(1:nrow(all.mods, function(x)as.formula(paste("mpg~", paste(names(which(all.mods[x,])), collapse="+"))))
head(all.mods)
[[1]]
mpg ~ drat
<environment: 0x0000000013a678d8>
[[2]]
mpg ~ qsec
<environment: 0x0000000013a6b3b0>
[[3]]
mpg ~ wt
<environment: 0x0000000013a6df28>
[[4]]
mpg ~ disp
<environment: 0x0000000013a70aa0>
[[5]]
mpg ~ wt + qsec
<environment: 0x0000000013a74540>
[[6]]
mpg ~ drat + disp
<environment: 0x0000000013a76f68>
Os valores de AIC para cada modelo são extraídos com:
all.lm<-lapply(all.mods, lm, mtcars)
sapply(all.lm, extractAIC)[2,]
[1] 97.98786 111.77605 73.21736 77.39732 63.90843 77.92493 74.15591 79.02978 91.24052 71.35572
[11] 63.89108 65.90826 78.68074 72.97352 65.62733
Vamos voltar à sua regressão passo a passo. O valor extractAIC para lm (mpg ~ wt + drat + disp + qsec) é 65,63 (equivalente ao modelo 15 na lista acima).
Se o modelo remover disp (-disp), então lm (mpg ~ wt + drat + qsec) será 63.891 (ou modelo 11 na lista).
Se o modelo não remover nada (nenhum), o AIC ainda será 65,63
Se o modelo remover qsec (-qsec), então lm (mpg ~ wt + drat + disp) será 65,908 (modelo 12).
etc.
Basicamente, o resumo revela a possível remoção gradual de um termo de seu modelo completo e compara o valor extractAIC, listando-os em ordem crescente. Como o valor menor do AIC é mais provável de se assemelhar ao modelo TRUTH, mantenha o modelo (-disp) na etapa um.
O processo é repetido novamente, mas com o modelo retido (-disp) como ponto de partida. Os termos são subtraídos ("para trás") ou subtraídos / adicionados ("ambos") para permitir a comparação dos modelos. Como o valor mais baixo da AIC em comparação ainda é o modelo (-disp), a parada do processo e os modelos resultantes são fornecidos.
Com relação à sua consulta: "Qual é a função que está tentando alcançar adicionando + disp novamente na seleção gradual?", Nesse caso, ele realmente não faz nada, porque o melhor modelo em todos os 15 modelos é o modelo 11 , ou seja, lm (mpg ~ wt + drat + qsec).
No entanto, em modelos complicados com grande número de preditores que exigem várias etapas para serem resolvidos, a adição de um termo que foi removido inicialmente é essencial para fornecer a maneira mais exaustiva de comparar os termos.
Espero que isso ajude de alguma forma.
Aqui uma resposta simplificada. Primeiro, ambos os procedimentos tentam reduzir a AIC de um determinado modelo, mas fazem isso de maneiras diferentes. Então, a diferença básica é que, no procedimento de seleção reversa, você só pode descartar variáveis do modelo em qualquer etapa, enquanto na seleção gradual, você também pode adicionar variáveis ao modelo.
Sobre a saída na seleção passo a passo, em geral, a saída mostra alternativas ordenadas para reduzir seu AIC, portanto, a primeira linha em qualquer etapa é sua melhor opção. Depois, existe um
+disp
na terceira linha, porque adicionar essa variável ao seu modelo seria sua terceira melhor opção para diminuir o seu AIC. Mas, obviamente, como sua melhor alternativa é<none>
, isso significa não fazer nada, o procedimento é interrompido e fornece os mesmos resultados da seleção para trás.fonte