Selectarea celei mai bune variabile următoare
Metoda de selecție forward stepwise pornește cu un set gol de variabile și avansează pas cu pas, adăugând la fiecare etapă cea mai bună variabilă disponibilă. Pentru a implementa această procedură, două funcții utile au fost pregătite pentru tine.
Funcția auc calculează, pentru un set de variabile variables, AUC-ul modelului care folosește acel set ca predictori. Funcția next_best calculează ce variabilă ar trebui adăugată în pasul următor la lista de variabile.
În acest exercițiu, vei experimenta cu aceste funcții pentru a le înțelege mai bine scopul. Vei calcula AUC-ul unui set dat de variabile, vei determina ce variabilă ar trebui adăugată în continuare și vei verifica că aceasta conduce într-adevăr la un AUC optim.
Acest exercițiu face parte din cursul
Introducere în analitica predictivă în Python
Instrucțiuni pentru exercițiu
- Funcția
auca fost implementată pentru tine. Calculează AUC-ul unui model care folosește"max_gift","mean_gift"și"min_gift"ca predictori. Transmite aceste variabile într-o listă ca prim argument al funcțieiauc. - Funcția
next_besta fost implementată pentru tine. Calculează ce variabilă ar trebui adăugată în pasul următor, știind că"max_gift","mean_gift"și"min_gift"se află deja în model, iar"age"și"gender_F"sunt candidații pentru următorul predictor. Primul argument al funcțieinext_besteste o listă cu variabilele curente, iar al doilea argument este o listă cu predictorii candidați. - Calculează AUC-ul unui model care folosește
"max_gift","mean_gift","min_gift"și"age"ca predictori. - Calculează AUC-ul unui model care folosește
"max_gift","mean_gift","min_gift"și"gender_F"ca predictori.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Calculate the AUC of a model that uses "max_gift", "mean_gift" and "min_gift" as predictors
auc_current = ____([____, ____, ____], ["target"], basetable)
print(round(auc_current,4))
# Calculate which variable among "age" and "gender_F" should be added to the variables "max_gift", "mean_gift" and "min_gift"
next_variable = ____([____, ____, ____], [____, ____], ["target"], basetable)
print(next_variable)
# Calculate the AUC of a model that uses "max_gift", "mean_gift", "min_gift" and "age" as predictors
auc_current_age = ____([____, ____, ____, ____], ["target"], basetable)
print(round(auc_current_age,4))
# Calculate the AUC of a model that uses "max_gift", "mean_gift", "min_gift" and "gender_F" as predictors
auc_current_gender_F = ____([____], ["target"], basetable)
print(round(auc_current_gender_F,4))