Budowanie modelu regresji krokowej
W przypadku braku wiedzy dziedzinowej regresja krokowa może pomóc w poszukiwaniu najważniejszych predyktorów interesującego nas wyniku.
W tym ćwiczeniu zastosujesz podejście krokowe postępujące, aby dodawać predyktory do modelu jeden po drugim – aż do momentu, gdy kolejne zmienne nie przyniosą już żadnej poprawy. Zbiór danych donors jest już wczytany.
To ćwiczenie jest częścią kursu
Nadzorowane uczenie maszynowe w R: Klasyfikacja
Instrukcje do ćwiczenia
- Użyj interfejsu formuł R z funkcją
glm(), aby zdefiniować model bazowy bez predyktorów. Ustaw zmienną objaśniającą równą1. - Ponownie użyj interfejsu formuł R z funkcją
glm(), aby zdefiniować model ze wszystkimi predyktorami. - Zastosuj funkcję
step()do tych modeli, aby wykonać regresję krokową postępującą. Ustaw pierwszy argument nanull_modeli określdirection = "forward". To może chwilę potrwać (nawet 10–15 sekund), ponieważ komputer musi dopasować wiele różnych modeli podczas selekcji krokowej. - Utwórz wektor przewidywanych prawdopodobieństw za pomocą funkcji
predict(). - Narysuj krzywą ROC przy użyciu
roc()iplot(), a następnie oblicz AUC modelu krokowego za pomocąauc().
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Specify a null model with no predictors
null_model <- ___(___, data = ___, family = "___")
# Specify the full model using all of the potential predictors
full_model <- ___
# Use a forward stepwise algorithm to build a parsimonious model
step_model <- step(___, scope = list(lower = null_model, upper = full_model), direction = "___")
# Estimate the stepwise donation probability
step_prob <- ___
# Plot the ROC of the stepwise model
library(pROC)
ROC <- ___
plot(___, col = "red")
auc(___)