Nog een ronde snoeien op basis van AUC
In de video zag je hoe het “volledige” logistische regressiemodel met een logit-link werd gesnoeid op basis van de AUC. Je zag hoe de variabele home_ownership uit het model werd verwijderd, omdat dit de totale AUC verbeterde. Na dit proces nog twee rondes te herhalen, werden de variabelen age en ir_cat verwijderd, wat leidde tot het model:
log_3_remove_ir <- glm(loan_status ~ loan_amnt + grade + annual_inc + emp_cat, family = binomial, data = training_set)
met een AUC van 0.6545. Nu is het aan jou om te kijken of de AUC nog verder kan worden verbeterd door nog een variabele uit het model te verwijderen.
Deze oefening maakt deel uit van de cursus
Kredietrisicomodellering in R
Oefeninstructies
- Verwijder één variabele per keer uit het model
log_3_remove_ir. Denk eraan dat je de standaard linkfunctie (logit) gebruikt. - Maak voor elk van de door jou gemaakte modellen voorspellingen van de kans op wanbetaling.
- Gebruik de functie
auc()mettest_set$loan_statusals eerste argument en de voorspellingen voor elk van de vier modellen als tweede argument om de AUC’s te berekenen. - Kopieer de naam van het object (zoals gegeven in de eerste vraag van deze oefening) dat het model met de beste AUC voorstelt.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Build four models each time deleting one variable in log_3_remove_ir
log_4_remove_amnt <- glm(loan_status ~ grade + annual_inc + emp_cat,
family = binomial, data = training_set)
log_4_remove_grade <-
log_4_remove_inc <-
log_4_remove_emp <-
# Make PD-predictions for each of the models
pred_4_remove_amnt <- predict(log_4_remove_amnt, newdata = test_set, type = "response")
pred_4_remove_grade <-
pred_4_remove_inc <-
pred_4_remove_emp <-
# Compute the AUCs